2007 Jun 28 10:06 AM
HI
IS THIS CODING IS ENOUGH FOR UPLOAD A TEXT USING
1.BDC_OPEN_GROUP
2.BDC_INSERT
3.BDC_CLOSE_GROUP
&----
*& Report ZBDCCODE
*&
&----
*&
*&
&----
REPORT ZBDCCODE.
TABLES : ZSDHALFYEARLY.
DATA : BEGIN OF STR OCCURS 0,
MATNR1 LIKE MARA-MATNR,
ENAME LIKE MARA-ERNAM,
UNIT LIKE MARA-MEINS,
END OF STR.
DATA ITAB LIKE BDCDATA OCCURS 10 WITH HEADER LINE.
SELECTION-SCREEN BEGIN OF BLOCK BLK1 WITH FRAME TITLE TEXT-001.
PARAMETERS : P_FILE LIKE RLGRAP-FILENAME OBLIGATORY.
SELECTION-SCREEN END OF BLOCK BLK1.
CALL FUNCTION 'WS_UPLOAD'
EXPORTING
CODEPAGE = ' '
FILENAME = 'C:\Documents and Settings\Administrator\Desktop\SS.TXT'
FILETYPE = 'ASC'
HEADLEN = ' ',
LINE_EXIT = ' '
TRUNCLEN = ' '
USER_FORM = ' '
USER_PROG = ' '
DAT_D_FORMAT = ' '
IMPORTING
FILELENGTH =
TABLES
DATA_TAB = STR
CONVERSION_ERROR = 1
FILE_OPEN_ERROR = 2
FILE_READ_ERROR = 3
INVALID_TYPE = 4
NO_BATCH = 5
UNKNOWN_ERROR = 6
INVALID_TABLE_WIDTH = 7
GUI_REFUSE_FILETRANSFER = 8
CUSTOMER_ERROR = 9
NO_AUTHORITY = 10
OTHERS = 11
.
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
INITIALIZATION.
*PERFORM INIT_PARM.
*FORM INIT_PARM.
P_FILE = 'C:\Documents and Settings\Administrator\Desktop\SS.TXT'.
*ENDFORM. " INIT_PARM
CALL FUNCTION 'BDC_OPEN_GROUP'
EXPORTING
CLIENT = SY-MANDT
DEST = FILLER8
GROUP = 'SMM1'
HOLDDATE = FILLER8
KEEP = 'X'
USER = SY-UNAME
RECORD = FILLER1
PROG = SY-CPROG
IMPORTING
QID =
EXCEPTIONS
CLIENT_INVALID = 1
DESTINATION_INVALID = 2
GROUP_INVALID = 3
GROUP_IS_LOCKED = 4
HOLDDATE_INVALID = 5
INTERNAL_ERROR = 6
QUEUE_ERROR = 7
RUNNING = 8
SYSTEM_LOCK_ERROR = 9
USER_INVALID = 10
OTHERS = 11
.
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
*LOOP AT STR.
perform to fill it_bdcdata.
*CALL TRANSACTION 'SE11' USING ITAB MODE 'N' UPDATE 'S'.
**MESSAGES INTO IT_MESSAGES.
**IF SY-SUBRC <> 0.
**FG_FLAG1 = 1.
if error occurs in transaction mode run bdc session for that data
*CLEAR : ITAB,STR.
*REFRESH : ITAB.
*ENDLOOP.
CALL FUNCTION 'BDC_INSERT'
EXPORTING
TCODE = 'SE11'
POST_LOCAL = 'X'
PRINTING = NOPRINT
SIMUBATCH = ' '
CTUPARAMS = ' '
TABLES
DYNPROTAB = ITAB
EXCEPTIONS
INTERNAL_ERROR = 1
NOT_OPEN = 2
QUEUE_ERROR = 3
TCODE_INVALID = 4
PRINTING_INVALID = 5
POSTING_INVALID = 6
OTHERS = 7
.
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
CALL FUNCTION 'BDC_CLOSE_GROUP'
EXCEPTIONS
NOT_OPEN = 1
QUEUE_ERROR = 2
OTHERS = 3
.
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
HI
IS THIS CODING IS ENOUGH FOR UPLOAD A TEXT USING
1.BDC_OPEN_GROUP
2.BDC_INSERT
3.BDC_CLOSE_GROUP
&----
*& Report ZBDCCODE
*&
&----
*&
*&
&----
REPORT ZBDCCODE.
TABLES : ZSDHALFYEARLY.
DATA : BEGIN OF STR OCCURS 0,
MATNR1 LIKE MARA-MATNR,
ENAME LIKE MARA-ERNAM,
UNIT LIKE MARA-MEINS,
END OF STR.
DATA ITAB LIKE BDCDATA OCCURS 10 WITH HEADER LINE.
SELECTION-SCREEN BEGIN OF BLOCK BLK1 WITH FRAME TITLE TEXT-001.
PARAMETERS : P_FILE LIKE RLGRAP-FILENAME OBLIGATORY.
SELECTION-SCREEN END OF BLOCK BLK1.
CALL FUNCTION 'WS_UPLOAD'
EXPORTING
CODEPAGE = ' '
FILENAME = 'C:\Documents and Settings\Administrator\Desktop\SS.TXT'
FILETYPE = 'ASC'
HEADLEN = ' ',
LINE_EXIT = ' '
TRUNCLEN = ' '
USER_FORM = ' '
USER_PROG = ' '
DAT_D_FORMAT = ' '
IMPORTING
FILELENGTH =
TABLES
DATA_TAB = STR
CONVERSION_ERROR = 1
FILE_OPEN_ERROR = 2
FILE_READ_ERROR = 3
INVALID_TYPE = 4
NO_BATCH = 5
UNKNOWN_ERROR = 6
INVALID_TABLE_WIDTH = 7
GUI_REFUSE_FILETRANSFER = 8
CUSTOMER_ERROR = 9
NO_AUTHORITY = 10
OTHERS = 11
.
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
INITIALIZATION.
*PERFORM INIT_PARM.
*FORM INIT_PARM.
P_FILE = 'C:\Documents and Settings\Administrator\Desktop\SS.TXT'.
*ENDFORM. " INIT_PARM
CALL FUNCTION 'BDC_OPEN_GROUP'
EXPORTING
CLIENT = SY-MANDT
DEST = FILLER8
GROUP = 'SMM1'
HOLDDATE = FILLER8
KEEP = 'X'
USER = SY-UNAME
RECORD = FILLER1
PROG = SY-CPROG
IMPORTING
QID =
EXCEPTIONS
CLIENT_INVALID = 1
DESTINATION_INVALID = 2
GROUP_INVALID = 3
GROUP_IS_LOCKED = 4
HOLDDATE_INVALID = 5
INTERNAL_ERROR = 6
QUEUE_ERROR = 7
RUNNING = 8
SYSTEM_LOCK_ERROR = 9
USER_INVALID = 10
OTHERS = 11
.
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
*LOOP AT STR.
perform to fill it_bdcdata.
*CALL TRANSACTION 'SE11' USING ITAB MODE 'N' UPDATE 'S'.
**MESSAGES INTO IT_MESSAGES.
**IF SY-SUBRC <> 0.
**FG_FLAG1 = 1.
if error occurs in transaction mode run bdc session for that data
*CLEAR : ITAB,STR.
*REFRESH : ITAB.
*ENDLOOP.
CALL FUNCTION 'BDC_INSERT'
EXPORTING
TCODE = 'SE11'
POST_LOCAL = 'X'
PRINTING = NOPRINT
SIMUBATCH = ' '
CTUPARAMS = ' '
TABLES
DYNPROTAB = ITAB
EXCEPTIONS
INTERNAL_ERROR = 1
NOT_OPEN = 2
QUEUE_ERROR = 3
TCODE_INVALID = 4
PRINTING_INVALID = 5
POSTING_INVALID = 6
OTHERS = 7
.
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
CALL FUNCTION 'BDC_CLOSE_GROUP'
EXCEPTIONS
NOT_OPEN = 1
QUEUE_ERROR = 2
OTHERS = 3
.
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
2007 Jun 28 10:55 AM
Its looks far from OK to me.
You have your main program code (open group, call transaction, insert group) in the INITIALIZATION event. Move your main code to eiter start-of-selection of end-of-selection.
You are not filling the BDC table ITAB with any bdc session data or information.
You seem to be calling transaction SE11 exactly what is it that you are trying to achieve?
2007 Jun 28 11:14 AM
2007 Jun 28 11:38 AM
You want to ulpoad the data into the table?
I assume by table you mean a Z table.
In that case don't bother with a BDC or call transaction just modify your code as follows:
Keep the selection screen and keep the code that uploads the file into your internal table STR.
Next loop over all entries in table STR and use the INSERT statement to insert the data into your Z table.
Hope it helps
| User | Count |
|---|---|
| 4 | |
| 2 | |
| 2 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 |