/ Forums / Advansys Formativ / Creating Solutions with Formativ / Handling multiple attachments / Reply To: Handling multiple attachments
June 25, 2007 at 5:22 pm
#7853
Your sample code has a logical error. See below the section of your code which only add the one attachment to the new message as the value of the objAttach never change.
quote:
‘ Loop through attachments to get the names
for x = 0 to (iAttachCounter -1)
call GroupWise.ItemAttachmentAdd(“X00”, itcAttachClassFile, objAttach, “”)
next
You can use a stringlist to store the attachments from the draft message and finally add to the new message. See below the updated source code.
Sub Main(Client, GWEvent) Dim objAddressBooks Dim objAddessBook Dim objAddressBookEntry Dim objSubject Dim objMessage Dim objMsg Dim objAttach Dim objAttachs Dim iAttachCounter Dim iMsgID dim oAttachmentsList Set objMsg = GroupWise.ComposingItem objSubject = objMsg.Subject objMessage = objMsg.BodyText ' Get the composing message ID through TOKEN iMsgID = GroupWise.ItemMessageIDFromView ' Make sure we have a composing message selected iAttachCounter = GroupWise.ItemAttachmentGetCount(iMsgID) '** Create a strings list and store the available attachments from the draft message ** set oAttachmentsList = utilities.stringlist if (iAttachCounter > 0) then for x = 0 to (iAttachCounter -1) objAttach = GroupWise.ItemAttachmentGetName(iMsgID, x) oAttachmentsList.add(objAttach) next end if ' Get the AddressBooks object Set objAddressBooks = GroupWise.Account.AddressBooks ' Locate the address book called 'Address Book' Set objAddressBook = objAddressBooks.Item("Test Book") ' Display the email address of each entry in the book For Each objAddressBookEntry In objAddressBook.AddressBookEntries if objAddressBookEntry.emailaddress <> "" Then ' Create new mail message Call GroupWise.NewMail ' Enter the recipient Call GroupWise.FocusSet(fcsTo, "") Call GroupWise.TypeText(objAddressBookEntry.emailaddress) ' Enter the subject Call GroupWise.FocusSet(fcsSubject, "") Call GroupWise.TypeText(objSubject) ' Enter the message body, first insert the greeting from contact comment field ' after that enter the text as type in the previous window Call GroupWise.FocusSet(fcsMessage, "") Call GroupWise.TypeText(objMessage) ' Add attachment if any if (iAttachCounter > 0) then ' Loop through attachments list and add to the new message for x = 0 to (oAttachmentsList.count -1) call GroupWise.ItemAttachmentAdd("X00", itcAttachClassFile, oAttachmentsList.strings(x), "") next end if ' Send the message Call GroupWise.ItemSend(False) Utilities.doevents end if next Set objAddressBook = Nothing Set objAddressBooks = Nothing Set objMsg = Nothing set oAttachmentsList = nothing End Sub
Regards,
Advansys Support