Automated Outlook e-mail and sending plain text

Automated Outlook e-mail and sending plain text

Postby Rick Lipkin » Tue Oct 19, 2021 6:28 pm

To All

I have automated a WorkGroup application that generates an Outlook 365 ( client ) e-mail ... the code is simple enough and it works quite well .. however I am having problems with some users that can not see the Body ( cBody ) of the message .. which I code as plain text ...

Here is the code:

Code: Select all  Expand view  RUN

         cBody    := "Dear Employee: "+alltrim( cEMployee )+";"+chr(10)
         cBody    += "From "+cMan1+" "+chr(10)
         cBody    += "  "+chr(10)
         cBody    += "  "+chr(10)
         cBody    += "A Travel /  Train request has been reviewed and Approved by "+alltrim(cMan1)+"."+chr(10)
         cBody    += "The Final Disposition : "+cCloseType+" Dated "+dtoc(dFinalDt)+"."+chr(10)
         cBody    += "  "+chr(10)
         cBody    += "Please see the Link instructions Provided below. ** "+chr(10)
         cBody    += " "+chr(10)
         cBody    += " "+chr(10)
         cBody    += "Summary of Request:"+chr(10)
         cBody    += "  "+chr(10)
         cBody    += "   *  Employee Name: "+alltrim( cEmployee )+chr(10)
         cBody    += "   *  Vendor Sponsor: "+alltrim( cSponsor )+chr(10)
         cBody    += "   *  Conference/Event: "+alltrim( cEvent )+chr(10)
         cBody    += "   *  Location: "+alltrim( cLocation )+chr(10)
         cBody    += "   *  Start Date:  "+dtoc( dLeave )+chr(10)
         cBody    += "   *  End Date:    "+dtoc( dReturn )+chr(10)
         cBody    += "   *  Estimated Cost:  $"+Transform(nTotalExp,"999,999.99" )+chr(10)

         If cExam = "Y" .and. ( cQuality = "N" .and. cMgmt = "N" .and. cTech = "N" .and. cDev = "N" .and. cConf = "N" )
            cBody    += "   *  Is this Request for Examination Travel ONLY? : Yes"+chr(10)
         Else
            cBody    += "   *  Is this Request for Examination Travel ONLY? : No"+chr(10)
         Endif

         cBody    += "   *  Is This Associated with a Previously approved Designation? : "+cPrevAppr+chr(10)
         cBody    += "  "+chr(10)
         cBody    += "  "+chr(10)
         cBody    += alltrim(cAppUrl)+" /"+alltrim( cPersno )+chr(10)
         cBody    += "  "+chr(10)
         cBody    += "**   To run .. hold down the Windows key + R ...  "+chr(10)
         cBody    += "Cut and Paste the entire link above into the open RUN line and hit"+chr(10)
         cBody    += "OK to start the Program"+chr(10)
         cBody    += "  "+chr(10)
         cBody    += "  "+chr(10)
         cBody    += "  "+chr(10)
         cBody    += "  "+chr(10)
         cBody    += "  "+chr(10)
         cBody    += "Note .. This is an automated e-mail sent from the Leave / Travel Program"+chr(10)
         cBody    += "  "+chr(10)

 


Not rocket science so far ....

Here is my Outlook "silent" e-mail generation ....

Code: Select all  Expand view  RUN

Try
   oOutLook  := TOleAuto():New("Outlook.Application")
Catch
    Saying := "For some Odd reason The Outlook e-mail CLient failed to Initialize"
    Msginfo( Saying )
    Return(.f.)
End Try

oMailItem := oOutLook:Invoke("CreateItem", 0)

oMailitem:to := cTo
oMailitem:CC := cCC
oMailItem:Subject := cSubject
oMailItem:Body := cBody               // just plain text

Try
   oMailItem:display(.F.)
Catch
End Try

Try
   oMailItem:Invoke("Send")
Catch
End Try

 


The e-mail is generated and sent to the recipient .. however, in a couple of cases .. cBody is not being resolved in the e-mail .. just a big white space .. By default all the OUtlook settings are set to allow HTML .... even the ones that DO recieve the message where cBody is just plain text ...

I am just curious if chr(10) at the end of the text may be causing any problems .. however, only a select few recipients have any problem at all seeing the body of the message ... I am just curious if changing cBody to HTML may be a ( positive ) common denominator ...

I would be grateful if any HTML Gurus could look at cBody and re-code it for HTML ??? however, I don't know if HTML vs plain text will resolve anything .. I am OPEN to any comments and suggestions ...

Thanks
Rick Lipkin
User avatar
Rick Lipkin
 
Posts: 2665
Joined: Fri Oct 07, 2005 1:50 pm
Location: Columbia, South Carolina USA

Re: Automated Outlook e-mail and sending plain text

Postby Antonio Linares » Tue Oct 19, 2021 6:56 pm

Dear Rick,

oMailItem:HtmlBody = cHTML

Use "<br>" instead of Chr( 10 )

and remember to use the typical HTML structure:

<html>
<head>
</head>
<body>
Your text goes here
</body>
</html>

You can use tables, colors, etc.
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 42103
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Re: Automated Outlook e-mail and sending plain text

Postby Rick Lipkin » Tue Oct 19, 2021 7:19 pm

Antonio

Thank you .. would you mind giving me a quick example of the plain text conversion ??

Rick Lipkin
User avatar
Rick Lipkin
 
Posts: 2665
Joined: Fri Oct 07, 2005 1:50 pm
Location: Columbia, South Carolina USA

Re: Automated Outlook e-mail and sending plain text

Postby Antonio Linares » Wed Oct 20, 2021 10:11 am

Rick,

not sure if this is what you mean
Code: Select all  Expand view  RUN
local cHTML

TEXT INTO cHTML
   <html>
   <head>
   </head>
   <body>
   Your text goes here
   </body>
   </html>
ENDTEXT

oMailItem:HtmlBody = cHTML
 
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 42103
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain


Return to FiveWin for Harbour/xHarbour

Who is online

Users browsing this forum: Google [Bot] and 100 guests