| Composition Setup |
|---|
import.css=/download/attachments/327912/newLayout.css |
| Portuguese | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|
FAQ: 54978-É possível utilizar a funcionalidade de envio de e-mails dos produtos Datasul, com um servidor de e-mails Linux?
Sintoma 54978-É possível utilizar a funcionalidade de envio de e-mails dos produtos Datasul, com um servidor de e-mails Linux? Causa É possível utilizar a funcionalidade de envio de e-mails dos produtos Datasul, com um servidor de e-mails Linux? Solução Pergunta: É possível utilizar as funcionalidades de envio de e-mails dos produtos Datasul, com um servidor de e-mails Linux?
Resposta: Para servidor Linux, deve ser utilizado o comando do sistema operacional SENDMAIL. O uso deste comando, dependendo do ambiente, pode diferenciar. Neste caso, encontra-se disponível na API responsável pelo envio de e-mail (utp/utapi019) uma chamada EPC (External Program Call) onde é possível configurar a linha de comando de e-mail de acordo com o ambiente do cliente. Será enviado a linha de comando default do produto para a EPC e esta EPC, realizará os ajustes necessários, devolvendo para o produto que utilizará este retorno para o envio.
Na API utp/utapi019, o evento EPC a ser utilizado é "eMailUnix".
Exemplo/Modelo 01: /* inicio */ /**************************************************************************** Programa: email.p - UPC responsavel para montar o comando de envio de email
Código de Parametros Disponíveis: EmailFrom - Email remetente EmailTo - Email destino ServidorEmail - Servidor SMTP CorpoEmail - Arquivo com o texto do e-mail CommandEmail - Retorna o comando completo do e-mail ****************************************************************************/ {include/i-epc200.i1} /* definição da temp-table tt-epc */ DEF INPUT PARAM p-ind-event AS CHAR NO-UNDO.DEF INPUT-OUTPUT PARAM TABLE FOR tt-epc. DEF VAR cComandoEmail AS CHAR NO-UNDO.
ASSIGN cComandoEmail = "mail ".
FOR EACH tt-epc: IF tt-epc.cod-parameter = 'CommandEmail' THEN DO: ASSIGN cComandoEmail = replace(tt-epc.val-parameter,'sendmail','mail'). ASSIGN tt-epc.val-parameter = cComandoEmail. END. END. /* fim */
Exemplo/Modelo 02: /* inicio */ /******************************************************************************** Programa: upc-utapi019.p ( UPC no programa utapi019 ) Programa: email.p - UPC responsavel para montar o comando de envio de email
Código de Parametros Disponíveis: EmailFrom - Email remetente EmailTo - Email destino ServidorEmail - Servidor SMTP CorpoEmail - Arquivo com o texto do e-mail CommandEmail - Retorna o comando completo do e-mail ********************************************************************************/ {include/i-epc200.i1} /* definição da temp-table tt-epc */ DEF INPUT PARAM p-ind-event AS CHAR NO-UNDO. DEF INPUT-OUTPUT PARAM TABLE FOR tt-epc. DEF VAR cComandoEmail AS CHAR NO-UNDO. DEF VAR c-file AS CHAR NO-UNDO. DEFINE VAR i-level AS INT INITIAL 1.
FOR EACH tt-epc: IF tt-epc.cod-parameter = 'CommandEmail' THEN DO: ASSIGN cComandoEmail = replace(tt-epc.val-parameter,'sendmail -v smtp.datasul.com.br:', 'mail -s ******EXECUCAO-DO-RPW******** '). ASSIGN tt-epc.val-parameter = cComandoEmail. END. END.
Lembrete: o relacionamento desta EPC com a API de envio de e-mail (utp/utapi019) é realizado através do Módulo de Menu, Manutenção de Programas (men/men012aa.r).
Obs.: Maiores detalhes sobre o funcionamento da API UTAPI019, acesse a documentação disponível em: ..\docapi\utapi019.doc |