Jump to content

Delphi Enterprise 
pela METADE DO PREÇO

botao_delphi.png

 

 

tp_550_logo.png Homologação ACBr Apresenta:
Nova  Impressora
TP-550

botao_saibamais.png

 

 

Curso Dominando o ACBrMonitor
Novo Módulo Soluções de Varejo
Assine o SAC ACBr em qualquer plano e tenha acesso

Saiba Mais

Balança SM100 performance surpreendente

Tecnologia Japonesa   Teclado e Visor resistentes a água
Consumo inteligente de etiquetas   Baixo custo de manutenção
Comunicação Ethernet e WIFI independentes

Saiba Mais

Impressora de Etiquetas ELGIN - L42 PRO

Protocolos PPLA, PPLB, ZPL, EPL (automático)
Porta USB padrão Opcionais: Ethernet, Serial, Paralela
Sensor de Etiquetas Móvel Garantia de 18 meses

Saiba mais

Lucas Luis Baruffi

ANSWERED Arquivo INI NFCe campo tpag zero não significativo

Recommended Posts

Boa tarde pessoal,

Estou avaliando o ACBR Monitor para integrar na minha aplicação, só preciso gerar a NFCe.

Caso eu decida por utilizar comercialmente pretendo contratar o SAC, mas por hora eu baixei os fontes e estou compilando semanalmente eu messo.

Não sei se isso pode ser considerado um BUG mas segue a situação:

Na documentação da NFE tem as seguintes opções para a tag tpag referente ao tipo de pagamento:

01=Dinheiro
02=Cheque
03=Cartão de Crédito
04=Cartão de Débito
05=Crédito Loja
10=Vale Alimentação
11=Vale Refeição
12=Vale Presente
13=Vale Combustível
99=Outros

Na documentação também informa que o campo é do tipo N, no caso Numérico. Quando eu gero o .INI sem o zero não significativo, o ACBRMonitor automaticamente, decide colocar o valor 01.

Se eu gero com o número 3 que é a opção de Cartão de crédito, o XML resultante é com o valor "01", fiz o teste e se eu colocar "03" funciona. No meu entendimento, quando o campo é do tipo numérico o zero não significativo não deveria importar.

Outro ponto, na minha opinião, é que o ACBr Monitor não deveria decidir colocar o valor 01 caso eu coloque um valor inválido, ou que ele não reconhece como valor válido na TAG.

Se eu coloco isso no INI

[pag001]
tPag=3
vPag=100

gera isso:

<pag>
<detPag>
<tPag>01</tPag>
<vPag>100.00</vPag>
</detPag>
</pag>
 
já se eu coloco
[pag001]
tPag=03
vPag=100
 
gera corretamente:
<pag>
<detPag>
<tPag>03</tPag>
<vPag>100.00</vPag>
</detPag>
</pag>

Estou fazendo algo errado nas configurações ou parâmetros dos métodos? Estou chamando assim: NFe.CriarNFe("c:\....",0,1)

Agora eu me pergunto, como vou saber se devo ou não colocar os zeros NÃO significativos nas demais opções com campos numéricos?

Desde já agradeço.

 

Share this post


Link to post
Share on other sites
27 minutos atrás, Lucas Luis Baruffi disse:

No meu entendimento, quando o campo é do tipo numérico o zero não significativo não deveria importar.

O layout diz que o campo tPag é do tipo numérico, mas com tamanho fixo em 2, por isso no XML sempre deve conter o zero a esquerda.

30 minutos atrás, Lucas Luis Baruffi disse:

Agora eu me pergunto, como vou saber se devo ou não colocar os zeros NÃO significativos nas demais opções com campos numéricos?

De modo geral, qualquer campo que tenha uma lista de valores válidos e/ou tamanho fixo no layout.

  • Like 1

Equipe ACBr BigWings
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

 

 

Share this post


Link to post
Share on other sites

OK, entendi a questão do tamanho fixo, vou prestar atenção nessa questão na hora de gerar o .INI.

Agora não se tratando do ACBRMonitor mas do sistema que recebe as notas, não faz sentido pois 2 e 02 se tratando de campo numérico não deveria ter diferença lá no recebimento do arquivo, pois pensa, se o campo é numérico, tem que converter pra string formatando com o zero significativo para poder manipular o dado, aí vai gravar na tua base de dados o 02.....e grava como 2.

 

Obrigado pela ajuda.

 

Só ficou a questão do ACBr Monitor colocar o "01" quando eu coloco um valor "inválido".

Edited by Lucas Luis Baruffi

Share this post


Link to post
Share on other sites
39 minutos atrás, Lucas Luis Baruffi disse:

Só ficou a questão do ACBr Monitor colocar o "01" quando eu coloco um valor "inválido".

Isso é interno do componente e da linguagem na qual ele é desenvolvido, sempre vai retornar o primeiro item caso seja informado um valor inválido.

Aqui tem outro exemplo:

 


Equipe ACBr BigWings
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

 

 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...