- 13. Gerar XML do CT-e Simplificado novo
13.6. Detalhamento das Entregas - 13.5.1. Quantidade de Carga
« Anterior - 13.6.1. Componentes do valor da prestação
Próximo »
13.6. Detalhamento das Entregas
Sumário
Detalhamento das entregas / prestações do CTe Simplificado
Assinatura
string detCTeSimp(int nItem, string cMunIni, xMunIni cMunFim, string xMunFim, double vPrest, double vRec,string Comp_Opc, string infDFe)
Descrição:
Funcionalidade para gerar o grupo XML do detalhe da entrega / prestação do CT-e simplificado.
Cada par município de origem x município de destino deve ser agrupado em um grupo de detalhe da entrega / prestação do CT-e simplificado.
A quantidade máxima de detalhe da entrega permitido é 999, ou seja podemos ter até 999 pares de município de origem x município de destino por CT-e Simplificado.
Exemplo:
A carga é formada por mercadorias acobertadas por 20 notas fiscais, todas com origem em São Paulo, sendo que 10 notas fiscais são destinadas ao Munícipio de Assis e as notas fiscais restantes destinadas ao Município de Ourinhos.
Assim devemos gerar dois grupo de detalhamento para agrupar as notas fiscais da carga que tenham a mesma origem e destino:
São Paulo x Assis - 10 notas fiscais.
São Paulo x Ourinhos - 10 notas fiscais.
Parâmetros:
nome | tipo | tam. | obrig. | descrição |
---|---|---|---|---|
nItem | inteiro | 1-3 | sim | informar o número identificador do item agrupador da prestação, deve ser iniciado a partir do 1 e incrementado sequencialmente até 999. |
cMunIni | string | 7 | sim | informar o Código do Município de início da prestação. Utilizar tabela do IBGE. Informar 9999999 para operações com o exterior. |
xMunIni | string | 1-60 | sim | informar o Nome do Município de início da prestação. Informar PAIS/Município para as operações com o exterior. |
cMunFim | string | 7 | sim | informar o Código do Município de término da prestação. Utilizar tabela do IBGE. Informar 9999999 para operações com o exterior. |
xMunFim | string | 1-60 | sim | informar o Nome do Município de término da prestação. Informar PAIS/Município para as operações com o exterior. |
vPrest | double | 15,2 | sim | Informar o Valor da prestação do serviço de transporte. |
vRec | double | 15,2 | sim | Informar o Valor a Receber. |
Comp_Opc | string | - | sim | informar o grupo de Componentes do Valor da Prestação. |
infDFe | string | - | sim | informar o grupo de Informações da NF-e ou Informações dos Documentos anteriores. |
Diagrama:
Dica
Os campos com contorno tracejado podem ser omitidos se a operação não exigir a informação.
Retorno:
Um string com o grupo XML do detalhe da entrega / prestação do CT-e simplificado
Histórico de atualização:
- set/2024 - versão inicial.
XML:
Exemplo de XML para detalhe da entrega / prestação com duas notas fiscais (infNFe)
<det nItem="1"> <cMunIni>3550308</cMunIni> <xMunIni>SÃO PAULO</xMunIni> <cMunFim>3534708</cMunFim> <xMunFim>OURINHOS</xMunFim> <vPrest>200.00</vPrest> <vRec>200.00</vRec> <infNFe> <chNFe>12345678901234567890123456789012345678901234</chNFe> </infNFe> <infNFe> <chNFe>12345678901234567890123456789012345678901234</chNFe> </infNFe> </det>
Exemplo de XML para detalhe da entrega / prestação com um documento anterior (idDocAnt) e tpPrest=1
<det nItem="1"> <cMunIni>3550308</cMunIni> <xMunIni>SÃO PAULO</xMunIni> <cMunFim>3534708</cMunFim> <xMunFim>OURINHOS</xMunFim> <vPrest>200.00</vPrest> <vRec>200.00</vRec> <infDocAnt> <chCTe>12345678912345678912345678912345678912345678</chCTe> <tpPrest>1</tpPrest> </infDocAnt> </det>
Importante
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.
Exemplos de uso:
Visual Basic 6.0
Exemplo de Entrega / Prestação com uma nota fiscal
' '====== Detalhe da Entrega / Prestação do CT-e simplificado ========== ' Dim det As String Dim det_nItem As Long Dim det_cMunIni As String Dim det_xMunIni As String Dim det_cMunFim As String Dim det_xMunFim As String Dim det_vPrest As Double Dim det_vRec As Double Dim det_Comp_Opc As String Dim det_infDFe As String ' ' '====== instancia DLL================== ' ' ' referenciando a DLL em late binding ' não é necessário fazer o reference da DLL ' o intelisense não funciona ' Dim objCTeUtil As Object Set objCTeUtil = CreateObject("CTe_Util.Util") ' ' criação dos grupos ' '===================Detalhe da Entrega / Prestação do CT-e simplificado ======================= ' ' det_nItem = 1 ' número do item detalhe (1 a 999) det_cMunIni = "3550308" ' código IBGE do município de origem det_xMunIni = "SÃO PAULO" ' nome do município de origem det_cMunFim = "3534708" ' código IBGE do município de término det_xMunFim = "OURINHOS" ' nome do município de término det_vPrest = 200 ' valor da prestação de serviço det_vRec = 200 ' valor a receber det_Comp_Opc = "" ' componentes do serviço ' informações da NF-e ou documento anterior ' det_infDFe = "<infNFe><chNFe>12345678901234567890123456789012345678901234</chNFe></infNFe>" ' det = objCTeUtil.detCTeSimp(det_nItem, _ det_cMunIni, _ det_xMunIni, _ det_cMunFim, _ det_xMunFim, _ det_vPrest, _ det_vRec, _ det_vComp_Opc, _ det_infDFe) MsgBox "Detalhamento da entrega / prestação:" + Chr(13) + det + Chr(13) + msgResultado, vbInformation, "Resultado"
Exemplo de Entrega / Prestação com documento anterior (idDocAnt) e prestação total (tpPrest=1)
' '====== Detalhe da Entrega / Prestação do CT-e simplificado ========== ' Dim det As String Dim det_nItem As Long Dim det_cMunIni As String Dim det_xMunIni As String Dim det_cMunFim As String Dim det_xMunFim As String Dim det_vPrest As Double Dim det_vRec As Double Dim det_Comp_Opc As String Dim det_infDFe As String ' ' '====== instancia DLL================== ' ' ' referenciando a DLL em late binding ' não é necessário fazer o reference da DLL ' o intelisense não funciona ' Dim objCTeUtil As Object Set objCTeUtil = CreateObject("CTe_Util.Util") ' ' criação dos grupos ' '===================Detalhe da Entrega / Prestação do CT-e simplificado ======================= ' ' det_nItem = 1 ' número do item detalhe (1 a 999) det_cMunIni = "3550308" ' código IBGE do município de origem det_xMunIni = "SÃO PAULO" ' nome do município de origem det_cMunFim = "3534708" ' código IBGE do município de término det_xMunFim = "OURINHOS" ' nome do município de término det_vPrest = 200 ' valor da prestação de serviço det_vRec = 200 ' valor a receber det_Comp_Opc = "" ' componentes do serviço ' informações da NF-e ou docto anterior ' det_infDFe = "<infDocAnt><chCTe>12345678912345678912345678912345678912345678</chCTe><tpPrest>1</tpPrest></infDocAnt>" ' det = objCTeUtil.detCTeSimp(det_nItem, _ det_cMunIni, _ det_xMunIni, _ det_cMunFim, _ det_xMunFim, _ det_vPrest, _ det_vRec, _ det_vComp_Opc, _ det_infDFe) MsgBox "Detalhamento da entrega / prestação:" + Chr(13) + det + Chr(13) + msgResultado, vbInformation, "Resultado"
- 13.6. Detalhamento das Entregas
13. Gerar XML do CT-e Simplificado novo - « Anterior
13.5.1. Quantidade de Carga - Próximo »
13.6.1. Componentes do valor da prestação