Funcionalidade para gerar o XML do grupo de informações do local de entrega [entrega].
string localEntregaNT201805(string CNPJ, string CPF, string xNome_Opc, string xLgr, string nro, string xCpl_Opc, string xBairro, string cMun, string xMun, string UF, string CEP_Opc, string cPais_Opc, string xPais_Opc, string fone_Opc, string email_Opc, string IE_Opc)
Funcionalidade para gerar o XML do grupo de informações do local de entrega da versão 4.00 do leiaute da NF-e.
Este grupo de informação só deve ser informado nos casos em que o local de entrega seja diferente do endereço do destinatário, cabendo ressaltar que é necessário que a situação esteja prevista na legislação, como é o caso da obra de construção civil.
nome | tipo | tam. | obrig. | descrição |
---|---|---|---|---|
CNPJ | string | 14 | sim | informar o CNPJ, sem formatação ou máscara |
CPF | string | 11 | sim | informar o CPF, sem formatação ou máscara |
xNome_Opc | string | 2-60 | não | informar o Razão Social ou Nome do Recebedor (campo novo) |
xLgr | string | 2-60 | sim | informar o logradouro do local de entrega |
nro | string | 1-60 | sim | informar o número do endereço do local de entrega, campo obrigatório. Informar S/N ou . (ponto) ou – (traço) para evitar falha de schema XML quando não houver número. |
xCpl | string | 1-60 | não | informar o complemento do endereço do local de entrega, pode ser omitido |
xBairro | string | 2-60 | sim | informar o bairro do endereço do local de entrega |
cMun | string | 7 | sim | informar o código do município na codificação do IBGE com 7 dígitos |
xMun | string | 2-60 | sim | informar o nome do município |
UF | string | 2 | sim | informar a sigla da UF |
CEP_Opc | string | 8 | não | informar Código do CEP com os zeros não significativos. (campo novo) |
cPais_Opc | string | 4 | não | informar o Código do País. Utilizar a Tabela do BACEN (Anexo IX – Tabela de UF, Município e País). (campo novo) |
xPais_Opc | string | 2-60 | não | informar o Nome do País (campo novo) |
fone_Opc | string | 6-14 | não | informar o Telefone Preencher com o Código DDD + número do telefone. Nas operações com exterior é permitido informar o código do país + código da localidade + número do telefone (campo novo) |
email_Opc | string | 1-60 | não | informar o Endereço de e-mail do Expedidor (campo novo) |
IE_Opc | string | 2-14 | não | informar Inscrição Estadual do Estabelecimento Expedidor Informar somente os algarismos, sem os caracteres de formatação (ponto, barra, hífen, etc.). (campo novo) |
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 na definição do leiaute.
Um string com o grupo XML do Local de Entrega
Exemplo de XML compatível com a versão anterior do grupo entrega
<entrega>
<CPF>00000000191</CPF>
<xLgr>Rua Libero Badaro</xLgr>
<nro>280</nro>
<xCpl>10 andar</xCpl>
<xBairro>CENTRO</xBairro>
<cMun>3550308</cMun>
<xMun>SAO PAULO</xMun>
<UF>SP</UF>
</entrega>
Exemplo de XML da versão completa do grupo entrega
<entrega>
<CPF>00000000191</CPF>
<xNome>Dias e Dias Parado</xNome>
<xLgr>Rua Libero Badaro</xLgr>
<nro>280</nro>
<xCpl>10 andar</xCpl>
<xBairro>CENTRO</xBairro>
<cMun>3550308</cMun>
<xMun>SAO PAULO</xMun>
<UF>SP</UF>
<CEP>01100100</CEP>
<cPais>105</cPais>
<xPais>Brasil</xPais>
<fone>11332001234</fone>
<email>fulano@tal.com.br</email>
</entrega>
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
Exemplo de geração do XML da versão anterior do grupo entrega
' inicializar variáveis
'...............................................
Dim objNFeUtil As Object
Set objNFeUtil = CreateObject("NFe_Util_2G.Util")
'
'========grupo de informações do local de Entrega (grupo G do Manual de Integração)=========
'
' <>&" são caracteres reservados do XML e devem ser evitados ou substituídos
' por < &gy; & "
'
' Vale ressaltar que as aplicações das UF devem mostrar DIAS & DIAS TENTANDO S/A,
' pois não entedem & como &, assim talvez seja melhor substituir o & por e.
'
locEnt_CNPJ = "00000000000191" ' CNPJ sem máscara de formatação
locEnt_CPF = "" ' CPF sem máscara de formatação
locEnt_xNome ="" ' Nome recebedor
locEnt_xLgr = "Rua Libero Badaro" ' logradouro
locEnt_nro = "280" ' número, informar S/N quando inexistente para evitar o erro de Schema XML
locEnt_xCpl = "10 andar" ' complemento do endereço, o conteúdo pode ser omitido
locEnt_xBairro = "CENTRO" ' bairro
locEnt_cMun = "3550308" ' código do município, deve ser compatível com a UF
locEnt_xMun = "SAO PAULO" ' nome do município
locEnt_UF = "SP" ' sigla da UF
locEnt_CEP = "" ' CEP
locEnt_cPais = "" ' código do país
locEnt_xPais = "" ' nome do país
locEnt_fone = "" ' telefone DDNNNNNNNNN
locEnt_email = "" ' e-mail
locEnt_IE = "" ' Inscrição Estadual
'
' gera grupo do local de entrega
'
locEntrega = objNFeUtil.localEntregaNT201805(locEnt_CNPJ, locEnt_CPF, locEnt_xNome, locEnt_xLgr, locEnt_nro, locEnt_xCpl, locEnt_xBairro, locEnt_cMun, locEnt_xMun, locEnt_UF, locEnt_CEP, locEnt_cPais, locEnt_xPais, locEnt_fone, locEnt_email, locEnt_IE)
MsgBox "local de entrega: " + locEntrega, vbInformation, "Resultado"
Exemplo de geração do XML completo do grupo entrega
' inicializar variáveis
'...............................................
Dim objNFeUtil As Object
Set objNFeUtil = CreateObject("NFe_Util_2G.Util")
'
'========grupo de informações do local de Entrega (grupo G do Manual de Integração)=========
'
' <>&" são caracteres reservados do XML e devem ser evitados ou substituídos
' por < &gy; & "
'
' Vale ressaltar que as aplicações das UF devem mostrar DIAS & DIAS TENTANDO S/A,
' pois não entedem & como &, assim talvez seja melhor substituir o & por e.
'
locEnt_CNPJ = "00000000000191" ' CNPJ sem máscara de formatação
locEnt_CPF = "" ' CPF sem máscara de formatação
locEnt_xNome ="Dias e Dias Parado" ' Nome recebedor
locEnt_xLgr = "Rua Libero Badaro" ' logradouro
locEnt_nro = "280" ' número, informar S/N quando inexistente para evitar o erro de Schema XML
locEnt_xCpl = "10 andar" ' complemento do endereço, o conteúdo pode ser omitido
locEnt_xBairro = "CENTRO" ' bairro
locEnt_cMun = "3550308" ' código do município, deve ser compatível com a UF
locEnt_xMun = "SAO PAULO" ' nome do município
locEnt_UF = "SP" ' sigla da UF
locEnt_CEP = "011001001" ' CEP
locEnt_cPais = "1058" ' código do país
locEnt_xPais = "Brasil" ' nome do país
locEnt_fone = "11332001234" ' telefone DDNNNNNNNNN
locEnt_email = "fulano@tal.com.br" ' e-mail
locEnt_IE = "" ' Inscrição Estadual
'
' gera grupo do local de entrega
'
locEntrega = objNFeUtil.localEntregaNT201805(locEnt_CNPJ, locEnt_CPF, locEnt_xNome, locEnt_xLgr, locEnt_nro, locEnt_xCpl, locEnt_xBairro, locEnt_cMun, locEnt_xMun, locEnt_UF, locEnt_CEP, locEnt_cPais, locEnt_xPais, locEnt_fone, locEnt_email, locEnt_IE)
MsgBox "local de entrega: " + locEntrega, vbInformation, "Resultado"