Mudanças entre as edições de "UniDANFE/Integrando o UniDANFE ao ERP/EnviarOutrosEmails"

De unimake
Ir para: navegação, pesquisa
Linha 64: Linha 64:
 
* smtpTLS: 1=autenticar usando TLS; 0=não (default)
 
* smtpTLS: 1=autenticar usando TLS; 0=não (default)
 
* smtpFormatoRemetente: [email protected] (default); 1=nome <[email protected]>
 
* smtpFormatoRemetente: [email protected] (default); 1=nome <[email protected]>
 +
 +
== Como enviar outros emails usando a unidanfe_dfe.dll ==
 +
 +
Caso seu sistema esteja integrado ao UniDANFE pela UNIDANFE_DFE.DLL, você pode enviar os e-mails de aplicações externas para o UniDANFE sem precisar gerar o XML acima. Basta, nesse caso, passar tudo por parâmetros.
 +
Os nomes dos parâmetros são idênticos aos nomes das TAGS do XML.
 +
Abaixo, o mesmo exemplo utilizando a UNIDANFE_DFE.DLL:
 +
 +
 +
<pre>
 +
  dfeInit("emailExt");
 +
  dfeSetParametro('EmailRemetente', '[email protected]');
 +
  dfeSetParametro('NomeRemetente', 'Meu Nome Ltda');
 +
  dfeSetParametro('Data', '2015-12-25');
 +
  dfeSetParametro('Destinatarios', '[email protected]');
 +
  dfeSetParametro('CC', '[email protected];[email protected]');
 +
 +
  dfeSetParametro('ReplyTo', '[email protected]');
 +
  dfeSetParametro('Assunto', 'Boletos para pagamento');
 +
  dfeSetParametro('Anexo1', 'c:\pasta\boleto1.pdf');
 +
  dfeSetParametro('Anexo2', 'c:\outrapasta\novoarquivo.xml');
 +
  ...
 +
  dfeSetParametro('Anexo9', 'c:\pastaxx\teste\docto.docx');
 +
  dfeSetParametro('ComprovanteTEF1', 'c:\pasta\boleto1.pdf');
 +
  dfeSetParametro('Prioridade', '3');
 +
  dfeSetParametro('Texto', 'Bem vindo ao uso de e-mail externo para o UniDANFE.;;Esse é um exemplo de texto para o corpo do e-mail.;Use o ponto-e-vírgula para quebrar linhas.;;att,;Minha empresa');
 +
  // observe que não precisa informar a TAG <conta>
 +
  dfeSetParametro('smtpServidor', 'smtp.gmail.com');
 +
  dfeSetParametro('smtpPorta', '587');
 +
  dfeSetParametro('smtpConta', '[email protected]');
 +
  dfeSetParametro('smtpAutenticar', '1');
 +
  dfeSetParametro('smtpSSL', '0');
 +
  dfeSetParametro('smtpTLS', '1');
 +
  dfeSetParametro('smtpSenha', '@MudeJa');
 +
  dfeSetParametro('smtpHelo', '');
 +
  dfeSetParametro('smtpFormatoRemetente', '0');
 +
  dfeExecuta();
 +
  IF dfeGetErro() = ""
 +
      MESSAGE("O email foi enviado ao UniDANFE com sucesso!");
 +
  ELSE
 +
      MESSAGE(dfeGetErro());
 +
  END
 +
  dfeKill();
 +
</pre>

Edição das 18h59min de 23 de junho de 2022

Enviar e-mails de outras aplicações com o UniDANFE

É possível usar o UniDANFE para enviar e-mails de outras aplicações, como por exemplo, enviar boletos de cobranças e outras mensagens geradas pelo ERP.

Para isso, basta gerar um XML com a estrutura abaixo, e salvá-lo na pasta “Email\Enviar”, que fica dentro da pasta onde o UniDANFE está instalado (ex: c:\unimake\uninfe\email\enviar\boletos-fat-1234.xml”), com qualquer nome único.

Após gerar o arquivo de e-mail, o UniDANFE tentará enviá-lo automaticamente na próxima vez em que um e-mail normal dele for gerado.

Para forçar o envio imediatamente, após gerar o arquivo execute o UniDANFE para fazer isso. Ex: UniDANFE.exe envia_email=1

Estrutura do arquivo XML com o conteúdo do e-mail a ser enviado pelo UniDANFE:

<?xml version="1.0" encoding="UTF-8" ?>
<emailExt>
   <EmailRemetente>[email protected]</EmailRemetente>
   <NomeRemetente>Meu Nome Ltda</NomeRemetente>
   <Data>2015-12-25</Data>
   <Destinatarios>[email protected]</Destinatarios>
   <CC>[email protected];[email protected]</CC>
   <BCC>[email protected];[email protected];[email protected]</BCC>
   <ReplyTo>[email protected]</ReplyTo>
   <Assunto>Boletos para pagamento</Assunto>
   <Anexo1>c:\pasta\boleto1.pdf</Anexo1>
   <Anexo2>c:\outrapasta\novoarquivo.xml</Anexo2>
   ...
   <Anexo9>c:\pastaxx\teste\docto.docx</Anexo9>
   <ComprovanteTEF1>c:\pasta\boleto1.pdf</ComprovanteTEF1>
   <Prioridade>3</Prioridade>
   <Texto>Bem vindo ao uso de e-mail externo para o UniDANFE.;;Esse é um exemplo de texto para o corpo do e-mail.;Use o ponto-e-vírgula para quebrar linhas.;;att,;Minha empresa</Texto>
   <conta>
      <smtpServidor>smtp.gmail.com</smtpServidor>
      <smtpPorta>587</smtpPorta>
      <smtpConta>[email protected]</smtpConta>
      <smtpAutenticar>1</smtpAutenticar>
      <smtpSSL>0</smtpSSL>
      <smtpTLS>1</smtpTLS>
      <smtpSenha>123Mudar</smtpSenha>
      <smtpHelo></smtpHelo>
      <smtpFormatoRemetente>0</smtpFormatoRemetente>
   </conta>
