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, Abril 14, 2009.

  1. erickles

    erickles Membro Participativo

    Olá pessoal,

    Por acaso alguém possue um exemplo de envio de e-mail utilizando progress ?
  2. sl4v3r

    sl4v3r Membro Participativo

    Ola,

    Segue um exemplo de envio de e-mail pelo outlook.

    Código:
    DEFINE VARIABLE objOutlook AS COM-HANDLE NO-UNDO.
    DEFINE VARIABLE objOutlookMsg AS COM-HANDLE NO-UNDO.
    DEFINE VARIABLE objOutlookAttach AS COM-HANDLE NO-UNDO.
    DEFINE VARIABLE objOutlookRecip AS COM-HANDLE NO-UNDO.
    
    CREATE "Outlook.Application" objOutlook.
    
    objoutlookMsg = objOutlook:CreateItem(0).
    objOutlookRecip =
    
    objOutlookMsg:Recipients:Add("sl4v3r@gmail.com").
    objOutlookRecip:Type = 1.
    
    objOutlookMsg:Subject = "Hi".
    objOutlookMsg:Body = "Hi sl4v3r...".
    
    /* objOutlookMsg:Attachments:Add("file.txt"). */
    
    objOutlookRecip:Resolve.
    objOutlookMsg:Send.
    
    /*objoutlook:Quit(). */
    
    RELEASE OBJECT objOutlook.
    RELEASE OBJECT objOutlookMsg.
    RELEASE OBJECT objOutlookRecip.
    Qualquer coisa da uma olhada nesse link
    http://www.oehive.org/search/node/e-mail
  3. arnaldoclima

    arnaldoclima Membro Participativo

    Amigos,

    Executei esta rotina e nao acontece nada , tem que alterar algum parametro ?

    Arnaldo Cavalcante
  4. sl4v3r

    sl4v3r Membro Participativo

    Voce estava com o outlook aberto?
    Enviou para um e-mail válido?
  5. arnaldoclima

    arnaldoclima Membro Participativo

    Oi, bom dia,

    Sim , o Outlook esta aberto e o e-mail é valido.

    Me diz uma coisa na linha objOutlookRecip = (esta correto desta forma ?)

    Arnaldo Cavalcante

    DEFINE VARIABLE objOutlook AS COM-HANDLE NO-UNDO.
    DEFINE VARIABLE objOutlookMsg AS COM-HANDLE NO-UNDO.
    DEFINE VARIABLE objOutlookAttach AS COM-HANDLE NO-UNDO.
    DEFINE VARIABLE objOutlookRecip AS COM-HANDLE NO-UNDO.

    CREATE "Outlook.Application" objOutlook.

    objoutlookMsg = objOutlook:CreateItem(0).
    objOutlookRecip = /* Esta linha esta correta ? */

    objOutlookMsg:Recipients:Add("arnaldoclima@hotmail.com").
    objOutlookRecip:Type = 1.

    objOutlookMsg:Subject = "Hi".
    objOutlookMsg:Body = "Hi sl4v3r...".
    /*
    objOutlookMsg:Attachments:Add("c:\pedido.txt").
    */
    objOutlookRecip:Resolve.
    objOutlookMsg:Send.
    /*
    objoutlook:Quit().
    */
    RELEASE OBJECT objOutlook.
    RELEASE OBJECT objOutlookMsg.
    RELEASE OBJECT objOutlookRecip.
  6. eduardo.leite

    eduardo.leite Equipe de Suporte Moderador Equipe de Suporte

    Caro colega,

    Testa o código abaixo:

    Código:
    run pi-envia-email (input "leite1969@yahoo.com.br",
                        input "",
                        input "Assunto",
                        input "Mensagem",
                        input "c:\temp\es2001.gre").
    
    procedure pi-envia-email:
    
        /** Send Outlook Mail **/
        define input parameter mailto       as character format "x(30)".
        define input parameter mailcc       as character format "x(30)".
        define input parameter subject      as character format "x(50)".
        define input parameter body         as character format "x(255)".
        define input parameter attachments  as character format "x(255)".
        
        define variable choutlook           as com-handle no-undo.
        define variable chmail              as com-handle no-undo.
    
        /***** Se o Excel for 2007 informe 12, 2003 informe 11 e anterior informe 10 *****/
        create "outlook.application.12" choutlook no-error.
    
        assign chmail = choutlook:createitem(0).
        
        /** assign data **/
        assign chmail:subject   = subject.
        assign chmail:body      = body.
        assign chmail:to        = mailto.
        assign chmail:cc        = mailcc.
        
        file-info:file-name = attachments.
    
        if file-info:full-pathname <> ? then do:
    
            /** example for one attachment: **/
            chmail:attachments:add(attachments) no-error.
            chmail:attachments(1):displayname = attachments.
    
        end.
        else
            message "O Arquivo do anexo não foi encontrado no diretório informado" view-as alert-box.
        
        /** view mail **/
        chmail:display(0). /*** 0 = Envia diretamente e 1 = Dá uma Pausa e após fechar a tela é enviado ***/
        chmail:send().
        
        release object chmail.
        release object choutlook.
    
    end procedure.
    
    Lembramos que para este tipo de envio, o Outlook deve estar configurado com uma conta (perfil) que envie e-mail.

Compartilhe esta Página