Funcionalidade para gerar o XML do grupo do item de detalhamento da NF-e/NFC-e.
string detalhe310(int nItem, string produto, string imposto, string infAdProd, double pDevol_Opc, double vIPIDevol_Opc)
Funcionalidade para gerar o XML do grupo de item de detalhe da NF-e/NFC-e da versão 3.10
Grupo de informação obrigatória, a NF-e deve ter pelo menos um item de produto por exigência do Schema XML.
nome | tipo | tam. | obrig. | descrição |
---|---|---|---|---|
nItem | inteiro | – | sim | informar o número do item do detalhe, deve ser um valor único crescente compreendido na faixa de 1 a 990. |
produto | string | – | sim | informar o grupo XML prod com o detalhamento do produto/serviço do item. |
imposto | string | – | sim | informar o grupo XML imposto com as informações dos tributos incidentes no item. |
infAdprod | string | 1-500 | não | pode ser utilizado para complementar a descrição e informações adicionais do produto. Não é permitido informação de caracteres de formatação (CR, LF, TAB, etc.), assim o usuário pode colocar caracteres que identificam o final linha para melhorar a visualização e a aplicação de impressão do DANFE tratar como quebra de linha, ex.: ***, /, |, etc. A consulta web da NF-e ainda não está mostrando as informações adicionais do produto, necessário reportar o problema para a SEFAZ resolver. |
pDevol_Opc | double | 3V2 | NÃO | informar o percentual da mercadoria devolvida. Nota: O valor máximo deste percentual é 100%, no caso de devolução total da mercadoria (campo novo) [23-12-13] |
vIPIDevol_Opc | double | 13V2 | NÃO | informar Valor do IPI devolvido. (campo novo) [23-12-13] |
Os campos com contorno tracejado podem ser omitidos se a operação não exigir a informação.
Os campos em verde são tags novas ou tags que sofreram alteração recente do leiaute.
Um string com o grupo XML do detalhe do Produto ou Serviço
<det nItem="1">
<prod>
<cProd>00001</cProd>
<cEAN />
(...)
<vUnTrib>1</vUnTrib>
</prod>
<imposto>
<ICMS>
<ICMS00>
(...)
</ICMS00>
</ICMS>
<PIS>
<PISAliq>
(...)
</PISAliq>
</PIS>
<COFINS>
<COFINSAliq>
(...)
</COFINSAliq>
</COFINS>
</imposto>
<infAdProd>Informações adicionais do produto</infAdProd>
</det>
O trecho do XML foi formatado para uma melhor visualização, a mensagem original não tem formatação.
Vale observar que a formatação pode corromper a assinatura digital, além de ocupar espaço e ser desnecessária, pois os browser exibem formatado.
Visual Basic 6.0
' inicializar variáveis
'...............................................
Dim objNFeUtil As Object
Set objNFeUtil = CreateObject("NFe_Util_2G.Util")
'
'========grupo de informações detalhamento do produto e serviços(grupo I do Manual de Integração)=========
'
'
det_nItem = 1 ' informar o número do item, que deve ser sequencial crescente iniciado em 1
' a quantidade máxima de itens é 990
det_produto = "xml produto" ' Deve ser informado com o XML obtido na funcionalidade produto
det_imposto = "xml imposto" ' Deve ser informado com o XML obtido na funcionalidade imposto
' informações adicionais do produto, uso não obrigatório
det_infAdprod = "Informações adcionais do produto"
'
' informar quando existir IPI na devolução
'
det_pDevol = 10 ' percentual das mercadorias devolvidas
det_vIPIDevol = 100 ' valor do IPI devolvido
'
' gera grupo de detalhamento do produto
'
det = objNFeUtil.detalhe310(det_nItem, det_produto, det_imposto, det_infAdProd, det_pDevol, det_vIPIDevol)
MsgBox msgResultado & vbCrLf & det, vbInformation, "Informação"
Se houver mais de um item de detalhe, o usuário deve concatenar os detalhes.