Cambios a RPreview.Prg

Post Reply
User avatar
Armando
Posts: 2479
Joined: Fri Oct 07, 2005 8:20 pm
Location: Toluca, México
Contact:

Cambios a RPreview.Prg

Post by Armando »

Hola Amigos del foro:

Cómo cada año quiero expresarles mis mejores deseos para
estas fiestas decembrinas.

"Que los atropelle la dicha y que los destroce la felicidad!"

Después de esto paso a hacerles una pregunta, Tengo FW1905 y en el PREVIEW
hay un botón para enviar el reporte por e-mail, RPreview abre MS-Outlook y
arma el correo casi en su totalidad.

Como puedo hacer para agregar, a lo que arma RPreview, la dirección de correo
a la que se va a enviar, más direcciones de correo (CC), son a elección del usuario,
el titulo y texto del mensaje?

Saludos
SOI, s.a. de c.v.
estbucarm@gmail.com
http://www.soisa.mex.tl/
http://sqlcmd.blogspot.com/
Tel. (722) 174 44 45
Carpe diem quam minimum credula postero
MOISES
Posts: 824
Joined: Wed Aug 22, 2007 10:09 am

Re: Cambios a RPreview.Prg

Post by MOISES »

Hola:

Tendrás que modificar el método sendmail() y añadir lo que necesites a:

Code: Select all

      DEFINE MAIL oMail ;
         SUBJECT cName ;
         TEXT "" ;
         FILES cFile, cFileNoPath( cFile ) ; //FILES cFile, cFile ; // by dfl 1712
         FROM USER

      ACTIVATE MAIL oMail
Saludos / Regards,

FWH 20.04, Harbour 3.2.0 dev (r1909261630) y BCC 7.40
Garbi
Posts: 250
Joined: Wed Nov 02, 2005 3:28 pm

Re: Cambios a RPreview.Prg

Post by Garbi »

Como te indican tendrás que modificar el método sendmail(), te pongo las modificaciones que yo he hecho por si te pueden servir de ayudar, yo le paso, por ejemplo, el email del cliente, proveedor.

Code: Select all

METHOD SendEmail() CLASS TPreview

   local oMail, cName, cFile, olMailItem, oOutLook, oAttach

   cName := If( ::oReport != nil, ::oReport:cName, ::oDevice:cDocument )
   cFile := cFilePath( ::oDevice:aMeta[ 1 ] ) + StrTran( cName, '.', '' ) + ".pdf"

   CursorWait()
   cFile := ::SaveAs( .t., cFile, .f. )
   CursorArrow()

   if ! File( cFile )
      MsgInfo( FWString( "PDF not saved to send Email" ), FWString( "Information" ) )
   elseif ::bEmail != nil
      Eval( ::bEmail, Self, cName, cFile )
   else
    TRY
        oOutLook   := GetActiveObject("Outlook.Application")
        EmSend     := .T.
      CATCH
       TRY
          oOutLook   := GetActiveObject("Outlook.Application")
          EmSend     := .F.
      CATCH
         EmSend   := .F.
      END
    END

    IF !EmSend
       ShellExecute(,"Open","Outlook",,,3)
       EmSend = .T.
    ENDIF

    IF EmSend
      oOutlook = CREATEOBJECT( "Outlook.Application" )
      oNameSpace := oOutlook:GetNameSpace("MAPI")
      oMail = oOutlook:CreateItem( olMailItem )
      oMail:to := vmailpre
      oMail:Subject = cName
      oMail:htmlBody =" "
      oMail:BodyFormat := 2          // FORMAT HTML
      oMail:Attachments:Add(cFile)
      oMail:Display(.T.)
*      oMail:Send()
    endif

   endif

   ::oMeta1:SetFocus()

return nil
User avatar
Armando
Posts: 2479
Joined: Fri Oct 07, 2005 8:20 pm
Location: Toluca, México
Contact:

Re: Cambios a RPreview.Prg

Post by Armando »

Moises y Garbi:

Muchas gracias, lo voy a intentar.

Feliz Navidad
SOI, s.a. de c.v.
estbucarm@gmail.com
http://www.soisa.mex.tl/
http://sqlcmd.blogspot.com/
Tel. (722) 174 44 45
Carpe diem quam minimum credula postero
User avatar
nageswaragunupudi
Posts: 8017
Joined: Sun Nov 19, 2006 5:22 am
Location: India
Contact:

Re: Cambios a RPreview.Prg

Post by nageswaragunupudi »

There is no need to modify the RPreview.prg.
Instead, make this assignment initially in the program.

Code: Select all

TPreview():bEmail := { |oPreview, cReportName, cPdfFile| MySendEmail( oPreview, cReportName, cPdfFile ) }
 
// ...
// ...

function MySendEmail( Self, cReportName, cPdfFile )

<your method body>

return nil
 
Regards

G. N. Rao.
Hyderabad, India
User avatar
Armando
Posts: 2479
Joined: Fri Oct 07, 2005 8:20 pm
Location: Toluca, México
Contact:

Re: Cambios a RPreview.Prg

Post by Armando »

Mr. Rao:

Thanks a lot, I will.

Best regards
SOI, s.a. de c.v.
estbucarm@gmail.com
http://www.soisa.mex.tl/
http://sqlcmd.blogspot.com/
Tel. (722) 174 44 45
Carpe diem quam minimum credula postero
Post Reply