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

De unimake
Ir para: navegação, pesquisa
Linha 37: Linha 37:
 
       <smtpSSL>0</smtpSSL>
 
       <smtpSSL>0</smtpSSL>
 
       <smtpTLS>1</smtpTLS>
 
       <smtpTLS>1</smtpTLS>
       <smtpSenha>123Mudar</smtpSenha>
+
       <smtpSenha>@MudeJa</smtpSenha>
 
       <smtpHelo></smtpHelo>
 
       <smtpHelo></smtpHelo>
 
       <smtpFormatoRemetente>0</smtpFormatoRemetente>
 
       <smtpFormatoRemetente>0</smtpFormatoRemetente>
Linha 74: Linha 74:
 
<pre>
 
<pre>
 
   dfeInit("emailExt");
 
   dfeInit("emailExt");
   dfeSetParametro('EmailRemetente', '[email protected]');
+
   dfeSetParametro("EmailRemetente", "[email protected]");
   dfeSetParametro('NomeRemetente', 'Meu Nome Ltda');
+
   dfeSetParametro("NomeRemetente", "Meu Nome Ltda");
   dfeSetParametro('Data', '2015-12-25');
+
   dfeSetParametro("Data", "2015-12-25");
   dfeSetParametro('Destinatarios', '[email protected]');
+
   dfeSetParametro("Destinatarios", "[email protected]");
   dfeSetParametro('CC', '[email protected];[email protected]');
+
   dfeSetParametro("CC", "[email protected];[email protected]");
+
   dfeSetParametro('ReplyTo', '[email protected]');
+
   dfeSetParametro("ReplyTo", "[email protected]");
   dfeSetParametro('Assunto', 'Boletos para pagamento');
+
   dfeSetParametro("Assunto", "Boletos para pagamento");
   dfeSetParametro('Anexo1', 'c:\pasta\boleto1.pdf');
+
   dfeSetParametro("Anexo1", "c:\pasta\boleto1.pdf");
   dfeSetParametro('Anexo2', 'c:\outrapasta\novoarquivo.xml');
+
   dfeSetParametro("Anexo2", "c:\outrapasta\novoarquivo.xml");
 
   ...
 
   ...
   dfeSetParametro('Anexo9', 'c:\pastaxx\teste\docto.docx');
+
   dfeSetParametro("Anexo9", "c:\pastaxx\teste\docto.docx");
   dfeSetParametro('ComprovanteTEF1', 'c:\pasta\boleto1.pdf');
+
   dfeSetParametro("ComprovanteTEF1", "c:\pasta\boleto1.pdf");
   dfeSetParametro('Prioridade', '3');
+
   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');
+
   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>
 
   // observe que não precisa informar a TAG <conta>
   dfeSetParametro('smtpServidor', 'smtp.gmail.com');
+
   dfeSetParametro("smtpServidor", "smtp.gmail.com");
   dfeSetParametro('smtpPorta', '587');
+
   dfeSetParametro("smtpPorta", "587");
   dfeSetParametro('smtpConta', '[email protected]');
+
   dfeSetParametro("smtpConta", "[email protected]");
   dfeSetParametro('smtpAutenticar', '1');
+
   dfeSetParametro("smtpAutenticar", "1");
   dfeSetParametro('smtpSSL', '0');
+
   dfeSetParametro("smtpSSL", "0");
   dfeSetParametro('smtpTLS', '1');
+
   dfeSetParametro("smtpTLS", "1");
   dfeSetParametro('smtpSenha', '@MudeJa');
+
   dfeSetParametro("smtpSenha", "@MudeJa");
   dfeSetParametro('smtpHelo', '');
+
   dfeSetParametro("smtpHelo", "");
   dfeSetParametro('smtpFormatoRemetente', '0');
+
   dfeSetParametro("smtpFormatoRemetente", "0");
 
   dfeExecuta();
 
   dfeExecuta();
 
   IF dfeGetErro() = ""
 
   IF dfeGetErro() = ""

Edição das 19h01min 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>@MudeJa</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();