send mail with attached objects
Daniel Fernández
wfdfl1975 at yahoo.es
Thu Feb 28 05:20:05 EST 2002
Jocelyn,
Ok, thanks very much for your help.
Best regards,
Daniel
--- "Dart, Jocelyn" <jocelyn.dart at sap.com> escribis:
> Your code looks reasonable. You might want to delete
> in a separate program in case the initial send
> fails.
> Jocelyn
>
> -----Original Message-----
>> From: Daniel Fernandez [mailto:wfdfl1975 at yahoo.es]
> Sent: Thursday, 28 February 2002 1:59 AM
> To: SAP-WUG at MITVMA.MIT.EDU
> Subject: Re: send mail with attached objects
>
>
> Hi Jocelyn,
>
> Thanks for your answer.
>
> I have folowed your instructions and It4s work fine.
> I suposse that after send the message to my inbox
> folder, I must to delete it in private folder.
>
> is there a better way to send this type of message
> (with a attached object) ????
>
> The final code is this:
>
> REPORT Z_MAIL .
>
>
> data: S_MESSAGE type SODOCCHGI1,
> S_LIST_OBJ type SOLISTI1 occurs 0,
> S_USER_DATS type SOUDATAI1,
> S_USER type SOUDNAMEI1,
> S_DOCUMENT type SOFOLENTI1,
> S_TASK_DESCR TYPE TLINE OCCURS 0,
> S_TASK_DESCR_C TYPE SOLISTI1 OCCURS 0,
> S_OBJECT type soxobj,
> S_DESCR_ATTACH type SOATTCHGI1 occurs 0 with
> header line,
> S_RECEIVERS TYPE SOMLRECI1 OCCURS 0 WITH
> HEADER
> LINE.
>
>
> * SAP folders of user that receive the mail.
>
>
> S_USER-SAPNAME = 'DFERNANDEZ'. "(User)
>
> CALL FUNCTION 'SO_USER_READ_API1'
> EXPORTING
> USER = S_USER
> IMPORTING
> USER_DATA = S_USER_DATS
> EXCEPTIONS
> USER_NOT_EXIST = 1
> PARAMETER_ERROR = 2
> X_ERROR = 3
> OTHERS = 4.
>
>
> * Obtain Task description
>
> CALL FUNCTION 'SWU_GET_TASK_TEXTLINES'
> EXPORTING
> TASK = 'TS99900015' "(Your
> task)
> * WI_ID =
> * WIHEADER =
> USAGE = 'W'
> LINEWIDTH = 75
> LANGUAGE = SY-LANGU
> TABLES
> ASCII_TEXT_LINES = S_TASK_DESCR
> * CONTAINER =
> * HTML_TEXT_LINES =
> EXCEPTIONS
> WRONG_USAGE = 1
> TEXT_NOT_FOUND = 2
> TEXT_SYSTEM_ERROR = 3
> OTHERS = 4.
>
> * obtain the subject message
>
> S_MESSAGE-OBJ_DESCR = 'message Subject'.
>
> * We will create the 'text' message with the task
> description and the
> * subject IN PRIVATE FOLDER
>
> S_TASK_DESCR_C[] = S_TASK_DESCR[].
>
> CALL FUNCTION 'SO_DOCUMENT_INSERT_API1'
> EXPORTING
> FOLDER_ID =
> S_USER_DATS-INBOXFOL
> DOCUMENT_DATA = S_MESSAGE
> DOCUMENT_TYPE = 'RAW'
> IMPORTING
> DOCUMENT_INFO = S_DOCUMENT
> TABLES
> OBJECT_HEADER = S_TASK_DESCR_C
> OBJECT_CONTENT = S_TASK_DESCR_C
> EXCEPTIONS
> FOLDER_NOT_EXIST = 1
> DOCUMENT_TYPE_NOT_EXIST = 2
> OPERATION_NO_AUTHORIZATION = 3
> PARAMETER_ERROR = 4
> X_ERROR = 5
> ENQUEUE_ERROR = 6
> OTHERS = 7.
>
>
> * object dats
>
> S_OBJECT-LOGSYS = 'SAPI'. "(your logic system)
> S_OBJECT-OBJTYPE = 'BKPF'.
> S_OBJECT-OBJKEY = 'ES0100190000012002'. "(Object
> key)
> S_OBJECT-DESCRIBE = 'Description'.
> S_OBJECT-METHOD = 'DISPLAY'.
>
> append S_OBJECT to S_LIST_OBJ.
>
>
> * We write de object description
>
> S_DESCR_ATTACH-OBJ_DESCR = 'Factura'.
>
> * Add the object to the mail.
>
> CALL FUNCTION 'SO_ATTACHMENT_INSERT_API1'
> EXPORTING
> DOCUMENT_ID =
> S_DOCUMENT-DOC_ID
> ATTACHMENT_DATA =
> S_DESCR_ATTACH
> ATTACHMENT_TYPE = 'OBJ'
> * IMPORTING
> * ATTACHMENT_INFO =
> TABLES
> ATTACHMENT_HEADER = S_LIST_OBJ
> ATTACHMENT_CONTENT = S_LIST_OBJ
> * CONTENTS_HEX =
> EXCEPTIONS
> DOCUMENT_NOT_EXIST = 1
> ATTACHMENT_TYPE_NOT_EXIST = 2
> OPERATION_NO_AUTHORIZATION = 3
> PARAMETER_ERROR = 4
> X_ERROR = 5
> ENQUEUE_ERROR = 6
> OTHERS = 7.
>
>
> * Send the mail to inbox.
>
> S_RECEIVERS-RECEIVER = 'DFERNANDEZ'.
> S_RECEIVERS-REC_TYPE = 'B'.
> S_RECEIVERS-EXPRESS = 'X'.
> APPEND S_RECEIVERS.
>
> CALL FUNCTION 'SO_OLD_DOCUMENT_SEND_API1'
> EXPORTING
> DOCUMENT_ID =
> S_DOCUMENT-DOC_ID
> * PUT_IN_OUTBOX = 'X'
> * IMPORTING
> * SENT_TO_ALL =
> TABLES
> RECEIVERS = S_RECEIVERS
> EXCEPTIONS
> TOO_MANY_RECEIVER = 1
> DOCUMENT_NOT_SENT = 2
> DOCUMENT_NOT_EXIST = 3
> OPERATION_NO_AUTHORIZATION = 4
> PARAMETER_ERROR = 5
> X_ERROR = 6
> ENQUEUE_ERROR = 7
> OTHERS = 8.
>
> IF SY-SUBRC <> 0.
> * MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
> * WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
> ENDIF.
>
> * delete the document of the private folder.
>
> CALL FUNCTION 'SO_DOCUMENT_DELETE_API1'
> EXPORTING
> DOCUMENT_ID =
> S_DOCUMENT-DOC_ID
> * UNREAD_DELETE =
> * PUT_IN_TRASH = 'X'
> EXCEPTIONS
> DOCUMENT_NOT_EXIST = 1
> OPERATION_NO_AUTHORIZATION = 2
> PARAMETER_ERROR = 3
> X_ERROR = 4
> ENQUEUE_ERROR = 5
> OTHERS = 6.
>
> IF SY-SUBRC <> 0.
>
=== message truncated ===
_______________________________________________________________
Do You Yahoo!?
Yahoo! Messenger
Comunicacisn instantanea gratis con tu gente.
http://messenger.yahoo.es
More information about the SAP-WUG
mailing list