Histórico da Página
...
- subject: (string) assunto do e-mail;
- content: (string) conteúdo do e-mail, podendo ser HTML;
- from: (string) endereço de e-mail do remetente da mensagem;
- fromName: (string) (opcional) caso queira utilizar um 'apelido' para sobrepor o endereço de e-mail do remetente;
- to: ([string]) lista contendo os endereços de destinatários;
- cc: ([string]) (opcional) lista contendo os endereços de destinatários a receberem a cópia do e-mail;
- bcc: ([string]) (opcional) lista contendo os endereços de destinatários a receberem a cópia oculta do e-mail;
- returnNotificationType: (integer) (opcional): indica como deve ser o retorno em caso do envio retornar alguma confirmação ou erro.
- 1. Retorna o e-mail completo;
- 2. Retorna apenas o cabeçalho (default).
- deliveryNotification: (integer) (opcional): indica o tipo de notificação que o remetente gostaria de receber.
- -1. Nenhuma (defaul);
- 1. Ao entregar o e-mail ao destinatário;
- 2. Ao falhar na entrega ao destinatário;
- 4. Ao atrasar a entrega ao destinatário;
- readNotificationTo: (string) Em caso de leitura do e-mail, caso tenha sido informado um endereço válido para este atributo, este receberá uma notificação de que o e-mail foi lido;
- priority: (integer) (opcional): prioridade do e-mail:
- 1: Alta;
- 3: (default) Normal;
- 5: Baixa.
Dica |
---|
As mensagens de confirmação de entrega e falhas serão retornadas a caixa de e-mail do usuário que estiver sendo utilizado como sender pelo serviço de e-mail. Entretanto, quando informado um endereço de e-mail válido no atributo readNotificationTo este receberá o e-mail de confirmação de leitura. |
...
- sendSimple: Destina-se ao envio de um e-mail simples.
- INPUT
- c_to: (CHARACTER EXTENT): lista contendo os endereços de destinatários;
- c_cc: (CHARACTER EXTENT): (opcional) lista contendo os endereços de destinatários a receberem a cópia do e-mail;
- c_bcc: (CHARACTER EXTENT): (opcional) lista contendo os endereços de destinatários a receberem a cópia oculta do e-mail;
- c_subject: (CHARACTER): assunto do e-mail;
- c_from: (CHARACTER): endereço de e-mail do remetente da mensagem;
- c_from_name: (CHARACTER): (opcional) caso queira utilizar um 'apelido' para sobrepor o endereço de e-mail do remetente;
- lc_content: (LONGCHAR): conteúdo do e-mail;
- l_html: (LOGICAL): indica se o conteúdo do e-mail será um HTML.
- OUTPUT
- m_response: (MEMPTR): entidade Mail em formato JSON, ou erro em caso de algum problema na execução;
- i_response_code: (INTEGER): código do status de resposta da chamada REST ao serviço;
- c_response_status: (CHARACTER): descrição do status de resposta da chamada REST ao serviço.
- INPUT
- sendWithAttachment: Destina-se ao envio de um e-mail simples com anexos. Para utilização dos anexos é preciso adicionar a include utp/ut-mail-api.i para ter acesso a ttAttachment.
- INPUT
- c_to: (CHARACTER EXTENT): lista contendo os endereços de destinatários;
- c_cc: (CHARACTER EXTENT): (opcional) lista contendo os endereços de destinatários a receberem a cópia do e-mail;
- c_bcc: (CHARACTER EXTENT): (opcional) lista contendo os endereços de destinatários a receberem a cópia oculta do e-mail;
- c_subject: (CHARACTER): assunto do e-mail;
- c_from: (CHARACTER): endereço de e-mail do remetente da mensagem;
- c_from_name: (CHARACTER): (opcional) caso queira utilizar um 'apelido' para sobrepor o endereço de e-mail do remetente;
- lc_content: (LONGCHAR): conteúdo do e-mail;
- l_html: (LOGICAL): indica se o conteúdo do e-mail será um HTML.
- ttAttachment: (TEMP-TABLE):
- fileName: (CHARACTER): nome do arquivo;
- fileType: (CHARACTER): tipo do arquivo, caso não seja informado o serviço vai tentar descobrir com base na extensão do arquivo;
- fileContent: (BLOB): conteúdo binário do arquivo.
- OUTPUT
- m_response: (MEMPTR): entidade Mail em formato JSON, ou erro em caso de algum problema na execução;
- i_response_code: (INTEGER): código do status de resposta da chamada REST ao serviço;
- c_response_status: (CHARACTER): descrição do status de resposta da chamada REST ao serviço.
- INPUT
- sendEmail: Destina-se ao envio de e-mail com solicitação de entrega e outros.
- INPUT
- c_to: (CHARACTER EXTENT): lista contendo os endereços de destinatários;
- c_cc: (CHARACTER EXTENT): (opcional) lista contendo os endereços de destinatários a receberem a cópia do e-mail;
- c_bcc: (CHARACTER EXTENT): (opcional) lista contendo os endereços de destinatários a receberem a cópia oculta do e-mail;
- c_subject: (CHARACTER): assunto do e-mail;
- c_from: (CHARACTER): endereço de e-mail do remetente da mensagem;
- c_from_name: (CHARACTER): (opcional) caso queira utilizar um 'apelido' para sobrepor o endereço de e-mail do remetente;
- lc_content: (LONGCHAR): conteúdo do e-mail;
- l_html: (LOGICAL): indica se o conteúdo do e-mail será um HTML;
- c_read_notification: (CHARACTER): caso tenha sido informado um endereço válido para este atributo, este receberá uma notificação de que o e-mail foi lido;
- i_delivery_notification: (INTEGER): indica o tipo de notificação que o remetente gostaria de receber;
- i_return_type: (INTEGER): indica como deve ser o retorno em caso do envio retornar alguma confirmação ou erro;
- i_priority: (INTEGER): prioridade do e-mail;
- ttAttachment: (TEMP-TABLE):
- fileName: (CHARACTER): nome do arquivo;
- fileType: (CHARACTER): tipo do arquivo, caso não seja informado o serviço vai tentar descobrir com base na extensão do arquivo;
- fileContent: (BLOB): conteúdo binário do arquivo.
- OUTPUT
- m_response: (MEMPTR): entidade Mail em formato JSON, ou erro em caso de algum problema na execução;
- i_response_code: (INTEGER): código do status de resposta da chamada REST ao serviço;
- c_response_status: (CHARACTER): descrição do status de resposta da chamada REST ao serviço.
- INPUT
...
Bloco de código | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||
{utp/ut-mail-api.i} DEFINE VARIABLE h_mail AS HANDLE NO-UNDO. IF NOT VALID-HANDLE(h_mail) THEN DO: RUN utp/ut-mail-api.p PERSISTENT SET h_mail. END. DEFINE VARIABLE c_to AS CHARACTER NO-UNDO EXTENT. DEFINE VARIABLE c_cc AS CHARACTER NO-UNDO EXTENT. DEFINE VARIABLE c_bcc AS CHARACTER NO-UNDO EXTENT. DEFINE VARIABLE c_subject AS CHARACTER NO-UNDO INITIAL 'Teste API Progress - Datasul Mail Service':U. DEFINE VARIABLE c_from AS CHARACTER NO-UNDO INITIAL '[email protected]':U. DEFINE VARIABLE c_from_name AS CHARACTER NO-UNDO INITIAL 'Datasul Mail Service':U. DEFINE VARIABLE lc_content_mail AS LONGCHAR NO-UNDO. DEFINE VARIABLE l_html AS LOGICAL NO-UNDO INITIAL TRUE. DEFINE VARIABLE c_read_notification AS LOGICAL NO-UNDO INITIAL TRUE. DEFINE VARIABLE i_delivery_notification AS LOGICAL NO-UNDO INITIAL TRUE. DEFINE VARIABLE i_return_type AS LOGICAL NO-UNDO INITIAL TRUE. ASSIGN lc_content_mail = 'Teste de envio de e-mail pelo PROGRESS :D':U. EXTENT (c_to) = 1. ASSIGN c_to[1] = '[email protected]':U. CREATE ttAttachment. ASSIGN ttAttachment.fileName = '<NOME ANEXO 1>'. COPY-LOB FROM FILE '<CAMINHO ANEXO 1>' TO ttAttachment.fileContent NO-CONVERT NO-ERROR. RUN sendEmail IN h_mail( INPUT c_to, INPUT c_cc, INPUT c_bcc, INPUT c_subject, INPUT c_from, INPUT c_from_name, INPUT lc_content_mail, INPUT l_html, INPUT '[email protected]', INPUT 1, INPUT 1, INPUT 1, INPUT TABLE ttAttachment, OUTPUT mptr_response, OUTPUT i_response_code, OUTPUT c_response_status ). IF VALID-HANDLE(h_mail) THEN DO: DELETE PROCEDURE h_mail. END. |
Bloco de código | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||
{utp/ut-mail-api.i} {utp/ut-report-api.i} DEFINE VARIABLE i_ocorrencia AS INTEGER NO-UNDO INITIAL 101552. DEFINE VARIABLE c_report AS CHARACTER NO-UNDO INITIAL 'crm/rel_ratec_tecnico/':U. DEFINE VARIABLE c_program AS CHARACTER NO-UNDO INITIAL 'program=/report/crm/crm0001':U. DEFINE VARIABLE c_format AS CHARACTER NO-UNDO INITIAL 'html':U. DEFINE VARIABLE c_dialect AS CHARACTER NO-UNDO INITIAL 'pt':U. DEFINE VARIABLE l_publish AS LOGICAL NO-UNDO INITIAL TRUE. DEFINE VARIABLE l_download AS LOGICAL NO-UNDO INITIAL TRUE. DEFINE VARIABLE h_api AS HANDLE NO-UNDO. DEFINE VARIABLE h_mail AS HANDLE NO-UNDO. DEFINE VARIABLE h_report AS HANDLE NO-UNDO. DEFINE VARIABLE lc_content AS LONGCHAR NO-UNDO. DEFINE VARIABLE c_query_params AS CHARACTER NO-UNDO. DEFINE VARIABLE i_response_code AS INTEGER NO-UNDO. DEFINE VARIABLE c_response_status AS CHARACTER NO-UNDO. DEFINE VARIABLE mptr_response AS MEMPTR NO-UNDO. /* ************************************************** */ /* *** Busca os dados para impressão do relatório *** */ /* ************************************************** */ ASSIGN c_query_params = '&num_id_ocor=':U + STRING(i_ocorrencia). IF NOT VALID-HANDLE(h_api) THEN DO: RUN report/crm/crm0001.p PERSISTENT SET h_api. END. RUN getReportDataRPW IN h_api(INPUT TABLE ttReport, INPUT i_ocorrencia, OUTPUT lc_content, OUTPUT TABLE RowErrors). IF VALID-HANDLE(h_api) THEN DO: DELETE PROCEDURE h_api. END. /* ************************************************** */ /* *** Realiza a chamada para o Datasul Report *** */ /* ************************************************** */ IF NOT VALID-HANDLE(h_report) THEN DO: RUN utp/ut-report-api.p PERSISTENT SET h_report. END. RUN print IN h_report ( INPUT c_report, INPUT c_program, INPUT c_format, INPUT c_dialect, INPUT l_publish, INPUT l_download, INPUT lc_content, INPUT c_query_params, OUTPUT mptr_response, OUTPUT i_response_code, OUTPUT c_response_status ). IF VALID-HANDLE(h_report) THEN DO: DELETE PROCEDURE h_report. END. IF i_response_code EQ 200 AND mptr_response NE ? THEN DO: /* ************************************************** */ /* *** Agora enviamos por e-mail o HTML gerado *** */ /* ************************************************** */ IF NOT VALID-HANDLE(h_mail) THEN DO: RUN utp/ut-mail-api.p PERSISTENT SET h_mail. END. DEFINE VARIABLE c_to AS CHARACTER NO-UNDO EXTENT. DEFINE VARIABLE c_cc AS CHARACTER NO-UNDO EXTENT. DEFINE VARIABLE c_bcc AS CHARACTER NO-UNDO EXTENT. DEFINE VARIABLE c_subject AS CHARACTER NO-UNDO INITIAL 'Teste API Progress - Datasul Mail Service':U. DEFINE VARIABLE c_from AS CHARACTER NO-UNDO INITIAL '[email protected]':U. DEFINE VARIABLE c_from_name AS CHARACTER NO-UNDO INITIAL 'Datasul Mail Service':U. DEFINE VARIABLE lc_content_mail AS LONGCHAR NO-UNDO. DEFINE VARIABLE l_html AS LOGICAL NO-UNDO INITIAL TRUE. DEFINE VARIABLE c_read_notification AS LOGICAL NO-UNDO INITIAL TRUE. DEFINE VARIABLE i_delivery_notification AS LOGICAL NO-UNDO INITIAL TRUE. DEFINE VARIABLE i_return_type AS LOGICAL NO-UNDO INITIAL TRUE. COPY-LOB FROM mptr_response TO lc_content_mail NO-CONVERT NO-ERROR. EXTENT (c_to) = 1. ASSIGN c_to[1] = '[email protected]':U. CREATE ttAttachment. ASSIGN ttAttachment.fileName = '<NOME ANEXO 1>'. COPY-LOB FROM FILE '<CAMINHO ANEXO 1>' TO ttAttachment.fileContent NO-CONVERT NO-ERROR. RUN sendEmail IN h_mail( INPUT c_to, INPUT c_cc, INPUT c_bcc, INPUT c_subject, INPUT c_from, INPUT c_from_name, INPUT lc_content_mail, INPUT l_html, INPUT '[email protected]', INPUT 1, INPUT 1, INPUT 1, INPUT TABLE ttAttachment, OUTPUT mptr_response, OUTPUT i_response_code, OUTPUT c_response_status ). IF VALID-HANDLE(h_mail) THEN DO: DELETE PROCEDURE h_mail. END. END. |
Visão Geral
Import HTML Content
Conteúdo das Ferramentas
Tarefas