Histórico da Página
...
Possui definições da mensagem a ser enviada.
Atributo | Tipo | Valor Inicial | Descrição |
---|---|---|---|
versao-integracao | integer |
Versão de integração da API. | |
servidor | character |
Hostname ou endereço IP do servidor de e-mail. Caso não informado, é utilizado o cadastro dos parâmetros de e-mail do produto. | |||
porta | integer | 0 | Número da Porta do servidor de e-mail. Caso não informado, é utilizado o cadastro dos parâmetros globais do produto. Só influencia quando utilizado OCX para envio da mensagem. |
exchange | logical | no | Utilizar servidor Exchange para envio da mensagem. |
destino | character |
Destinatário(s) da mensagem. Quando é mais de um, devem ser separados por vírgulas. Deve ser informado obrigatoriamente. Quando for utilizado para envio de fax, deve ser passado no padrão “[fax:número]”. | |
copia | character |
Cópia Carbono da mensagem. Quando é mais de um, devem ser separados por vírgulas. Para ambiente UNIX, os endereços adicionados nesse campo serão incluídos no campo "para". | ||
remetente | character |
Remetente da mensagem. Só influencia quando utilizado OCX para envio da mensagem. Precisa ter os padrões de um endereço de e-mail([email protected]). Tem que ser um e-mail valido quando utilizado JAVA. | |
assunto | character |
Assunto da mensagem. | ||
mensagem | character |
Corpo da mensagem. Informação obrigatória. | ||
arq-anexo | character |
Caminho completo do arquivo a ser anexado na mensagem. Disponível apenas para envio de mensagem por MS-Exchange, Blat, Java e UNIX. Em outros casos, é incorporado na mensagem, o caminho do arquivo. Para anexar mais de um arquivo, eles devem ser separados por virgula. | |||
importancia | integer | 0 | Nível da importância da mensagem. Só influencia quando utilizado servidor Exchange. Os valores possíveis são de 0 a 2: 0 – Prioridade Baixa, 1 – Prioridade Normal, 2 – Prioridade Alta. |
log-enviada | logical | no | Envia uma mensagem para o remetente assim que a sua mensagem original for enviada. Só influencia quando utilizado servidor Exchange. |
log-lida | logical | no | Envia uma mensagem para o remetente assim que a sua mensagem original for lida. Só influencia quando utilizado servidor Exchange. |
acomp | logical | yes | Execução do utilitário ut-acomp, para verificar o desenvolvimento da execução. Só influencia quando utilizado servidor Exchange. |
formato | character | Texto | Aceita dois valores: "TEXTO", para enviar e-mail sem formatação e "HTML" , onde o e-mail será enviado no formato HTML. |
Abaixo é possível visualizar onde cada atributo é obrigatório ou opcional:
Atributo | EXCHANGE | FAX | BLAT/OCX | SENDMAIL (UNIX) | JAVA | MAILSEND (SSL) |
---|---|---|---|---|---|---|
versao-integracao | Obrigatório | Obrigatório | Obrigatório | Obrigatório | Obrigatório | Obrigatório |
servidor | Desnecessário | Desnecessário | Opcional | Opcional | Obrigatório | Obrigatório |
porta | Desnecessário | Desnecessário | Opcional | Desnecessário | Obrigatório | Obrigatório |
destino | Obrigatório | Obrigatório | Obrigatório | Obrigatório | Obrigatório | Obrigatório |
copia | Opcional | Opcional | Opcional | Desnecessário | Desnecessário | Opcional |
remetente | Desnecessário | Desnecessário | Obrigatório | Opcional | Obrigatório | Obrigatório |
assunto | Opcional | Opcional | Obrigatório | Opcional | Obrigatório | Obrigatório |
mensagem | Obrigatório | Obrigatório | Obrigatório | Obrigatório | Obrigatório | Obrigatório |
arq-anexo | Opcional | Obrigatório | Opcional¹ | Opcional³ | Opcional | Opcional |
importancia | Opcional | Desnecessário | Desnecessário | Desnecessário | Desnecessário | Desnecessário |
log-enviada | Opcional | Desnecessário | Desnecessário | Desnecessário | Desnecessário | Desnecessário |
log-lida | Opcional | Desnecessário | Desnecessário | Desnecessário | Desnecessário | Desnecessário |
acomp | Opcional | Desnecessário | Desnecessário | Desnecessário | Desnecessário | Desnecessário |
formato | Opcional² | Desnecessário | Opcional¹ | Opcional³ | Desnecessário | Desnecessário |
- Para utilização do Blat, é necessário encontrar o arquivo “interfac/mail/blat.exe” na estrutura de diretórios do produto. Caso não seja encontrado, o e-mail será enviado sem o anexo. O arquivo “blat.exe” é distribuído gratuitamente junto às mídias/pacotes dos produtos Datasul.
- Só é possível enviar e-mail no formato HTML utilizando Outlook 2000 ou posterior.
- Não é possível enviar e-mail no formato HTML quando existir arquivo anexo no UNIX.
...
Possui o conteúdo da mensagem enviada. Essa temp-table foi criada porque o número máximo de caracteres por registro no Progress é de 32kb e caso a mensagem do e-mail possuísse mais 32 Kb era exibida a mensagem Progress 444. Com essa temp-table será possível enviar e-mail com quantos caracteres forem necessários, menos com a opção Exchange que ainda mantém essa limitação.
Atributo | Tipo | Valor Inicial | Descrição |
---|---|---|---|
seq-mensagem | integer |
Sequência da mensagem | ||
mensagem | character |
Conteúdo da mensagem |
tt-erro
Possui os erros encontrados pela API.
Atributo | Tipo | Valor Inicial | Descrição |
---|---|---|---|
cod-erro | integer |
Número do erro | |
desc-erro | character |
Descrição do erro | |
desc-arq | character |
Caminho do arquivo que não pode ser anexado, por se tratar de envio de mensagem no ambiente UNIX. |
tt-paramEmail
Indica tipo de envio de e-mail.
Atributo | Tipo | Valor Inicial | Descrição |
---|---|---|---|
caminhoEmail | integer | 1 | Esse campo pode receber os seguintes valores: |
2-Exchange
3-Java
4-MailSend (SSL)
*** Caso for atribuído um valor diferente desses, o valor padrão será BLAT
Blat 5-DatasulMailServer *** Caso for atribuído um valor diferente desses, o valor padrão será BLAT | |||
mailUser | character | Codigo do usuario para autenticação (se necessário) | |
mailPass | character | Senha do usuario para autenticação (se necessário) | |
TLS | logical | no | Protocolo |
SSL | logical | no | Protocolo |
Debug | logical | no | Ativa o debug para o servidor de aplicação |
ativaRemetPadrao | logical | no | Estando como "yes" ativa o comportamento de "responder para", onde o remetente será sempre o from alias e o remetente padrão será quem receberá a resposta do e-mail; |
codRemetPadrao | character | Codigo (e-mail) do remetente que ira receber a resposta, caso o campo logico ativaRemetPadrao estiver como yes. |
Configurações disponíveis também na tela de parâmetros de e-mail (btb962zb);
Execução
...
A API possui dois métodos que podem ser executados:
...
- OK: Mensagem enviada com sucesso.
- NOK: Envio de mensagem abortado. Os erros encontrados serão retornados por meio da temp-table tt-erros.
Exemplos
...
...
Bloco de código | ||||
---|---|---|---|---|
| ||||
{utp/utapi019.i} RUN utp/utapi019.p PERSISTENT SET h-utapi019. CREATE tt-envio2. ASSIGN tt-envio2.versao-integracao = 1 tt-envio2.destino = "[fax:0,0474417020]" tt-envio2.assunto = "xxxxxxxxxx" tt-envio2.arq-anexo = "c:/tmp/api-fax.doc". CREATE tt-mensagem. ASSIGN tt-mensagem.seq-mensagem = 1 tt-mensagem.mensagem = "Mensagem 1". CREATE tt-mensagem. ASSIGN tt-mensagem.seq-mensagem = 2 tt-mensagem.mensagem = "Mensagem 2". OUTPUT TO VALUE(SESSION:TEMP-DIRECTORY + "envemail.txt"). RUN pi-execute2 IN h-utapi019(INPUT TABLE tt-envio2, INPUT TABLE tt-mensagem, OUTPUT TABLE tt-erros). OUTPUT CLOSE. IF RETURN-VALUE = "NOK" THEN DO: FOR EACH tt-erros: DISPLAY tt-erros WITH 1 COLUMN WIDTH 300. END. END. DELETE PROCEDURE h-utapi019. |
...
- Campo "exchange" retirado da tt-envio2, pois valor inicial é "no".
- Campo "remetente" é obrigatório e deve ter um valor válido.
- Campo "copia" é opcional.
...
Bloco de código | ||
---|---|---|
| ||
{utp/utapi019.i1} RUN utp/utapi019.p PERSISTENT SET h-utapi019. CREATE tt-envio2. ASSIGN tt-envio2.versao-integracao = 1 tt-envio2.servidor = "172.16.1.80" tt-envio2.porta = 25 tt-envio2.destino = "[email protected],[email protected]" tt-envio2.remetente = "[email protected]" tt-envio2.assunto = "subject" tt-envio2.arq-anexo = "c:/tmp/texto.doc" tt-envio2.formato = "HTML". CREATE tt-mensagem. ASSIGN tt-mensagem.seq-mensagem = 1 tt-mensagem.mensagem = "<h1><center>message body 1</pre>". CREATE tt-mensagem. ASSIGN tt-mensagem.seq-mensagem = 2 tt-mensagem.mensagem = "<h1><center>message body 2</pre>". CREATE tt-paramEmail. ASSIGN tt-paramEmail.caminhoEmail = 3. /*0-Unix,1-Blat,2-Exchange,3-Java,4-MailSend*/ OUTPUT to value(SESSION:TEMP-DIRECTORY + "envemail.txt"). RUN pi-execute3 IN h-utapi019 (INPUT table tt-envio2, INPUT table tt-mensagem, INPUT table tt-paramEmail, OUTPUT table tt-erros). OUTPUT close. IF RETURN-VALUE = "NOK" THEN DO: FOR EACH tt-erros: DISP tt-erros WITH 1 COLUMN WIDTH 300. END. END. DELETE PROCEDURE h-utapi019. |
...