7.26.2008

SAP Mail Example ABAP Code

REPORT ZTSAPMAIL.

DATA: X_OBJECT_TYPE LIKE SOOD-OBJTP.

DATA: BEGIN OF X_OBJECT_HD_CHANGE.

INCLUDE STRUCTURE SOOD1.

DATA: END OF X_OBJECT_HD_CHANGE.

DATA: BEGIN OF X_OBJCONT OCCURS 10.

INCLUDE STRUCTURE SOLI.

DATA: END OF X_OBJCONT.

DATA: BEGIN OF X_OBJHEAD OCCURS 0.

INCLUDE STRUCTURE SOLI.

DATA: END OF X_OBJHEAD.

DATA: BEGIN OF RAW_HEAD.

INCLUDE STRUCTURE SORH.

DATA: END OF RAW_HEAD.

DATA: BEGIN OF X_RECEIVERS OCCURS 0.

INCLUDE STRUCTURE SOOS1.

DATA: END OF X_RECEIVERS.

PARAMETERS: RECEIVER LIKE X_RECEIVERS-RECNAM. ” Name

*BUILD MESSAGE HEADER

MOVE ‘Sort field goes here’ TO X_OBJECT_HD_CHANGE-OBJSRT. ” Sort field

MOVE ‘Name of the object goes here’ TO X_OBJECT_HD_CHANGE-OBJNAM. ” Name

MOVE ‘Document title goes here’ TO X_OBJECT_HD_CHANGE-OBJDES. ” Title

MOVE ‘F’ TO X_OBJECT_HD_CHANGE-OBJSNS. ” Functional OBJECT

MOVE ‘E’ TO X_OBJECT_HD_CHANGE-OBJLA. ” Language

* Object type of the new document

MOVE ‘RAW’ TO X_OBJECT_TYPE.

CLEAR X_OBJCONT.

MOVE ‘Contents of mail’ TO X_OBJCONT-LINE.

APPEND X_OBJCONT.

CLEAR X_OBJCONT-LINE. APPEND X_OBJCONT.

MOVE ‘More contents’ TO X_OBJCONT-LINE.

APPEND X_OBJCONT.

MOVE ‘Still more contents’

to x_objcont-line.

APPEND X_OBJCONT.

MOVE ‘ ‘ TO X_OBJCONT-LINE.

APPEND X_OBJCONT.

* Specific header (Dependent on the object type, here RAW)

REFRESH X_OBJHEAD.

DESCRIBE TABLE X_OBJCONT LINES RAW_HEAD-RAWSIZ.

MOVE RAW_HEAD TO X_OBJHEAD.

APPEND X_OBJHEAD.

*RECEIVERS table

CLEAR X_RECEIVERS.

REFRESH X_RECEIVERS.

MOVE RECEIVER TO X_RECEIVERS-RECNAM. ” Name

MOVE ‘B’ TO X_RECEIVERS-RECESC. ” Receiver type

MOVE ‘X’ TO X_RECEIVERS-SNDCP. ” Send as a copy

MOVE ‘X’ TO X_RECEIVERS-SNDEX. ” EXPRESS DOCUMENT

APPEND X_RECEIVERS.

CALL FUNCTION ‘SO_OBJECT_SEND’

EXPORTING

* folder_id = ‘OUTBOX’

* forwarder = x_forwarder

* object_fl_change = x_object_fl_change

OBJECT_HD_CHANGE = X_OBJECT_HD_CHANGE

* object_id = x_object_id

OBJECT_TYPE = X_OBJECT_TYPE

OUTBOX_FLAG = ‘X’

OWNER = SY-UNAME

* store_flag = x_store_flag

* importing

* object_id_new = x_object_id_new

* sent_to_all = x_sent_to_all “May need to use

TABLES

OBJCONT = X_OBJCONT

OBJHEAD = X_OBJHEAD

* objpara = x_objpara

* objparb = x_objparb

RECEIVERS = X_RECEIVERS.


Digg Google Bookmarks reddit Mixx StumbleUpon Technorati Yahoo! Buzz DesignFloat Delicious BlinkList Furl