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

De unimake
Ir para: navegação, pesquisa
 
(13 revisões intermediárias pelo mesmo usuário não estão sendo mostradas)
Linha 27: Linha 27:
 
   ...
 
   ...
 
   <Anexo9>c:\pastaxx\teste\docto.docx</Anexo9>
 
   <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>
 
   <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>
 
   <conta>
Linha 37: Linha 35:
 
       <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 48: Linha 46:
 
* Data: TAG opcional. Se não informada, a data atual será utilizada.
 
* 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>.
 
* 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.
 
* 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.  
 
* 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.  
Linha 65: Linha 61:
 
* 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 ==
+
== 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.
 
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.
 
Os nomes dos parâmetros são idênticos aos nomes das TAGS do XML.
 
Abaixo, o mesmo exemplo utilizando a UNIDANFE_DFE.DLL:
 
Abaixo, o mesmo exemplo utilizando a UNIDANFE_DFE.DLL:
 
  
 
<pre>
 
<pre>
 +
  // inicializa a classe
 
   dfeInit("emailExt");
 
   dfeInit("emailExt");
   dfeSetParametro('EmailRemetente', '[email protected]');
+
 
   dfeSetParametro('NomeRemetente', 'Meu Nome Ltda');
+
  // passa todos os parâmetro. A lista de parâmetros obrigatórios é a mesma da lista de Tags obrigatórias. Olhe a documentação acima para saber qual é.
   dfeSetParametro('Data', '2015-12-25');
+
   dfeSetParametro("EmailRemetente", "[email protected]");                   // "remetente" também funciona
   dfeSetParametro('Destinatarios', '[email protected]');
+
   dfeSetParametro("NomeRemetente", "Meu Nome Ltda");
   dfeSetParametro('CC', '[email protected];[email protected]');
+
   dfeSetParametro("Data", "2015-12-25");
+
   dfeSetParametro("Destinatarios", "[email protected]");                   // "email" também funciona
   dfeSetParametro('ReplyTo', '[email protected]');
+
   dfeSetParametro("CC", "[email protected];[email protected]");               // "emailcc" também funciona
   dfeSetParametro('Assunto', 'Boletos para pagamento');
+
   dfeSetParametro("BCC", "[email protected];[email protected];[email protected]"); // "emailcco" também funciona
   dfeSetParametro('Anexo1', 'c:\pasta\boleto1.pdf');
+
   dfeSetParametro("ReplyTo", "[email protected]");
   dfeSetParametro('Anexo2', 'c:\outrapasta\novoarquivo.xml');
+
   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("Anexo9", "c:\pastaxx\teste\docto.docx");
   dfeSetParametro('ComprovanteTEF1', 'c:\pasta\boleto1.pdf');
+
   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('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');
+
   // Preencher essas tags abaixo apenas se você quer que a conta de e-mail seja cadastrada automaticamente do UniDANFE. Caso ela já esteja cadastrada, não precisa informá-las.
   // 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');
+
 
 +
  // executa
 
   dfeExecuta();
 
   dfeExecuta();
 +
 +
  // verificar se deu algum erro
 
   IF dfeGetErro() = ""
 
   IF dfeGetErro() = ""
 
       MESSAGE("O email foi enviado ao UniDANFE com sucesso!");
 
       MESSAGE("O email foi enviado ao UniDANFE com sucesso!");
Linha 105: Linha 106:
 
       MESSAGE(dfeGetErro());
 
       MESSAGE(dfeGetErro());
 
   END  
 
   END  
 +
 +
  // encerra a classe
 
   dfeKill();
 
   dfeKill();
 
</pre>
 
</pre>
 +
 +
== Links úteis ==
 +
* [[Manuais:UniDANFE/Integrando o UniDANFE ao ERP/Lista completa dos comandos de integração|Lista completa dos comandos de integração]]

Edição atual tal como às 09h53min de 4 de novembro 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>
   <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>.
  • 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:

   // inicializa a classe
   dfeInit("emailExt");

   // passa todos os parâmetro. A lista de parâmetros obrigatórios é a mesma da lista de Tags obrigatórias. Olhe a documentação acima para saber qual é.
   dfeSetParametro("EmailRemetente", "[email protected]");                   // "remetente" também funciona
   dfeSetParametro("NomeRemetente", "Meu Nome Ltda");
   dfeSetParametro("Data", "2015-12-25");
   dfeSetParametro("Destinatarios", "[email protected]");                   // "email" também funciona
   dfeSetParametro("CC", "[email protected];[email protected]");                // "emailcc" também funciona
   dfeSetParametro("BCC", "[email protected];[email protected];[email protected]");  // "emailcco" também funciona
   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("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");

   // Preencher essas tags abaixo apenas se você quer que a conta de e-mail seja cadastrada automaticamente do UniDANFE. Caso ela já esteja cadastrada, não precisa informá-las.
   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");

   // executa 
   dfeExecuta();

   // verificar se deu algum erro
   IF dfeGetErro() = ""
      MESSAGE("O email foi enviado ao UniDANFE com sucesso!");
   ELSE 
      MESSAGE(dfeGetErro());
   END 

   // encerra a classe
   dfeKill();

Links úteis