</emailExt>

Notas

  • TAGs obrigatórias: Destinatários, Assunto e Texto.
  • EmailRemetente: TAG opcional. Se existir, será utilizado esse remetente – que já deve estar previamente cadastrado no UniDANFE – para enviar o e-mail. Se essa TAG não for informada, ou se o e-mail informado não estiver cadastrado no UniDANFE, o remetente padrão cadastrado será utilizado para o envio.
  • Data: TAG opcional. Se não informada, a data atual será utilizada.
  • Anexo1 a Anexo9: arquivos que devem ser anexados ao e-mail. Devem ser informados os arquivos na sua pasta original, com o caminho completo. Eles não serão excluídos após importados pelo UniDANFE. A sequência deve ser informada sem “furos”. Por exemplo, se for definido <Anexo1> e <Anexo3>, apenas o <Anexo1> será utilizado, pois há um “furo” em <Anexo2>.
  • Prioridade: TAG opcional. Indica a prioridade do e-mail. Válidos os valores 1 (alta), 3 (normal) e 5 (baixa).
  • ClienteEmailExterno: TAG opcional. Indica se será utilizado um cliente de e-mail externo para o envio do e-mail. Valores válidos: 0 (não) e 1 (sim).
  • Texto: - Texto do corpo do e-mail. Pode ser um texto plano ou um conteúdo HTML.
  • Para o funcionamento desse recurso é necessário que a conta de e-mail do Remetente esteja devidamente cadastrada e configurada no UniDANFE, ou incluir no XML as TAGs do grupo <conta> para que o UniDANFE faça a manutenção da conta automaticamente.

Cadastro automático da conta de e-mail

Para que o UniDANFE faça o cadastro e a manutenção dos dados da conta automaticamente basta informar as TAGs do grupo <conta>. Observe que, nesse caso, outras TAGs passam a ser obrigatórias no XML.

  • TAGs obrigatórias: EmailRemetente, Destinatários, Assunto, Texto, smtpServidor, smtpPorta.

Conteúdo das TAGS:

  • smtpAutenticar: 1=o servidor requer autenticação (default); 0=não
  • smtpSSL: 1=autenticar usando SSL; 0=não (default)
  • smtpTLS: 1=autenticar usando TLS; 0=não (default)
  • smtpFormatoRemetente: [email protected] (default); 1=nome <[email protected]>

Como enviar outros emails usando a unidanfe_dfe.dll

Caso seu sistema esteja integrado ao UniDANFE pela UNIDANFE_DFE.DLL, você pode enviar os e-mails de aplicações externas para o UniDANFE sem precisar gerar o XML acima. Basta, nesse caso, passar tudo por parâmetros. Os nomes dos parâmetros são idênticos aos nomes das TAGS do XML. Abaixo, o mesmo exemplo utilizando a UNIDANFE_DFE.DLL:


   dfeInit("emailExt");
   dfeSetParametro('EmailRemetente', '[email protected]');
   dfeSetParametro('NomeRemetente', 'Meu Nome Ltda');
   dfeSetParametro('Data', '2015-12-25');
   dfeSetParametro('Destinatarios', '[email protected]');
   dfeSetParametro('CC', '[email protected];[email protected]');
   dfeSetParametro('BCC', '[email protected];[email protected];[email protected]');
   dfeSetParametro('ReplyTo', '[email protected]');
   dfeSetParametro('Assunto', 'Boletos para pagamento');
   dfeSetParametro('Anexo1', 'c:\pasta\boleto1.pdf');
   dfeSetParametro('Anexo2', 'c:\outrapasta\novoarquivo.xml');
   ...
   dfeSetParametro('Anexo9', 'c:\pastaxx\teste\docto.docx');
   dfeSetParametro('ComprovanteTEF1', 'c:\pasta\boleto1.pdf');
   dfeSetParametro('Prioridade', '3');
   dfeSetParametro('Texto', 'Bem vindo ao uso de e-mail externo para o UniDANFE.;;Esse é um exemplo de texto para o corpo do e-mail.;Use o ponto-e-vírgula para quebrar linhas.;;att,;Minha empresa');
   // observe que não precisa informar a TAG <conta>
   dfeSetParametro('smtpServidor', 'smtp.gmail.com');
   dfeSetParametro('smtpPorta', '587');
   dfeSetParametro('smtpConta', '[email protected]');
   dfeSetParametro('smtpAutenticar', '1');
   dfeSetParametro('smtpSSL', '0');
   dfeSetParametro('smtpTLS', '1');
   dfeSetParametro('smtpSenha', '@MudeJa');
   dfeSetParametro('smtpHelo', '');
   dfeSetParametro('smtpFormatoRemetente', '0');
   dfeExecuta();
   IF dfeGetErro() = ""
      MESSAGE("O email foi enviado ao UniDANFE com sucesso!");
   ELSE 
      MESSAGE(dfeGetErro());
   END 
   dfeKill();