12493 - Variável do XML - VTotTrib
Problema: Descrição do Problema: Preciso fazer uma regra que utiliza a variável VTotTrib do xml das NFs de saída. Preciso imprimir uma mensagem na NF caso a tag <VTotTrib> for diferente de 0. Portanto, preciso do valor antes da geração do xml e após o fechamento da NF.
Qual identificador tem acesso a essa variável, ou como posso fazer?
Quando ocorre / onde se aplica: Geração do XML da NF-e.
Solução: Solução 12493: Não existe um identificador que tenha disponível a variável vTotTrib. O valor da tag <vTotTrib> será a soma dos valores da tabela E140DTP (itens de produto) e E140DTS (itens de serviço), ou seja, se nessas tabelas os dados estão zerados, a tag será gerada zerada. A soma é referente aos campos (VlrIcm + VlrIpi + VlrIss + VlrIof + VlrPis + VlrCOf + VlrPim + VlrCim + VlrIns + VlrIim + VlrCid).
Estas tabelas são alimentadas no fechamento da NF, desta forma, como deseja incluir uma mensagem no XML/DANFE quando a tag <vTotTrib> for diferente de zero, poderá utilizar o identificador VEN-140NEITE01 que é executado na geração do XML, onde neste caso a NF já estará fechada e os valores nas tabelas E140DTP já estarão preenchidos. Com isso, você poderá fazer um cursor na tabela E140DTP e verificar se os campos mencionados acima estão zerados, caso algum dos campos não esteja zerado, significa que a tag <vTotTrib> será gerada com o valor diferente de zero.
Através da variável 'VSIntInfAdp' do identificador VEN-140NEITE01 poderá então retornar a mensagem que desejar na NF-e de produto.
Para NF eletrônica de serviço o identificador VEN-140NEITE01 não é executado, neste caso, poderá utilizar o identificador GER-000ABRASF1 para retornar a informação que desejar para os itens.
Qual identificador tem acesso a essa variável, ou como posso fazer?
Quando ocorre / onde se aplica: Geração do XML da NF-e.
Solução: Solução 12493: Não existe um identificador que tenha disponível a variável vTotTrib. O valor da tag <vTotTrib> será a soma dos valores da tabela E140DTP (itens de produto) e E140DTS (itens de serviço), ou seja, se nessas tabelas os dados estão zerados, a tag será gerada zerada. A soma é referente aos campos (VlrIcm + VlrIpi + VlrIss + VlrIof + VlrPis + VlrCOf + VlrPim + VlrCim + VlrIns + VlrIim + VlrCid).
Estas tabelas são alimentadas no fechamento da NF, desta forma, como deseja incluir uma mensagem no XML/DANFE quando a tag <vTotTrib> for diferente de zero, poderá utilizar o identificador VEN-140NEITE01 que é executado na geração do XML, onde neste caso a NF já estará fechada e os valores nas tabelas E140DTP já estarão preenchidos. Com isso, você poderá fazer um cursor na tabela E140DTP e verificar se os campos mencionados acima estão zerados, caso algum dos campos não esteja zerado, significa que a tag <vTotTrib> será gerada com o valor diferente de zero.
Através da variável 'VSIntInfAdp' do identificador VEN-140NEITE01 poderá então retornar a mensagem que desejar na NF-e de produto.
Para NF eletrônica de serviço o identificador VEN-140NEITE01 não é executado, neste caso, poderá utilizar o identificador GER-000ABRASF1 para retornar a informação que desejar para os itens.