recipients from a MAPITABLE

S

Stèphan Eizinga

Hello,

I want to collect the recipients from a mail message.

We use this SQL query in MAPITable.ExecSQL "SELECT
Recipients,Body,SenderEmailType,SenderEmailAddress FROM Folder"

If this QUERY is correct, how can I get the items from Recipients?

I use the latest Outlook Redemption v. 4.4 and PowerBuilder 11.1

- BEGIN POWERBUILDER CODE -
loo_ADOrecordset = io_folder.Items.MAPITable.ExecSQL('SELECT
Recipients,Body,SenderEmailType,SenderEmailAddress FROM Folder')

DO WHILE (loo_ADOrecordset.EOF = FALSE)
// How can I read this out?
st_recipients = loo_ADOrecordset.Fields.Item("Recipients").Value
// Working correct!
st_sendermail =
loo_ADOrecordset.Fields.Item("SenderEmailAddress").Value

loo_ADOrecordset.MoveNext()
LOOP
- END POWERBUILDER CODE -

King regards,
Stèphan Eizinga
 
K

Ken Slovak - [MVP - Outlook]

Recipients is a collection, not a property. You need to get the actual
message and retrieve and iterate the Recipients collection for what you
want. Get the EntryID of the item in question and use that to get the email
object and then retrieve and iterate the Recipients collection.

The same would apply to any other collection such as Attachments.

If you just want whatever is in the To, Cc and Bcc fields you can use those
string properties but those may not be what you want. They could return
display names or email addresses or a mix of both for any one recipient and
for a received email the Bcc field will always be blank of course.




Hello,

I want to collect the recipients from a mail message.

We use this SQL query in MAPITable.ExecSQL "SELECT
Recipients,Body,SenderEmailType,SenderEmailAddress FROM Folder"

If this QUERY is correct, how can I get the items from Recipients?

I use the latest Outlook Redemption v. 4.4 and PowerBuilder 11.1

- BEGIN POWERBUILDER CODE -
loo_ADOrecordset = io_folder.Items.MAPITable.ExecSQL('SELECT
Recipients,Body,SenderEmailType,SenderEmailAddress FROM Folder')

DO WHILE (loo_ADOrecordset.EOF = FALSE)
// How can I read this out?
st_recipients = loo_ADOrecordset.Fields.Item("Recipients").Value
// Working correct!
st_sendermail =
loo_ADOrecordset.Fields.Item("SenderEmailAddress").Value

loo_ADOrecordset.MoveNext()
LOOP
- END POWERBUILDER CODE -

King regards,
Stèphan Eizinga
 
D

Dmitry Streblechenko

In addition to what Ken said, also keep in mind that even though recipient
and attachment data cannot be directly retrieved from a table, you can still
create restrictions based on recipients and attachments (the WHERE clause).

Dmitry Streblechenko (MVP)
http://www.dimastr.com/
OutlookSpy - Outlook, CDO
and MAPI Developer Tool
 
Top