2014 Dec 16 12:33 PM
Dear Experts,
Trying to execute the BDC program for the transaction MB1A, the below error is displayed. Need help in resolving pls
Piece of coding is as below
REPORT ZPP_MB1A
NO STANDARD PAGE HEADING LINE-SIZE 255.
*INCLUDE BDCRECX1.
*
*START-OF-SELECTION.
*
* PERFORM OPEN_GROUP.
DATA : BEGIN OF GT_MB1A OCCURS 0,
BLDAT TYPE MKPF-BLDAT,
BUDAT TYPE MKPF-BUDAT,
BWARTWA TYPE RM07M-BWARTWA,
SOBKZ TYPE RM07M-SOBKZ,
WERKS TYPE RM07M-WERKS,
LGORT TYPE RM07M-LGORT,
MAT_KDAUF TYPE MSEGK-MAT_KDAUF,
MAT_KDPOS TYPE MSEGK-MAT_KDPOS,
AUFNR TYPE COBL-AUFNR,
MATNR TYPE MSEG-MATNR,
ERFMG TYPE MSEG-ERFMG,
J_3AERFMG TYPE J_3AIMDL-J_3AERFMG,
CHARG TYPE J_3AIMDL-CHARG,
J_4KSCAT TYPE J_3AIMDL-J_4KSCAT,
J_3ASIZED TYPE J_3AIMDL-J_3ASIZED,
END OF GT_MB1A.
DATA : BDCDATA LIKE BDCDATA OCCURS 0 WITH HEADER LINE.
CALL FUNCTION 'GUI_UPLOAD'
EXPORTING
FILENAME = 'D:/UPLOAD/UPLOAD.TXT'
FILETYPE = 'DAT'
* HAS_FIELD_SEPARATOR = 'X '
* HEADER_LENGTH = 0
* READ_BY_LINE = 'X'
* DAT_MODE = ' '
* CODEPAGE = ' '
* IGNORE_CERR = ABAP_TRUE
* REPLACEMENT = '#'
* CHECK_BOM = ' '
* VIRUS_SCAN_PROFILE =
* NO_AUTH_CHECK = ' '
* IMPORTING
* FILELENGTH =
* HEADER =
TABLES
DATA_TAB = GT_MB1A.
* EXCEPTIONS
* FILE_OPEN_ERROR = 1
* FILE_READ_ERROR = 2
* NO_BATCH = 3
* GUI_REFUSE_FILETRANSFER = 4
* INVALID_TYPE = 5
* NO_AUTHORITY = 6
* UNKNOWN_ERROR = 7
* BAD_DATA_FORMAT = 8
* HEADER_NOT_ALLOWED = 9
* SEPARATOR_NOT_ALLOWED = 10
* HEADER_TOO_LONG = 11
* UNKNOWN_DP_ERROR = 12
* ACCESS_DENIED = 13
* DP_OUT_OF_MEMORY = 14
* DISK_FULL = 15
* DP_TIMEOUT = 16
* OTHERS = 17
.
IF SY-SUBRC <> 0.
* Implement suitable error handling here
ENDIF.
LOOP AT GT_MB1A.
REFRESH BDCDATA.
PERFORM MAPPING.
CALL TRANSACTION 'MB1A' USING BDCDATA MODE 'A'.
ENDLOOP.
FORM MAPPING.
PERFORM BDC_DYNPRO USING 'SAPMM07M' '0400'.
PERFORM BDC_FIELD USING 'BDC_CURSOR'
'RM07M-SOBKZ'.
PERFORM BDC_FIELD USING 'BDC_OKCODE'
'/00'.
PERFORM BDC_FIELD USING 'MKPF-BLDAT'
GT_MB1A-BLDAT.
PERFORM BDC_FIELD USING 'MKPF-BUDAT'
GT_MB1A-BUDAT.
PERFORM BDC_FIELD USING 'RM07M-BWARTWA'
GT_MB1A-BWARTWA.
PERFORM BDC_FIELD USING 'RM07M-SOBKZ'
GT_MB1A-SOBKZ.
PERFORM BDC_FIELD USING 'RM07M-WERKS'
GT_MB1A-WERKS.
PERFORM BDC_FIELD USING 'RM07M-LGORT'
GT_MB1A-LGORT.
PERFORM BDC_FIELD USING 'XFULL'
'X'.
PERFORM BDC_FIELD USING 'RM07M-WVERS2'
'X'.
PERFORM BDC_DYNPRO USING 'SAPMM07M' '0421'.
PERFORM BDC_FIELD USING 'BDC_CURSOR'
'MSEG-ERFMG(01)'.
PERFORM BDC_FIELD USING 'BDC_OKCODE'
'=PF02'.
PERFORM BDC_FIELD USING 'MSEG-MATNR(01)'
GT_MB1A-MATNR.
PERFORM BDC_FIELD USING 'MSEG-ERFMG(01)'
''.
PERFORM BDC_FIELD USING 'MSEGK-MAT_KDAUF'
GT_MB1A-MAT_KDAUF.
PERFORM BDC_FIELD USING 'MSEGK-MAT_KDPOS'
GT_MB1A-MAT_KDPOS.
PERFORM BDC_DYNPRO USING 'SAPLKACB' '0002'.
PERFORM BDC_FIELD USING 'BDC_CURSOR'
'COBL-AUFNR'.
PERFORM BDC_FIELD USING 'BDC_OKCODE'
'=ENTE'.
PERFORM BDC_FIELD USING 'COBL-AUFNR'
GT_MB1A-AUFNR.
PERFORM BDC_DYNPRO USING 'SAPLJ3AI' '0400'.
PERFORM BDC_FIELD USING 'BDC_CURSOR'
'J_3AIMDL-CHARG(01)'.
PERFORM BDC_FIELD USING 'BDC_OKCODE'
'/00'.
PERFORM BDC_FIELD USING 'J_3AIMDL-J_3ASIZED(01)'
GT_MB1A-J_3ASIZED.
PERFORM BDC_FIELD USING 'J_3AIMDL-J_3AERFMG(01)'
GT_MB1A-J_3AERFMG.
PERFORM BDC_FIELD USING 'J_3AIMDL-J_4KSCAT(01)'
GT_MB1A-J_4KSCAT.
PERFORM BDC_FIELD USING 'J_3AIMDL-CHARG(01)'
GT_MB1A-CHARG.
PERFORM BDC_DYNPRO USING 'SAPLJ3AI' '0400'.
PERFORM BDC_FIELD USING 'BDC_CURSOR'
'J_3AIMDL-J_3ASIZED(01)'.
PERFORM BDC_FIELD USING 'BDC_OKCODE'
'=COPY'.
PERFORM BDC_DYNPRO USING 'SAPLKACB' '0002'.
PERFORM BDC_FIELD USING 'BDC_CURSOR'
'COBL-AUFNR'.
PERFORM BDC_FIELD USING 'BDC_OKCODE'
'=ENTE'.
PERFORM BDC_FIELD USING 'COBL-AUFNR'
GT_MB1A-CHARG.
PERFORM BDC_DYNPRO USING 'SAPMM07M' '0410'.
PERFORM BDC_FIELD USING 'BDC_CURSOR'
'MSEG-ERFMG'.
PERFORM BDC_FIELD USING 'BDC_OKCODE'
'=BU'.
PERFORM BDC_FIELD USING 'MSEG-ERFMG'
GT_MB1A-ERFMG.
PERFORM BDC_FIELD USING 'DM07M-KONTO'
'70007900'.
PERFORM BDC_FIELD USING 'DKACB-FMORE'
'X'.
PERFORM BDC_DYNPRO USING 'SAPLKACB' '0002'.
PERFORM BDC_FIELD USING 'BDC_CURSOR'
'COBL-AUFNR'.
PERFORM BDC_FIELD USING 'BDC_OKCODE'
'=ENTE'.
PERFORM BDC_FIELD USING 'COBL-AUFNR'
GT_MB1A-AUFNR.
* PERFORM BDC_TRANSACTION USING 'MB1A'.
*
*
*
* PERFORM CLOSE_GROUP.
ENDFORM.
*----------------------------------------------------------------------*
* Start new screen *
*----------------------------------------------------------------------*
FORM BDC_DYNPRO USING PROGRAM DYNPRO.
CLEAR BDCDATA.
BDCDATA-PROGRAM = PROGRAM.
BDCDATA-DYNPRO = DYNPRO.
BDCDATA-DYNBEGIN = 'X'.
APPEND BDCDATA.
ENDFORM. "BDC_DYNPRO
*----------------------------------------------------------------------*
* Insert field *
*----------------------------------------------------------------------*
FORM BDC_FIELD USING FNAM FVAL.
IF FVAL <> SPACE.
CLEAR BDCDATA.
BDCDATA-FNAM = FNAM.
BDCDATA-FVAL = FVAL.
APPEND BDCDATA.
ENDIF.
ENDFORM. "BDC_FIELD
Best rgds/thnks,
Srikanth.
2014 Dec 16 1:12 PM
hi vn srikanth,
can you replace FM 'GUI_UPLOAD' with this and try
CALL FUNCTION 'UPLOAD'
EXPORTING
* CODEPAGE = ' '
FILENAME = 'C:\'
FILETYPE = 'DAT'
*
TABLES
data_tab = GT_MB1A
EXCEPTIONS
CONVERSION_ERROR = 1
INVALID_TABLE_WIDTH = 2
INVALID_TYPE = 3
NO_BATCH = 4
UNKNOWN_ERROR = 5
GUI_REFUSE_FILETRANSFER = 6
OTHERS = 7
.
You have to select file at runtime.
Dear Experts,
Trying to execute the BDC program for the transaction MB1A, the below error is displayed. Need help in resolving pls
Piece of coding is as below
REPORT ZPP_MB1A
NO STANDARD PAGE HEADING LINE-SIZE 255.
*INCLUDE BDCRECX1.
*
*START-OF-SELECTION.
*
* PERFORM OPEN_GROUP.
DATA : BEGIN OF GT_MB1A OCCURS 0,
BLDAT TYPE MKPF-BLDAT,
BUDAT TYPE MKPF-BUDAT,
BWARTWA TYPE RM07M-BWARTWA,
SOBKZ TYPE RM07M-SOBKZ,
WERKS TYPE RM07M-WERKS,
LGORT TYPE RM07M-LGORT,
MAT_KDAUF TYPE MSEGK-MAT_KDAUF,
MAT_KDPOS TYPE MSEGK-MAT_KDPOS,
AUFNR TYPE COBL-AUFNR,
MATNR TYPE MSEG-MATNR,
ERFMG TYPE MSEG-ERFMG,
J_3AERFMG TYPE J_3AIMDL-J_3AERFMG,
CHARG TYPE J_3AIMDL-CHARG,
J_4KSCAT TYPE J_3AIMDL-J_4KSCAT,
J_3ASIZED TYPE J_3AIMDL-J_3ASIZED,
END OF GT_MB1A.
DATA : BDCDATA LIKE BDCDATA OCCURS 0 WITH HEADER LINE.
CALL FUNCTION 'GUI_UPLOAD'
EXPORTING
FILENAME = 'D:/UPLOAD/UPLOAD.TXT'
FILETYPE = 'DAT'
* HAS_FIELD_SEPARATOR = 'X '
* HEADER_LENGTH = 0
* READ_BY_LINE = 'X'
* DAT_MODE = ' '
* CODEPAGE = ' '
* IGNORE_CERR = ABAP_TRUE
* REPLACEMENT = '#'
* CHECK_BOM = ' '
* VIRUS_SCAN_PROFILE =
* NO_AUTH_CHECK = ' '
* IMPORTING
* FILELENGTH =
* HEADER =
TABLES
DATA_TAB = GT_MB1A.
* EXCEPTIONS
* FILE_OPEN_ERROR = 1
* FILE_READ_ERROR = 2
* NO_BATCH = 3
* GUI_REFUSE_FILETRANSFER = 4
* INVALID_TYPE = 5
* NO_AUTHORITY = 6
* UNKNOWN_ERROR = 7
* BAD_DATA_FORMAT = 8
* HEADER_NOT_ALLOWED = 9
* SEPARATOR_NOT_ALLOWED = 10
* HEADER_TOO_LONG = 11
* UNKNOWN_DP_ERROR = 12
* ACCESS_DENIED = 13
* DP_OUT_OF_MEMORY = 14
* DISK_FULL = 15
* DP_TIMEOUT = 16
* OTHERS = 17
.
IF SY-SUBRC <> 0.
* Implement suitable error handling here
ENDIF.
LOOP AT GT_MB1A.
REFRESH BDCDATA.
PERFORM MAPPING.
CALL TRANSACTION 'MB1A' USING BDCDATA MODE 'A'.
ENDLOOP.
FORM MAPPING.
PERFORM BDC_DYNPRO USING 'SAPMM07M' '0400'.
PERFORM BDC_FIELD USING 'BDC_CURSOR'
'RM07M-SOBKZ'.
PERFORM BDC_FIELD USING 'BDC_OKCODE'
'/00'.
PERFORM BDC_FIELD USING 'MKPF-BLDAT'
GT_MB1A-BLDAT.
PERFORM BDC_FIELD USING 'MKPF-BUDAT'
GT_MB1A-BUDAT.
PERFORM BDC_FIELD USING 'RM07M-BWARTWA'
GT_MB1A-BWARTWA.
PERFORM BDC_FIELD USING 'RM07M-SOBKZ'
GT_MB1A-SOBKZ.
PERFORM BDC_FIELD USING 'RM07M-WERKS'
GT_MB1A-WERKS.
PERFORM BDC_FIELD USING 'RM07M-LGORT'
GT_MB1A-LGORT.
PERFORM BDC_FIELD USING 'XFULL'
'X'.
PERFORM BDC_FIELD USING 'RM07M-WVERS2'
'X'.
PERFORM BDC_DYNPRO USING 'SAPMM07M' '0421'.
PERFORM BDC_FIELD USING 'BDC_CURSOR'
'MSEG-ERFMG(01)'.
PERFORM BDC_FIELD USING 'BDC_OKCODE'
'=PF02'.
PERFORM BDC_FIELD USING 'MSEG-MATNR(01)'
GT_MB1A-MATNR.
PERFORM BDC_FIELD USING 'MSEG-ERFMG(01)'
''.
PERFORM BDC_FIELD USING 'MSEGK-MAT_KDAUF'
GT_MB1A-MAT_KDAUF.
PERFORM BDC_FIELD USING 'MSEGK-MAT_KDPOS'
GT_MB1A-MAT_KDPOS.
PERFORM BDC_DYNPRO USING 'SAPLKACB' '0002'.
PERFORM BDC_FIELD USING 'BDC_CURSOR'
'COBL-AUFNR'.
PERFORM BDC_FIELD USING 'BDC_OKCODE'
'=ENTE'.
PERFORM BDC_FIELD USING 'COBL-AUFNR'
GT_MB1A-AUFNR.
PERFORM BDC_DYNPRO USING 'SAPLJ3AI' '0400'.
PERFORM BDC_FIELD USING 'BDC_CURSOR'
'J_3AIMDL-CHARG(01)'.
PERFORM BDC_FIELD USING 'BDC_OKCODE'
'/00'.
PERFORM BDC_FIELD USING 'J_3AIMDL-J_3ASIZED(01)'
GT_MB1A-J_3ASIZED.
PERFORM BDC_FIELD USING 'J_3AIMDL-J_3AERFMG(01)'
GT_MB1A-J_3AERFMG.
PERFORM BDC_FIELD USING 'J_3AIMDL-J_4KSCAT(01)'
GT_MB1A-J_4KSCAT.
PERFORM BDC_FIELD USING 'J_3AIMDL-CHARG(01)'
GT_MB1A-CHARG.
PERFORM BDC_DYNPRO USING 'SAPLJ3AI' '0400'.
PERFORM BDC_FIELD USING 'BDC_CURSOR'
'J_3AIMDL-J_3ASIZED(01)'.
PERFORM BDC_FIELD USING 'BDC_OKCODE'
'=COPY'.
PERFORM BDC_DYNPRO USING 'SAPLKACB' '0002'.
PERFORM BDC_FIELD USING 'BDC_CURSOR'
'COBL-AUFNR'.
PERFORM BDC_FIELD USING 'BDC_OKCODE'
'=ENTE'.
PERFORM BDC_FIELD USING 'COBL-AUFNR'
GT_MB1A-CHARG.
PERFORM BDC_DYNPRO USING 'SAPMM07M' '0410'.
PERFORM BDC_FIELD USING 'BDC_CURSOR'
'MSEG-ERFMG'.
PERFORM BDC_FIELD USING 'BDC_OKCODE'
'=BU'.
PERFORM BDC_FIELD USING 'MSEG-ERFMG'
GT_MB1A-ERFMG.
PERFORM BDC_FIELD USING 'DM07M-KONTO'
'70007900'.
PERFORM BDC_FIELD USING 'DKACB-FMORE'
'X'.
PERFORM BDC_DYNPRO USING 'SAPLKACB' '0002'.
PERFORM BDC_FIELD USING 'BDC_CURSOR'
'COBL-AUFNR'.
PERFORM BDC_FIELD USING 'BDC_OKCODE'
'=ENTE'.
PERFORM BDC_FIELD USING 'COBL-AUFNR'
GT_MB1A-AUFNR.
* PERFORM BDC_TRANSACTION USING 'MB1A'.
*
*
*
* PERFORM CLOSE_GROUP.
ENDFORM.
*----------------------------------------------------------------------*
* Start new screen *
*----------------------------------------------------------------------*
FORM BDC_DYNPRO USING PROGRAM DYNPRO.
CLEAR BDCDATA.
BDCDATA-PROGRAM = PROGRAM.
BDCDATA-DYNPRO = DYNPRO.
BDCDATA-DYNBEGIN = 'X'.
APPEND BDCDATA.
ENDFORM. "BDC_DYNPRO
*----------------------------------------------------------------------*
* Insert field *
*----------------------------------------------------------------------*
FORM BDC_FIELD USING FNAM FVAL.
IF FVAL <> SPACE.
CLEAR BDCDATA.
BDCDATA-FNAM = FNAM.
BDCDATA-FVAL = FVAL.
APPEND BDCDATA.
ENDIF.
ENDFORM. "BDC_FIELD
Best rgds/thnks,
Srikanth.
2014 Dec 16 12:37 PM
Hii Srikanth
Please check the type of field file... or use ASC type instead of DAT
Regards
Gaurav
Message was edited by: Gaurav Joshi
2014 Dec 16 12:43 PM
File type is ' DAT ' . Trying to upload from Notepad.
Uploading format is as below
16.12.2014 16.12.2014 261 E 1040 40IN 1001881 10 400000567
STNP-LYNGDLASER-01 1 PCS 0000057872
Best rgds/thnks,
Srikanth
2014 Dec 16 12:52 PM
hii
Please check your data type for date it might not be same,
Regards
Gaurav
2014 Dec 16 1:12 PM
hi vn srikanth,
can you replace FM 'GUI_UPLOAD' with this and try
CALL FUNCTION 'UPLOAD'
EXPORTING
* CODEPAGE = ' '
FILENAME = 'C:\'
FILETYPE = 'DAT'
*
TABLES
data_tab = GT_MB1A
EXCEPTIONS
CONVERSION_ERROR = 1
INVALID_TABLE_WIDTH = 2
INVALID_TYPE = 3
NO_BATCH = 4
UNKNOWN_ERROR = 5
GUI_REFUSE_FILETRANSFER = 6
OTHERS = 7
.
You have to select file at runtime.
2014 Dec 16 1:33 PM
Hi adbul,
This seems to be working. But this function module is obselete and normally GUI_UPLOAD is the updated function module to be used. Pls suggest a solution for using the GUI_UPLOAD FM.
Best rgds/thnks,
Srikanth.