Manuais:UniDANFE/Integrando o UniDANFE ao ERP/XML auxiliar/Estrutura
Estrutura do XML auxiliar
O XML auxiliar deve ter a seguinte estrutura:
:<?xml version="1.0" encoding="UTF-8"?> :<outrasInf> ::: <foneEmitente>Fone: (11) 1234-1234 Fax: 1234-5678 DDG: 0800-80-8080</foneEmitente> ::: <emailDest>EMAIL DO DESTINATÁRIO</emailDest> ::: <emailCC>EMAIL PARA ENVIAR CÓPIA</emailCC> ::: <emailCCO>EMAIL PARA ENVIAR CÓPIA OCULTA</emailCCO> ::: <remetente>email ou apelido do remetente previamente cadastrado no UniDANFE</remetente> ::: <logotipo>c:\teste\imagem001.jpg</logotipo> ::: <copias>2</copias> ::: <configuracao>RETRATO</configuracao> ::: <poweredBy>Unimake Softwares</poweredBy> ::: <poweredSite>www.unimake.com.br</poweredSite> ::: <horaSaida>12:20</horaSaida> ::: <dSaiEnt>2010-05-20</dSaiEnt> ::: <nomeFantasiaDest>NOME FANTASIA DO DESTINATÁRIO</nomeFantasiaDest> ::: <codigoDest>01982 </codigoDest> ::: <cepLocalEntrega>12345123</cepLocalEntrega> ::: <nomeLocalEntrega>NOME ESTABELECIMENTO DO LOCAL DE ENTREGA</nomeLocalEntrega> ::: <cepLocalRetirada>12345123</cepLocalRetirada> ::: <nomeLocalRetirada> NOME ESTABELECIMENTO DO LOCAL DE ENTREGA </nomeLocalRetirada> ::: <textoCanhoto>Recebemos de MINHA EMPRESA LTDA a Nota Fiscal 0101010 indicada ao lado</textoCanhoto> ::: <imagemAdicional>c:\teste\nota_abnt_nbr_3758.jpg</imagemAdicional> ::: <alturaImagemAdicional>1000</alturaImagemAdicional> ::: <imprimirProdutos>1</imprimirProdutos> ::: <ImprimirTotalTributos>1</ImprimirTotalTributos> ::: <ImprimirTotalTributosProduto>1</ImprimirTotalTributosProduto> ::: <pastaLocalQRCode>c:\Meu_Erp\MinhasImagens\QRCode</pastaLocalQRCode> ::: <troco>43.20</troco> ::: <TextoMarcaDagua>Texto para imprimir como marca dágua. A cor deve ser em html e a PosY deve ser em milímetros</TextoMarcaDagua> ::: <CorMarcaDagua>#cc0000</CorMarcaDagua> ::: <PosYMarcaDagua>180</PosYMarcaDagua> ::: <TextoDiagonal>texto para ser impresso na diagonal</TextoDiagonal> ::: <Anexo1>c:\pasta\meuarquivo.ext</Anexo1> (até <Anexo999>) ::: <produtos> ::: <produto1> ::: <colunaLivre>300 KG</colunaLivre> ::: <infAdVeic>Nota Fiscal de Entrada: 01010101 Data: 01/01/2001 BLA BLA BLA</infAdVeic> ::: </produto1> ::: <produto2> ::: <colunaLivre>221 KG</colunaLivre> ::: <aux_cor>Verde</aux_cor> ::: <aux_tamanho>P</aux_tamanho> ::: <aux_outra_tag>Conteúdo de qualquer campo do cadastro do produto, ou da venda, etc</aux_outra_tag> ::: <infAdVeic>Nota Fiscal de Entrada: 02020202 Data: 02/02/2002 BLA BLA BLA</infAdVeic> ::: </produto2> ::: </produtos> :</outrasInf>
TAGS comuns a todos tipos de documentos:
<foneEmitente> Permite a informação de telefones do emitente de forma livre. As informações dessa TAG, quando informadas, substituirão completamente a linha do telefone, no quadro "Identificação do Emitente", no documento (DANFE, DACTE ou CC-e).
<emailDest> - Endereço eletrônico do destinatário. Esse endereço será usado pelo UniDANFE para enviar e-mail ao destinatário contendo o documento (DANFE, DACTE ou CC-e) e/ou o XML principal, como anexo(s).
<emailCC> - Endereço eletrônico do destinatário para onde o e-mail deve ser enviado como cópia.
<emailCCO> - Endereço eletrônico do destinatário para onde o e-mail deve ser enviado como cópia oculta.
<remetente> - Endereço eletrônico ou apelido do remetente de e-mails. O conteúdo dessa TAG será utilizado pelo UniDANFE para localizar o registro correspondente ao remetente desejado na tabela de remetentes cadastrados no sistema. O remetente deve estar previamente cadastrado no sistema. Consulte a seção "Configurando as Contas de Remetentes" para maiores detalhes.
<logotipo> - Imagem que contém o logotipo do emitente, para ser impresso no quadro correspondente;
<copias> - Número de cópias (vias) em que o documento (DANFE, DACTE ou CC-e) deve ser gerado/impresso;
<configuracao> - Configuração do UniDANFE que será usada para a geração/impressão do documento (DANFE, DACTE ou CC-e);
<poweredBy> - Publicidade que é impressa no rodapé do impresso. Nome da empresa desenvolvedora do sistema;
<poweredSite> - Site da empresa desenvolvedora do sistema, impresso junto com o conteúdo da tag <poweredBy>;
<ImprimirTotalTributos> - Indica ao sistema se deve imprimir o total aproximado de tributos (Lei da Transparência Fiscal);
<Anexo999> - Outros arquivos que devem ser anexados ao e-mail. Aceita desde <Anexo1> até <Anexo999>;
Outras TAGS utilizadas no DANFE de NF-e:
<horaSaida> Hora da saída da mercadoria, para o transporte. Esse campo já existe na estrutura do XML principal, contudo, em muitos casos não se tem essa hora no momento da geração da NF-e, mas apenas no momento da impressão da mesma. O valor dessa TAG não será atualizado no XML principal, mas apenas impresso no DANFE.
<dSaiEnt> Data da saída da mercadoria, para o transporte. Esse campo já existe na estrutura do XML principal, contudo, em muitos casos não se tem essa data no momento da geração da NF-e, mas apenas no momento da impressão da mesma. O valor dessa TAG não será atualizado no XML principal, mas apenas impresso no DANFE.
<nomeFantasiaDest> e <codigoDest> - Como seus próprios nomes demonstram, servem para informar ao UniDANFE o nome de fantasia e o código do destinatário. Essas informações, quando preenchidas, serão impressas no DANFE no campo "Nome/Razão Social" (do destinatário), logo após a razão social informada no XML principal, e tem a função de facilitar ao transportador (entregador) a localização dos estabelecimentos destinatários, que raramente estampam a razão social em placas externas.
<cepLocalEntrega> - Campo que não existe atualmente na estrutura do XML principal. O UniDANFE imprime o local de entrega no corpo do DANFE quando informado no XML principal. No entanto, para preenchimento do CEP, é necessário informá-lo no XML auxiliar.
<nomeLocalEntrega> - Campo que não existe atualmente na estrutura do XML principal. O UniDANFE imprime o local de entrega no corpo do DANFE quando informado no XML principal. No entanto, para preenchimento do NOME, é necessário informá-lo no XML auxiliar.
<cepLocalRetirada> - Igualmente ao CEP do local de entrega, o UniDANFE imprime o local de retirada no corpo do DANFE quando informado no XML principal. No entanto, para preenchimento do CEP, é necessário informá-lo no XML auxiliar.
<nomeLocalRetirada> - Igualmente ao CEP do local de retirada, o UniDANFE imprime o local de retirada no corpo do DANFE quando informado no XML principal. No entanto, para preenchimento do NOME, é necessário informá-lo no XML auxiliar.
<textoCanhoto> - Redefinição do texto padrão impresso no canhoto do DANFE. O texto que for definido nessa TAG será impresso integralmente, sobrepondo-se ao padrão atual do sistema.
<imagemAdicional> - Nome completo, incluindo o caminho, de uma imagem para ser impressa no rodapé da seção "DADOS ADICIONAIS", dentro do quadro "Informações Complementares". sistema. Válido apenas para impressão do DANFE em orientação RETRATO.
<alturaImagemAdicional> - Altura, em milésimos de polegadas, com que a imagem adicional vai ser impressa. Essa altura será adicionada ao quadro "Dados Adicionais". Se omitido, o valor padrão 1000 (aproximadamente 25mm) é assumido. Válido apenas para impressão do DANFE em orientação RETRATO.
<produtos> - TAGS utilizadas para informações complementares aos produtos. É um recurso especial do UniDANFE para suprir necessidades que o XML auxiliar não contempla. Através dessas TAGS, é possível incluir uma coluna livre (Free) no DANFe, ou definir colunas específicas (Plus) iniciadas com o prefixo "Aux_" para utilização através das configurações de colunas, presentes no UniDANFE Plus.
<produto?> - Abre um grupo de TAGS de produtos. Deve ser aberta uma TAG de grupo de produtos para cada produto constante no XML auxiliar. O símbolo "?" presente nessa TAG deve ser substituído pelo mesmo número de sequência presente na TAG de grupo <det nItem="?"> do XML principal.
<colunaLivre>(Free) - O conteúdo dessa TAG será impresso na coluna correspondente do DANFE, desde que previamente configurado na interface amigável do UniDANFE. É utilizada para imprimir conteúdos do cadastro de produtos ou dos itens das vendas que não estejam presentes na estrutura do XML principal. Para maiores detalhes a respeito dessa configuração, consulte a seção "Coluna Livre".
Atenção: se você estiver imprimindo DANFE´s em ambiente de homologação, o UniDANFE se comporta como edição Plus e não imprime os dados da coluna livre. Para contornar isso, ao carregar o UniDANFE passe o parâmetro indicando que quer utilizar especificamente a edição free. Ex: UniDANFE.exe a=01010101.xml d=free
<aux_nnnnnn>(Plus) - No UniDANFE v.3 Plus é possível configurar cada coluna que será impressa no DANFE, bem como mudar sua posição, e inclusive remover colunas não utilizadas, como valor e alíquota de IPI para empresas que não utilizem esse imposto, por exemplo. Também é possível adicionar novas colunas do DANFE. Nesse caso, podem ser adicionadas qualquer TAG do grupo <det> do XML principal, ou mesmo outras que não existam nesse XML principal. Por exemplo, para adicionar no DANFE, logo após a descrição do produto uma coluna contendo a cor do mesmo, basta incluir a coluna <Aux_Cor> na configuração do UniDANFE, e gerar no XML auxiliar a mesma TAG com seu respectivo conteúdo, como pode ser visto no exemplo dado logo acima na estrutura do XML auxiliar, onde foram definidas as TAGS <Aux_Cor> e <Aux_Tamanho>.
<infAdVeic>(Plus) - Ao emitir DANFE de venda de veículos novos, é possível configurar o UniDANFE v.3 Plus para emitir a descrição complementar dos veículos logo abaixo da linha do produto com as informações presentes nas TAG´s específicas (grupo <veicProd>). No entanto, em havendo necessidade de destacar ali outras informações adicionais não contempladas no conjunto de TAG´s específicas, pode-se gerar o complemento da descrição nessa TAG <infAdVeic> no arquivo auxiliar, que a mesma será adicionada à descrição complementar, no ponto onde a mesma for inserida na interface de configuração do UniDANFE.
<ImprimirTotalTributosProduto> - Indica ao sistema se deve imprimir o total aproximado de tributos do produto (Lei da Transparência Fiscal);
Outras TAGS utilizadas no DANFE de NFC-e:
<imprimirProdutos> - Indica se deve ou não imprimir os produtos. Aceita os valores "1" (sim) ou "0" (não).
<pastaLocalQRCode>(Plus) - Indica uma pasta local ou da rede para onde a imagem do QRCode gerada deve ser copiada para posterior utilização pelo sistema ERP do cliente.
<troco> - indica ao sistema o valor que deve ser impresso no campo "Troco", na seção de totais. Atenção: Essa TAG é desconsiderada a partir da versão 4.00 do XML, que já contempla a TAG <vTroco> no próprio XML da NFC-e.
<ImprimirTotalTributosProduto> - Indica ao sistema se deve imprimir o total aproximado de tributos do produto (Lei da Transparência Fiscal);
? Campos não previstos no XML Principal
Além da utilização do arquivo XML auxiliar, há a possibilidade de informar alguns campos não previstos no XML principal utilizando-se as TAG´s de uso livre. Observe que a SEFAZ aceita no máximo 10 (dez) TAG´s dessas no mesmo XML. Assim, fica a cargo do desenvolvedor escolher quais irá utilizar para melhor integrar seu ERP ao UniDANFE. As informações que são previstas e que podem ser informadas nessa TAG são:
Logotipo - Logotipo do emitente;
Telefones_Emitente - Telefones do emitente, para sair no quadro "Identificação do Emitente". Utilizar quando se deseja imprimir mais de um número de telefone nesse quadro.
Email_Destinatario - E-mail do destinatário da NF-e. Informar para automatizar processo de envio da NF-e e do XML para o destinatário da NF-e.
Email_CC - E-mail para onde uma cópia da NF-e deva ser enviada.
Email_CCO - E-mail para onde uma cópia da NF-e deva ser enviada. Endereços informados nesse campo ficarão invisíveis aos destinatários.
Remetente - Email ou apelido do remetente de e-mails. O conteúdo dessa TAG será utilizado pelo UniDANFE para localizar o registro correspondente ao remetente desejado na tabela de remetentes cadastrados no sistema. O remetente deve estar previamente cadastrado no sistema. Consulte a seção "Configurando as Contas de Remetentes" para maiores detalhes.
Nome_Fantasia_Dest - Ao informar esse campo, o nome fantasia é impresso no DANFE à direita da razão social do destinatário da NF-e.
Codigo_Destinatario - Ao informar esse campo, o código é impresso no DANFE à direita da razão social do destinatário da NF-e.
Nome_Local_Entrega - Nome do estabelecimento no local de entrega. Impresso no corpo do DANFE, juntamente ao endereço de entrega.
Cep_Local_Entrega - CEP do local de entrega. Impresso no corpo do DANFE, juntamente ao endereço de entrega.
Nome_Local_Retirada - Nome do estabelecimento no local de retirada. Impresso no corpo do DANFE, juntamente ao endereço de retirada.
Cep_Local_Retirada - CEP do local de retirada. Impresso no corpo do DANFE, juntamente ao endereço de retirada.
Texto_Fatura - Texto para ser impresso no campo "Fatura", do quadro "Fatura/duplicatas".
veicTransp - Placa do veiculo, UF e número do RNTC, para os casos em que esses campos não estão previstos no XML do documento e mesmo assim queira-se imprimi-los. Caso o grupo de TAGs <veicTransp> esteja presente no XML do documento, esse conteúdo dentro do grupo <infAdic> será ignorado automaticamente.
Exemplo da utilização das TAG´s de uso livre (obs: há um limite de utilização, de 10 campos por XML - fica a cargo do programador/emitente escolher quais campos vai utilizar):
...
<infAdic>
<infCpl>xxxx xxx xxxxxxxx xxxxx xxxxx;xxxxx xxxx xxxx xxxxx</infCpl>
<obsCont xCampo="Logotipo"><xTexto>c:\imagens\logomarca.jpg</xTexto></obsCont>
<obsCont xCampo="Email_Destinatario"><xTexto>[email protected]</xTexto></obsCont>
<obsCont xCampo="Email_CC"><xTexto>[email protected]</xTexto></obsCont>
<obsCont xCampo="Email_CCO"><xTexto>[email protected]</xTexto></obsCont>
<obsCont xCampo="Remetente"><xTexto>[email protected]</xTexto></obsCont>
<obsCont xCampo="Remetente"><xTexto>apelido do remetente</xTexto></obsCont>
<obsCont xCampo="Telefones_Destinatario"><xTexto>Fone: (nn) nnnn-nnnn - Fax: nnnn-nnnn</xTexto></obsCont>
<obsCont xCampo="Nome_Fantasia_Dest"><xTexto>Nome de Fantasia</xTexto></obsCont>
<obsCont xCampo="Codigo_Destinatario"><xTexto>12345</xTexto></obsCont>
<obsCont xCampo="Nome_Local_Entrega"><xTexto>NOME DO ESTABELECIMENTO</xTexto></obsCont>
<obsCont xCampo="Cep_Local_Entrega"><xTexto>12345-123</xTexto></obsCont>
<obsCont xCampo="Nome_Local_Retirada"><xTexto>NOME DO ESTABELECIMENTO</xTexto></obsCont>
<obsCont xCampo="Cep_Local_Retirada"><xTexto>12345-123</xTexto></obsCont>
<obsCont xCampo="Texto_Fatura"><xTexto>PAGAMENTO ANTECIPADO</xTexto></obsCont>
<obsCont xCampo="veicTransp"><xTexto>AAA1234|PR|1234567890</xTexto></obsCont>
</infAdic>
...