1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.

  2. Anuncie Aqui ! Entre em contato fdantas@4each.com.br

Enviar e-mail

Discussão em 'Progress 4GL' iniciado por erickles, Agosto 13, 2009.

  1. erickles

    erickles Membro Participativo

    Cara, fiz o mesmo que você e ainda não funcionou...alterou mais alguma coisa?, estou intrigado..., o e-mail foi para os dois usuários ao mesmo tempo mesmo?
  2. Cobra.cne

    Cobra.cne Equipe de Suporte Moderador

    Somente tirei aquele bloco que separava os e-mails, deixando somente o RUN SENDMAIL. e tirei o espaço entre os e-mails da variavel vTo.

    Eu comentei aquela verificação da param-global, pois o ambiente que testei não foi o da Datasul, e mudei o vSMTPSERVER para o meu, pois meu firewall não deixa sair para o seu.

    Tenta verificar com o seu suporte de Redes, para olhar no servidor SMTP o que esta acontecendo.
  3. erickles

    erickles Membro Participativo

    Bem, estava dando "Invalid Adress"...

    To usando agora outro programinha, que funciona! Porém, quando mando o meu programa rodar, não aocntece nada...

    Eis o programa...

    Código:
    {utp/utapi009.i}    /* Temp-table para envio de e-mail */
    {utp/ut-glob.i}
    
    /*------------ Envio e-mail -------------*/
    
    DEFINE input parameter c-remetente        AS CHARACTER  no-undo.
    DEFINE input parameter c-destino          AS CHARACTER  no-undo.
    DEFINE input parameter c-arq-anexo        AS CHARACTER  no-undo.
    DEFINE input parameter c-assunto-e-mail   AS CHARACTER  no-undo.
    DEFINE input parameter c-mensagem-e-mail  AS CHARACTER  NO-UNDO FORMAT 'x(38)'.
    
    /* Codigo de pagina para impressao em iso8859-1 quando for envio e-mail */
    def var codepage-orig as char format "x(10)" no-undo.
    def var codepage-dest as char format "x(10)" no-undo.
    
    DEF VAR l-envia AS LOGICAL INIT YES NO-UNDO.
    
    /* definir na tela ou passsar um parametro para opcao de 
       envia ou nao e-mail para o cliente ou representeante  */
    
    /*{cdp/cdapi523.i "h-prg523"}*/
    
    DEFINE VARIABLE h-prg523 as handle.
    FUNCTION empresa    RETURNS integer   in h-prg523.
    FUNCTION serv-mail  RETURNS character in h-prg523.
    FUNCTION porta-mail RETURNS integer   in h-prg523.
    FUNCTION ms-serv    RETURNS logical   in h-prg523.
    FUNCTION modulo-mp  RETURNS logical   in h-prg523.
    FUNCTION modulo-cl  RETURNS logical   in h-prg523.
    FUNCTION modulo-ge  RETURNS logical   in h-prg523.
    FUNCTION sc-format  RETURNS character in h-prg523.
    FUNCTION ct-format  RETURNS character in h-prg523.
    
    find first param-global no-lock no-error.
    
    if avail param-global THEN DO:
             
             for each tt-envio:
                 delete tt-envio.
             end.  
             create tt-envio.
             assign tt-envio.versao-integracao = 001
                    tt-envio.importancia       = 1
                    tt-envio.remetente         = c-remetente
                    tt-envio.destino           = c-destino
                    tt-envio.assunto           = c-assunto-e-mail
                    tt-envio.mensagem          = c-mensagem-e-mail
                    tt-envio.arq-anexo         = c-arq-anexo.
    
             run cdp/cdapi523.p persistent set h-prg523.
             if valid-handle(h-prg523) and return-value = "OK" then do:             
                assign tt-envio.servidor = serv-mail()
                       tt-envio.porta    = porta-mail()
                       tt-envio.exchange = ms-serv().                         
                delete procedure h-prg523.
             end.
    
             run utp/utapi009.p (input table tt-envio,
                                 output table tt-erros).
    
             if return-value = "NOK" then do:
                for each tt-erros:
                    disp tt-erros with 1 column width 300.
                end.
             end.  
    
     END.
    Pra testar, é só mudar os parametros para variaveis e setar valores..., agora pq quando eu chamo por um programa não roda...nao sei...
  4. Cobra.cne

    Cobra.cne Equipe de Suporte Moderador

    Caro Erick,

    Observei que você utilizou o recurso da UTAPI009, porém a Datasul já descontinuou esta API, se você olhar dentro do diretório DOCAPI do EMS2xx, você irá ver esta informação.

    Recomendo neste caso que utilize a UTAPI019, conforme sugestão da própria Datasul, verifique a documentação no diretório DOCAPI.

    Caso não tenha estas documentações, abra uma FO na Datasul (TOTVS) para o módulo BTB solicitando.

    Att.
  5. erickles

    erickles Membro Participativo

    Cara, finalmente deu certo!

    Em relação a este programa, vou verificar com o pessoal aqui o que faremos...

    Valeu pela força!
  6. asbahr

    asbahr Membro Participativo

    Boa Tarde

    Estou precisando utilizar uma aplicação para envio de e-mail. Por favor se voces puderem me auxiliar eu agradeço.
    Achei muito interessante este codigo descrito, até estou utilizando dele para fazer alguns testes.
    O que gostaria de saber é o seguinte existe uma maneira de eu fazer o corpo do email mais elaborado, Pelo que entendi do codigo a variavel vbody é resposanvel pelo corpo do email.
    Por exemplo
    "Bom dia

    Segue dados solicitados.

    Atenciosamente"

    Como poderia fazer este corpo do exemplo ir pelo comando descrito neste forum.

    Obrigado,

Compartilhe esta Página