2 ; 0 1 7 ; P L ; 2 4 -> zamiast 2;017;PL;24.
Natomiast przy otwarciu w Excelu, wszystko jest w jednej kolumnie.
Czy ktoś umie doradzić?
Kod: Zaznacz cały
*-- Send e-mail data declaration
DATA: GS_MAILDATA type SODOCCHGI1.
DATA: GT_MAILPACK type table of SOPCKLSTI1.
DATA: GS_MAILPACK type SOPCKLSTI1.
DATA: GT_MAILHEAD type table of SOLISTI1.
DATA: Gs_MAILHEAD type SOLISTI1.
DATA: GT_MAILBIN type table of SOLISTI1.
DATA: Gs_MAILBIN type SOLISTI1.
DATA: GT_MAILTXT type table of SOLISTI1.
DATA: Gs_MAILTXT type SOLISTI1.
DATA: GT_MAILREC type table of SOMLREC90.
DATA: Gs_MAILREC type SOMLREC90.
DATA: GT_SOLISTI1 type table of SOLISTI1.
DATA: Gs_SOLISTI1 type SOLISTI1.
DATA: V_LINES TYPE I.
* Creation of the document to be sent File Name
CLEAR GS_MAILDATA.
GS_MAILDATA-OBJ_NAME = 'E-mail'.
GS_MAILDATA-OBJ_DESCR = 'Send e-mail with CSV attachment'.
* Mail Body
CLEAR Gs_MAILTXT.
gs_MAILTXT-LINE = 'This is auto generated message. Please do not reply to this e-mail.'.
APPEND Gs_MAILTXT to Gt_MAILTXT.
CLEAR Gs_MAILTXT.
gs_MAILTXT-LINE = ' Dear AMS Team, Please be informed that we have just submitted monthly Z4 Report for our entity'.
APPEND Gs_MAILTXT to Gt_MAILTXT.
CLEAR Gs_MAILTXT.
gs_MAILTXT-LINE = 'Best regards, Global Bike GmbH'.
APPEND Gs_MAILTXT to Gt_MAILTXT.
* Prepare Packing List
CLEAR V_LINES.
DESCRIBE TABLE GT_MAILTXT LINES V_LINES.
READ TABLE GT_MAILTXT into gs_mailtxt INDEX V_LINES.
GS_MAILDATA-DOC_SIZE = ( V_LINES - 1 ) * 255 + STRLEN( GS_MAILTXT ).
* Creation of the entry for the compressed document
CLEAR GS_MAILPACK-TRANSF_BIN.
GS_MAILPACK-HEAD_START = 1.
GS_MAILPACK-HEAD_NUM = 0.
GS_MAILPACK-BODY_START = 1.
GS_MAILPACK-BODY_NUM = V_LINES.
GS_MAILPACK-DOC_TYPE = 'RAW'.
APPEND Gs_MAILPACK to GT_MAILPACK.
Gs_MAILHEAD = 'Z4Report.CSV'.
APPEND GS_MAILHEAD TO GT_MAILHEAD.
* Populate the TXT file
LOOP AT it_tab2 INTO is_tab2.
DATA: LV_TMP TYPE STRING.
CLEAR LV_TMP.
LV_TMP = is_tab2-DMBTR.
CONCATENATE
is_tab2-ZZPMTDIR
is_tab2-ZZSCB_CODE
is_tab2-ZZSCB_TEXT
is_tab2-LANDL
LV_TMP
INTO GS_MAILBIN SEPARATED BY ';'.
APPEND GS_MAILBIN TO GT_MAILBIN.
ENDLOOP.
CLEAR V_LINES.
DESCRIBE TABLE GT_MAILBIN LINES V_LINES.
GS_MAILPACK-TRANSF_BIN = 'X'.
GS_MAILPACK-HEAD_START = 1.
GS_MAILPACK-HEAD_NUM = 1.
GS_MAILPACK-BODY_START = 1.
GS_MAILPACK-BODY_NUM = V_LINES.
GS_MAILPACK-DOC_TYPE = 'CSV'.
GS_MAILPACK-OBJ_NAME = 'Z4Report'.
GS_MAILPACK-OBJ_DESCR = 'Z4Report'.
GS_MAILPACK-DOC_SIZE = V_LINES * 255.
APPEND GS_MAILPACK to GT_MAILPACK.
* Populate recipient
GS_MAILREC-RECEIVER = '[email protected]'.
GS_MAILREC-REC_TYPE = 'U'.
APPEND GS_MAILREC TO GT_MAILREC.
* Sending the document
CALL FUNCTION 'SO_NEW_DOCUMENT_ATT_SEND_API1'
EXPORTING
DOCUMENT_DATA = GS_MAILDATA
PUT_IN_OUTBOX = 'X'
COMMIT_WORK = 'X'
TABLES
PACKING_LIST = GT_MAILPACK
OBJECT_HEADER = GT_MAILHEAD
CONTENTS_BIN = GT_MAILBIN
CONTENTS_TXT = GT_MAILTXT
RECEIVERS = GT_MAILREC
EXCEPTIONS
TOO_MANY_RECEIVERS = 1
DOCUMENT_NOT_SENT = 2
OPERATION_NO_AUTHORIZATION = 4
OTHERS = 99.