- 4. Gerar o XML da DC-e
4.6. Item de detalhe da DC-e - 4.5. Autorizados Download
« Anterior - 4.7. Total da DC-e
Próximo »
4.6. Item de detalhe da DC-e
Funcionalidade para gerar o XML do grupo de item de detalhe da DC-e.
Assinatura
string det(int nItem, string xProd, string NCM, string qCom, string vUnCom, double vProd, string infAdProd_Opc)
Descrição:
Funcionalidade para gerar o XML do grupo de item de detalhe da DC-e.
Dica
Este grupo de informação é de informação obrigatória, a DC-e deve ter pelo menos um item de produto por exigência do Schema XML.
Parâmetros:
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. |
xProd | string | 1-120 | sim | informar a descrição do produto ou serviço. |
NCM | string | 2,8 | sim | informar o Código NCM com 8 dígitos ou a posição do capítulo do NCM (as duas primeiras posições do NCM); se for serviços, informar 00. O NCM consta como não obrigatório no Manual DC-e, mas é tag obrigatória no schema XML. |
qCOM | string | 15,4 | sim | informar a quantidade de comercialização do produto já formatado com ponto decimal. A quantidade de casas decimais pode variar de 0 a 4. |
vUnCOM | string | 21,10 | sim | Informar o valor unitário do produto já formatado com ponto decimal, campo meramente informativo, o contribuinte pode utilizar a precisão desejada (0-10 decimais). |
vProd | duplo | 15,2 | sim | informar o valor total bruto do produto ou serviços. |
infAdprod_Opc | 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 DACE tratar como quebra de linha, ex.: ***, /, |, etc. |
Diagrama:
Dica
Os campos com contorno tracejado podem ser omitidos se a operação não exigir a informação.
O NCM consta como não obrigatório no Manual DC-e, mas é tag obrigatória no schema XML.
Retorno:
Um string com o grupo XML do detalhe do Produto ou Serviço.
XML:
Exemplo de XML do det
<det nItem="1"> <prod> <xProd>Calça masculina</xProd> <NCM>49</NCM> <qCom>1</qCom> <vUnCom>100.00</vUnCom> <vProd>100.00</vProd> </prod> <infAdProd>tamanho 48</infAdProd> </det>
Exemplo de XML do det com duas ocorrências
<det nItem="1"> <prod> <xProd>Calça masculina</xProd> <NCM>49</NCM> <qCom>1</qCom> <vUnCom>100.00</vUnCom> <vProd>100.00</vProd> </prod> <infAdProd>tamanho 48</infAdProd> </det> <det nItem="2"> <prod> <xProd>Camiseta básica em algodão</xProd> <NCM>49</NCM> <qCom>2</qCom> <vUnCom>80.00</vUnCom> <vProd>160.00</vProd> </prod> </det>
Importante
O trecho do XML foi formatado e alguns trechos foram omitidos 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.
Exemplos de uso:
Visual Basic 6.0
' declara e instancia DLL Dim objDCeUtil As Object Set objDCeUtil = CreateObject("DCe_Util.Util") ' declarar parâmetros Dim det As String Dim det_nItem As Integer Dim det_xProd As String Dim det_NCM As String Dim det_qCom As String Dim det_vUnCom As String Dim det_vProd As Double Dim det_infAdProd_Opc As String ' inicializar os parâmetros det_nItem = 1 det_xProd = "Calça masculina" det_NCM = "49" det_qCom = "1" det_vUnCom = "100.00" det_vProd = 100 det_infAdProd_Opc = "tamanho 48" ' ' gera grupo de detalhamento do item da DC-e ' det = objDCeUtil.det(det_nItem, _ det_xProd, _ det_NCM, _ det_qCom, _ det_vUnCom, _ det_vProd, _ det_infAdProd_Opc) MsgBox det, vbInformation, "Informação"
Importante
Se houver mais de um item de detalhe, o usuário deve concatenar os detalhes.
- 4.6. Item de detalhe da DC-e
4. Gerar o XML da DC-e - « Anterior
4.5. Autorizados Download - Próximo »
4.7. Total da DC-e