Application Development and Automation Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 
Read only

BDC MM01

Former Member
0 Likes
519

Can you please tell me error in this program.

Iam creating the New Material using the Existing material.

I have selected 12 views by clicking scroll button but when i run this program it is not picking that scroll button code.

Your valuable answers will be rewarded

REPORT ZTESTBDC

NO STANDARD PAGE HEADING LINE-SIZE 255.

*******************************************************************

  • PROGRAM ID :

*

  • PROGRAM TITLE : PROGRAM TITLE

*

  • AUTHOR :

*

  • DATE : DD/MM/YYYY

*

  • CHANGE REQUEST NUMBER:XXXXXXXXXX

*

  • DESCRIPTION : THE PURPOSE OF THIS PROGRAM IS TO XXXXXX

*

*

*==================================================================

  • COPIED FROM : (CLONED PROGRAM)

*

  • TITLE : (PROGRAM TITLE)

*

  • OTHER RELATED OBJ : (OBJECT NAMES)

*==================================================================

  • CHANGE HISTORY LOG

*----


*

  • MOD. NO.| DATE | NAME |CORRECTION NO.| CHANGE REFERENCE #

*

*----


  • MOD-001 |DD/MM/YY| XXXXXXXXXXXXXX | XXXXXXXXXX | XXXXXXXXXX

*

  • DESCRIPTION:

*----


  • |DD/MM/YYYY| XXXXXXXXXXXXXX | XXXXXXXXXX

*

  • DESCRIPTION:

*********************************************************************

INCLUDE BDCRECX1.

*********************************************************************

  • Internal Table T_BDCDATA to store BDC data

*********************************************************************

  • Batchinputdata of single transaction

DATA: T_BDCDATA LIKE BDCDATA OCCURS 0 WITH HEADER LINE.

*********************************************************************

  • Internal Table T_BDC_MSG to store BDC messages

*********************************************************************

DATA: T_BDC_MSG LIKE STANDARD TABLE OF BDCMSGCOLL INITIAL

SIZE 0 WITH HEADER LINE.

DATA: V_FILE LIKE RLGRAP-FILENAME ,

V_COUNT(5) TYPE C,

V_MESSAGE_CNT(5) TYPE C .

*DATA: TCODE LIKE TSTC-TCODE VALUE 'MM01'.

DATA : BEGIN OF IT_DATA OCCURS 0,

MATNR_1 LIKE MARA-MATNR,

MBRSH LIKE MARA-MBRSH,

MTART LIKE MARA-MTART,

MATNR_2 LIKE MARA-MATNR,

MAKTX LIKE MAKT-MAKTX,

WERKS_1 LIKE MARC-WERKS,

LGORT_1 LIKE AUFM-LGORT,

VKORG_1 LIKE KNVV-VKORG,

VTWEG_1 LIKE KNVV-VTWEG,

WERKS LIKE MARC-WERKS,

LGORT LIKE AUFM-LGORT,

VKORG LIKE KNVV-VKORG,

VTWEG LIKE KNVV-VTWEG,

END OF IT_DATA.

START-OF-SELECTION.

PERFORM OPEN_GROUP.

PERFORM DATA_UPLOAD.

PERFORM CALL_TRANSACTION.

PERFORM CLOSE_GROUP.

PERFORM WRITE_ERROR.

&----


*& Form DATA_UPLOAD

&----


  • text

----


  • --> p1 text

  • <-- p2 text

----


FORM DATA_UPLOAD.

*call function ws_upload to retrieve data from a flat file in the

*presentation server into an internal table

CALL FUNCTION 'UPLOAD'

EXPORTING

FILENAME = V_FILE

FILETYPE = 'DAT'

TABLES

DATA_TAB = IT_DATA

EXCEPTIONS

CONVERSION_ERROR = 1

INVALID_TABLE_WIDTH = 2

INVALID_TYPE = 3

NO_BATCH = 4

UNKNOWN_ERROR = 5

GUI_REFUSE_FILETRANSFER = 6

OTHERS = 7.

  • if ws_upload fails then display appropriate message

IF SY-SUBRC <> 0.

  • MESSAGE E000 WITH 'Data not Uploaded into internal table'.

ENDIF.

ENDFORM. " DATA_UPLOAD

&----


*& Form CALL_TRANSACTION

&----


  • text

----


  • --> p1 text

  • <-- p2 text

----


FORM CALL_TRANSACTION.

DATA : V_IVDAT(10) TYPE C,

V_AKTIV(10) TYPE C,

V_MESSAGE(404) TYPE C.

REFRESH T_BDCDATA.

CLEAR T_BDCDATA.

V_COUNT = 0.

V_MESSAGE_CNT = 0.

LOOP AT IT_DATA .

V_COUNT = V_COUNT + 1.

*Intial screen

perform bdc_dynpro using 'SAPLMGMM' '0060'.

perform bdc_field using 'BDC_CURSOR'

'RMMG1-MTART'.

perform bdc_field using 'BDC_OKCODE'

'=ENTR'.

perform bdc_field using 'RMMG1-MATNR'

IT_DATA-MATNR_1.

perform bdc_field using 'RMMG1-MBRSH'

IT_DATA-MBRSH.

perform bdc_field using 'RMMG1-MTART'

IT_DATA-MTART.

perform bdc_field using 'RMMG1_REF-MATNR'

IT_DATA-MATNR_2.

*selection of views

perform bdc_dynpro using 'SAPLMGMM' '0070'.

perform bdc_field using 'BDC_CURSOR'

'MSICHTAUSW-DYTXT(15)'.

perform bdc_field using 'BDC_OKCODE'

'/00'.

perform bdc_field using 'MSICHTAUSW-KZSEL(04)'

'X'.

perform bdc_field using 'MSICHTAUSW-KZSEL(05)'

'X'.

perform bdc_field using 'MSICHTAUSW-KZSEL(06)'

'X'.

perform bdc_field using 'MSICHTAUSW-KZSEL(07)'

'X'.

perform bdc_field using 'MSICHTAUSW-KZSEL(08)'

'X'.

perform bdc_field using 'MSICHTAUSW-KZSEL(09)'

'X'.

perform bdc_field using 'MSICHTAUSW-KZSEL(10)'

'X'.

perform bdc_field using 'MSICHTAUSW-KZSEL(11)'

'X'.

perform bdc_field using 'MSICHTAUSW-KZSEL(12)'

'X'.

perform bdc_field using 'MSICHTAUSW-KZSEL(13)'

'X'.

perform bdc_field using 'MSICHTAUSW-KZSEL(14)'

'X'.

perform bdc_field using 'MSICHTAUSW-KZSEL(15)'

'X'.

perform bdc_dynpro using 'SAPLMGMM' '0070'.

perform bdc_field using 'BDC_CURSOR'

'MSICHTAUSW-DYTXT(01)'.

perform bdc_field using 'BDC_OKCODE'

'/00'.

perform bdc_dynpro using 'SAPLMGMM' '0070'.

perform bdc_field using 'BDC_CURSOR'

'MSICHTAUSW-DYTXT(01)'.

perform bdc_field using 'BDC_OKCODE'

'/00'.

perform bdc_dynpro using 'SAPLMGMM' '0070'.

perform bdc_field using 'BDC_CURSOR'

'MSICHTAUSW-DYTXT(01)'.

perform bdc_field using 'BDC_OKCODE'

'/00'.

perform bdc_dynpro using 'SAPLMGMM' '0070'.

perform bdc_field using 'BDC_CURSOR'

'MSICHTAUSW-DYTXT(15)'.

perform bdc_field using 'BDC_OKCODE'

'/00'.

perform bdc_field using 'MSICHTAUSW-KZSEL(14)'

'X'.

perform bdc_field using 'MSICHTAUSW-KZSEL(15)'

'X'.

perform bdc_dynpro using 'SAPLMGMM' '0070'.

perform bdc_field using 'BDC_CURSOR'

'MSICHTAUSW-DYTXT(01)'.

perform bdc_field using 'BDC_OKCODE'

'/00'.

perform bdc_dynpro using 'SAPLMGMM' '0070'.

perform bdc_field using 'BDC_CURSOR'

'MSICHTAUSW-DYTXT(01)'.

perform bdc_field using 'BDC_OKCODE'

'/00'.

perform bdc_dynpro using 'SAPLMGMM' '0070'.

perform bdc_field using 'BDC_CURSOR'

'MSICHTAUSW-DYTXT(01)'.

perform bdc_field using 'BDC_OKCODE'

'/00'.

perform bdc_dynpro using 'SAPLMGMM' '0070'.

perform bdc_field using 'BDC_CURSOR'

'MSICHTAUSW-DYTXT(01)'.

perform bdc_field using 'BDC_OKCODE'

'/00'.

perform bdc_dynpro using 'SAPLMGMM' '0070'.

perform bdc_field using 'BDC_CURSOR'

'MSICHTAUSW-DYTXT(15)'.

perform bdc_field using 'BDC_OKCODE'

'=ENTR'.

perform bdc_field using 'MSICHTAUSW-KZSEL(14)'

'X'.

perform bdc_field using 'MSICHTAUSW-KZSEL(15)'

'X'.

*Org data

perform bdc_dynpro using 'SAPLMGMM' '0080'.

perform bdc_field using 'BDC_CURSOR'

'RMMG1-VKORG'.

perform bdc_field using 'BDC_OKCODE'

'=ENTR'.

perform bdc_field using 'RMMG1-WERKS'

IT_DATA-WERKS.

perform bdc_field using 'RMMG1_REF-WERKS'

IT_DATA-WERKS_1. "'RMG1_REF-WERKS'.

perform bdc_field using 'RMMG1-LGORT'

IT_DATA-LGORT.

perform bdc_field using 'RMMG1_REF-LGORT'

IT_DATA-LGORT_1. " 'RMG1_REF-LGORT'.

perform bdc_field using 'RMMG1-VKORG'

IT_DATA-VKORG.

perform bdc_field using 'RMMG1_REF-VKORG'

IT_DATA-VKORG. " 'RMG1_REF-VKORG'.

perform bdc_field using 'RMMG1-VTWEG'

IT_DATA-VTWEG.

perform bdc_field using 'RMMG1_REF-VTWEG'

IT_DATA-VTWEG_1. "RMG1_REF-VTWEG'.

perform bdc_dynpro using 'SAPLMGMM' '4000'.

perform bdc_field using 'BDC_OKCODE'

'/00'.

perform bdc_field using 'BDC_CURSOR'

'MAKT-MAKTX'.

perform bdc_field using 'MAKT-MAKTX'

IT_DATA-MAKTX.

*perform bdc_field using 'MARA-MEINS'

  • 'NO'.

*perform bdc_field using 'MARA-MATKL'

  • '000'.

*perform bdc_field using 'MVKE-SKTOF'

  • 'X'.

*

*perform bdc_dynpro using 'SAPLMGMM' '4000'.

*perform bdc_field using 'BDC_OKCODE'

  • '/00'.

*perform bdc_field using 'BDC_CURSOR'

  • 'MAKT-MAKTX'.

*perform bdc_field using 'MAKT-MAKTX'

  • '"415V, 50Hz, 50kA, SDB # 2 I/c : 400A'

  • & 'MC'.

*perform bdc_field using 'MVKE-VERSG'

  • '1'.

*perform bdc_field using 'MVKE-KTGRM'

  • '09'.

*perform bdc_field using 'MVKE-MTPOS'

  • 'NORM'.

*perform bdc_field using 'MVKE-PROVG'

  • '06'.

*perform bdc_dynpro using 'SAPLMGMM' '4000'.

*perform bdc_field using 'BDC_OKCODE'

  • '/00'.

*perform bdc_field using 'BDC_CURSOR'

  • 'MAKT-MAKTX'.

*perform bdc_field using 'MAKT-MAKTX'

  • '"415V, 50Hz, 50kA, SDB # 2 I/c : 400A'

  • & 'MC'.

*perform bdc_field using 'MARA-MEINS'

  • 'NO'.

*perform bdc_field using 'MARA-GEWEI'

  • 'KG'.

*perform bdc_field using 'MARC-MTVFP'

  • 'KP'.

*perform bdc_field using 'MARC-LADGR'

  • '0005'.

*perform bdc_field using 'MARA-MAGRV'

  • 'PACK'.

*perform bdc_dynpro using 'SAPLMGMM' '4004'.

*perform bdc_field using 'BDC_OKCODE'

  • '/00'.

*perform bdc_field using 'BDC_CURSOR'

  • 'MAKT-MAKTX'.

*perform bdc_field using 'MAKT-MAKTX'

  • '"415V, 50Hz, 50kA, SDB # 2 I/c : 400A'

  • & 'MC'.

*

*perform bdc_dynpro using 'SAPLMGMM' '4040'.

*perform bdc_field using 'BDC_OKCODE'

  • '=SP09'.

*perform bdc_field using 'MAKT-MAKTX'

  • '"415V, 50Hz, 50kA, SDB # 2 I/c : 400A'

  • & 'MC'.

*

*perform bdc_dynpro using 'SAPLMGMM' '4000'.

*perform bdc_field using 'BDC_OKCODE'

  • '/00'.

*perform bdc_field using 'MAKT-MAKTX'

  • '"415V, 50Hz, 50kA, SDB # 2 I/c : 400A'

  • & 'MC'.

*perform bdc_field using 'BDC_CURSOR'

  • 'MARC-EKGRP'.

*perform bdc_field using 'MARA-MEINS'

  • 'NO'.

*perform bdc_field using 'MARC-EKGRP'

  • 'sp3'.

*perform bdc_field using 'MARA-MATKL'

  • '000'.

*perform bdc_field using 'MARA-EKWSL'

  • 'I2'.

*perform bdc_field using 'MARC-WEBAZ'

  • '1'.

*perform bdc_field using 'MARC-USEQU'

  • '4'.

*

*perform bdc_dynpro using 'SAPLMGMM' '4000'.

*perform bdc_field using 'BDC_OKCODE'

  • '/00'.

*perform bdc_field using 'BDC_CURSOR'

  • 'MAKT-MAKTX'.

*perform bdc_field using 'MAKT-MAKTX'

  • '"415V, 50Hz, 50kA, SDB # 2 I/c : 400A'

  • & 'MC'.

*

*perform bdc_dynpro using 'SAPLMGMM' '4040'.

*perform bdc_field using 'BDC_OKCODE'

  • '=SP12'.

*perform bdc_field using 'MAKT-MAKTX'

  • '"415V, 50Hz, 50kA, SDB # 2 I/c : 400A'

  • & 'MC'.

*

*perform bdc_dynpro using 'SAPLMGMM' '4000'.

*perform bdc_field using 'BDC_OKCODE'

  • '/00'.

*perform bdc_field using 'BDC_CURSOR'

  • 'MAKT-MAKTX'.

*perform bdc_field using 'MAKT-MAKTX'

  • '"415V, 50Hz, 50kA, SDB # 2 I/c : 400A'

  • & 'MC'.

*perform bdc_field using 'MARA-MEINS'

  • 'NO'.

*perform bdc_field using 'MARC-EKGRP'

  • 'SP3'.

*perform bdc_field using 'MARC-DISMM'

  • 'X0'.

*perform bdc_field using 'MARC-DISPO'

  • 'ECM'.

*perform bdc_field using 'MARC-DISLS'

  • 'EX'.

*

*perform bdc_dynpro using 'SAPLMGMM' '4000'.

*perform bdc_field using 'BDC_OKCODE'

  • '/00'.

*perform bdc_field using 'BDC_CURSOR'

  • 'MAKT-MAKTX'.

*perform bdc_field using 'MAKT-MAKTX'

  • '"415V, 50Hz, 50kA, SDB # 2 I/c : 400A'

  • & 'MC'.

*perform bdc_field using 'MARC-BESKZ'

  • 'X'.

*perform bdc_field using 'MARC-USEQU'

  • '4'.

*perform bdc_field using 'MARC-WEBAZ'

  • '1'.

*perform bdc_field using 'MARC-FHORI'

  • '000'.

*

*perform bdc_dynpro using 'SAPLMGMM' '4000'.

*perform bdc_field using 'BDC_OKCODE'

  • '/00'.

*perform bdc_field using 'BDC_CURSOR'

  • 'MAKT-MAKTX'.

*perform bdc_field using 'MAKT-MAKTX'

  • '"415V, 50Hz, 50kA, SDB # 2 I/c : 400A'

  • & 'MC'.

*perform bdc_field using 'MARC-PERKZ'

  • 'M'.

*perform bdc_field using 'MARC-MTVFP'

  • 'KP'.

*

*perform bdc_dynpro using 'SAPLMGMM' '4000'.

*perform bdc_field using 'BDC_OKCODE'

  • '/00'.

*perform bdc_field using 'BDC_CURSOR'

  • 'MAKT-MAKTX'.

*perform bdc_field using 'MAKT-MAKTX'

  • '"415V, 50Hz, 50kA, SDB # 2 I/c : 400A'

  • & 'MC'.

*

*perform bdc_dynpro using 'SAPLMGMM' '4000'.

*perform bdc_field using 'BDC_OKCODE'

  • '/00'.

*perform bdc_field using 'BDC_CURSOR'

  • 'MAKT-MAKTX'.

*perform bdc_field using 'MAKT-MAKTX'

  • '"415V, 50Hz, 50kA, SDB # 2 I/c : 400A'

  • & 'MC'.

*perform bdc_field using 'MARA-MEINS'

  • 'NO'.

*perform bdc_field using 'MARA-IPRKZ'

  • 'D'.

*

*perform bdc_dynpro using 'SAPLMGMM' '4000'.

*perform bdc_field using 'BDC_OKCODE'

  • '/00'.

*perform bdc_field using 'BDC_CURSOR'

  • 'MAKT-MAKTX'.

*perform bdc_field using 'MAKT-MAKTX'

  • '"415V, 50Hz, 50kA, SDB # 2 I/c : 400A'

  • & 'MC'.

*perform bdc_field using 'MARA-GEWEI'

  • 'KG'.

*

*perform bdc_dynpro using 'SAPLMGMM' '4000'.

*perform bdc_field using 'BDC_OKCODE'

  • '/00'.

*perform bdc_field using 'BDC_CURSOR'

  • 'MAKT-MAKTX'.

*perform bdc_field using 'MAKT-MAKTX'

  • '"415V, 50Hz, 50kA, SDB # 2 I/c : 400A'

  • & 'MC'.

*perform bdc_field using 'MARA-MEINS'

  • 'NO'.

*perform bdc_field using 'MBEW-BKLAS'

  • 'ZBOL'.

*perform bdc_field using 'MBEW-VPRSV'

  • 'V'.

*perform bdc_field using 'MBEW-PEINH'

  • '1'.

*perform bdc_field using 'MBEW-VERPR'

  • '1.00'.

*

*perform bdc_dynpro using 'SAPLMGMM' '4000'.

*perform bdc_field using 'BDC_OKCODE'

  • '/00'.

*perform bdc_field using 'BDC_CURSOR'

  • 'MAKT-MAKTX'.

*perform bdc_field using 'MAKT-MAKTX'

  • '"415V, 50Hz, 50kA, SDB # 2 I/c : 400A'

  • & 'MC'.

perform bdc_dynpro using 'SAPLSPO1' '0300'.

perform bdc_field using 'BDC_OKCODE'

'=YES'.

perform bdc_transaction using 'MM01'.

LOOP AT T_MESSTAB WHERE REC_NO IS INITIAL.

AT FIRST.

V_MESSAGE_CNT = V_MESSAGE_CNT + 1.

T_MESSTAB-REC_NO = V_COUNT.

ENDAT.

MODIFY T_MESSTAB TRANSPORTING REC_NO.

ENDLOOP.

REFRESH T_BDCDATA.

CLEAR T_BDCDATA.

ENDLOOP.

SKIP.

WRITE : /10 'Record Number ', 30 'Error Message'.

SKIP.

endform.

&----


*& Form WRITE_ERROR

&----


  • text

----


  • --> p1 text

  • <-- p2 text

----


FORM WRITE_ERROR.

LOOP AT T_MESSTAB.

WRITE : /10 T_MESSTAB-REC_NO , 30 T_MESSTAB-MESSAGE.

ENDLOOP.

ULINE /10(100).

WRITE : /10 'No of Records : ' , V_COUNT.

WRITE : /10 'No of Erroneous Records : ' , V_MESSAGE_CNT.

ULINE /10(100).

ENDFORM. " WRITE_ERROR

&----


*& Form CHECK_BDC

&----


  • text

----


  • --> p1 text

  • <-- p2 text

----


FORM CHECK_BDC.

DATA: L_CHECK LIKE YMMT_CHECK_BDC-YCHECK.

SELECT SINGLE YCHECK INTO L_CHECK FROM YMMT_CHECK_BDC

WHERE PROGRAMM EQ SY-REPID

AND YCHECK EQ 'X'.

IF SY-SUBRC NE 0.

MESSAGE S000(YM) WITH 'Execution not possible'.

STOP.

ENDIF.

ENDFORM. " CHECK_BDC

Thanks

Madhukar Reddy

Can you please tell me error in this program.

Iam creating the New Material using the Existing material.

I have selected 12 views by clicking scroll button but when i run this program it is not picking that scroll button code.

Your valuable answers will be rewarded

REPORT ZTESTBDC

NO STANDARD PAGE HEADING LINE-SIZE 255.

*******************************************************************

  • PROGRAM ID :

*

  • PROGRAM TITLE : PROGRAM TITLE

*

  • AUTHOR :

*

  • DATE : DD/MM/YYYY

*

  • CHANGE REQUEST NUMBER:XXXXXXXXXX

*

  • DESCRIPTION : THE PURPOSE OF THIS PROGRAM IS TO XXXXXX

*

*

*==================================================================

  • COPIED FROM : (CLONED PROGRAM)

*

  • TITLE : (PROGRAM TITLE)

*

  • OTHER RELATED OBJ : (OBJECT NAMES)

*==================================================================

  • CHANGE HISTORY LOG

*----


*

  • MOD. NO.| DATE | NAME |CORRECTION NO.| CHANGE REFERENCE #

*

*----


  • MOD-001 |DD/MM/YY| XXXXXXXXXXXXXX | XXXXXXXXXX | XXXXXXXXXX

*

  • DESCRIPTION:

*----


  • |DD/MM/YYYY| XXXXXXXXXXXXXX | XXXXXXXXXX

*

  • DESCRIPTION:

*********************************************************************

INCLUDE BDCRECX1.

*********************************************************************

  • Internal Table T_BDCDATA to store BDC data

*********************************************************************

  • Batchinputdata of single transaction

DATA: T_BDCDATA LIKE BDCDATA OCCURS 0 WITH HEADER LINE.

*********************************************************************

  • Internal Table T_BDC_MSG to store BDC messages

*********************************************************************

DATA: T_BDC_MSG LIKE STANDARD TABLE OF BDCMSGCOLL INITIAL

SIZE 0 WITH HEADER LINE.

DATA: V_FILE LIKE RLGRAP-FILENAME ,

V_COUNT(5) TYPE C,

V_MESSAGE_CNT(5) TYPE C .

*DATA: TCODE LIKE TSTC-TCODE VALUE 'MM01'.

DATA : BEGIN OF IT_DATA OCCURS 0,

MATNR_1 LIKE MARA-MATNR,

MBRSH LIKE MARA-MBRSH,

MTART LIKE MARA-MTART,

MATNR_2 LIKE MARA-MATNR,

MAKTX LIKE MAKT-MAKTX,

WERKS_1 LIKE MARC-WERKS,

LGORT_1 LIKE AUFM-LGORT,

VKORG_1 LIKE KNVV-VKORG,

VTWEG_1 LIKE KNVV-VTWEG,

WERKS LIKE MARC-WERKS,

LGORT LIKE AUFM-LGORT,

VKORG LIKE KNVV-VKORG,

VTWEG LIKE KNVV-VTWEG,

END OF IT_DATA.

START-OF-SELECTION.

PERFORM OPEN_GROUP.

PERFORM DATA_UPLOAD.

PERFORM CALL_TRANSACTION.

PERFORM CLOSE_GROUP.

PERFORM WRITE_ERROR.

&----


*& Form DATA_UPLOAD

&----


  • text

----


  • --> p1 text

  • <-- p2 text

----


FORM DATA_UPLOAD.

*call function ws_upload to retrieve data from a flat file in the

*presentation server into an internal table

CALL FUNCTION 'UPLOAD'

EXPORTING

FILENAME = V_FILE

FILETYPE = 'DAT'

TABLES

DATA_TAB = IT_DATA

EXCEPTIONS

CONVERSION_ERROR = 1

INVALID_TABLE_WIDTH = 2

INVALID_TYPE = 3

NO_BATCH = 4

UNKNOWN_ERROR = 5

GUI_REFUSE_FILETRANSFER = 6

OTHERS = 7.

  • if ws_upload fails then display appropriate message

IF SY-SUBRC <> 0.

  • MESSAGE E000 WITH 'Data not Uploaded into internal table'.

ENDIF.

ENDFORM. " DATA_UPLOAD

&----


*& Form CALL_TRANSACTION

&----


  • text

----


  • --> p1 text

  • <-- p2 text

----


FORM CALL_TRANSACTION.

DATA : V_IVDAT(10) TYPE C,

V_AKTIV(10) TYPE C,

V_MESSAGE(404) TYPE C.

REFRESH T_BDCDATA.

CLEAR T_BDCDATA.

V_COUNT = 0.

V_MESSAGE_CNT = 0.

LOOP AT IT_DATA .

V_COUNT = V_COUNT + 1.

*Intial screen

perform bdc_dynpro using 'SAPLMGMM' '0060'.

perform bdc_field using 'BDC_CURSOR'

'RMMG1-MTART'.

perform bdc_field using 'BDC_OKCODE'

'=ENTR'.

perform bdc_field using 'RMMG1-MATNR'

IT_DATA-MATNR_1.

perform bdc_field using 'RMMG1-MBRSH'

IT_DATA-MBRSH.

perform bdc_field using 'RMMG1-MTART'

IT_DATA-MTART.

perform bdc_field using 'RMMG1_REF-MATNR'

IT_DATA-MATNR_2.

*selection of views

perform bdc_dynpro using 'SAPLMGMM' '0070'.

perform bdc_field using 'BDC_CURSOR'

'MSICHTAUSW-DYTXT(15)'.

perform bdc_field using 'BDC_OKCODE'

'/00'.

perform bdc_field using 'MSICHTAUSW-KZSEL(04)'

'X'.

perform bdc_field using 'MSICHTAUSW-KZSEL(05)'

'X'.

perform bdc_field using 'MSICHTAUSW-KZSEL(06)'

'X'.

perform bdc_field using 'MSICHTAUSW-KZSEL(07)'

'X'.

perform bdc_field using 'MSICHTAUSW-KZSEL(08)'

'X'.

perform bdc_field using 'MSICHTAUSW-KZSEL(09)'

'X'.

perform bdc_field using 'MSICHTAUSW-KZSEL(10)'

'X'.

perform bdc_field using 'MSICHTAUSW-KZSEL(11)'

'X'.

perform bdc_field using 'MSICHTAUSW-KZSEL(12)'

'X'.

perform bdc_field using 'MSICHTAUSW-KZSEL(13)'

'X'.

perform bdc_field using 'MSICHTAUSW-KZSEL(14)'

'X'.

perform bdc_field using 'MSICHTAUSW-KZSEL(15)'

'X'.

perform bdc_dynpro using 'SAPLMGMM' '0070'.

perform bdc_field using 'BDC_CURSOR'

'MSICHTAUSW-DYTXT(01)'.

perform bdc_field using 'BDC_OKCODE'

'/00'.

perform bdc_dynpro using 'SAPLMGMM' '0070'.

perform bdc_field using 'BDC_CURSOR'

'MSICHTAUSW-DYTXT(01)'.

perform bdc_field using 'BDC_OKCODE'

'/00'.

perform bdc_dynpro using 'SAPLMGMM' '0070'.

perform bdc_field using 'BDC_CURSOR'

'MSICHTAUSW-DYTXT(01)'.

perform bdc_field using 'BDC_OKCODE'

'/00'.

perform bdc_dynpro using 'SAPLMGMM' '0070'.

perform bdc_field using 'BDC_CURSOR'

'MSICHTAUSW-DYTXT(15)'.

perform bdc_field using 'BDC_OKCODE'

'/00'.

perform bdc_field using 'MSICHTAUSW-KZSEL(14)'

'X'.

perform bdc_field using 'MSICHTAUSW-KZSEL(15)'

'X'.

perform bdc_dynpro using 'SAPLMGMM' '0070'.

perform bdc_field using 'BDC_CURSOR'

'MSICHTAUSW-DYTXT(01)'.

perform bdc_field using 'BDC_OKCODE'

'/00'.

perform bdc_dynpro using 'SAPLMGMM' '0070'.

perform bdc_field using 'BDC_CURSOR'

'MSICHTAUSW-DYTXT(01)'.

perform bdc_field using 'BDC_OKCODE'

'/00'.

perform bdc_dynpro using 'SAPLMGMM' '0070'.

perform bdc_field using 'BDC_CURSOR'

'MSICHTAUSW-DYTXT(01)'.

perform bdc_field using 'BDC_OKCODE'

'/00'.

perform bdc_dynpro using 'SAPLMGMM' '0070'.

perform bdc_field using 'BDC_CURSOR'

'MSICHTAUSW-DYTXT(01)'.

perform bdc_field using 'BDC_OKCODE'

'/00'.

perform bdc_dynpro using 'SAPLMGMM' '0070'.

perform bdc_field using 'BDC_CURSOR'

'MSICHTAUSW-DYTXT(15)'.

perform bdc_field using 'BDC_OKCODE'

'=ENTR'.

perform bdc_field using 'MSICHTAUSW-KZSEL(14)'

'X'.

perform bdc_field using 'MSICHTAUSW-KZSEL(15)'

'X'.

*Org data

perform bdc_dynpro using 'SAPLMGMM' '0080'.

perform bdc_field using 'BDC_CURSOR'

'RMMG1-VKORG'.

perform bdc_field using 'BDC_OKCODE'

'=ENTR'.

perform bdc_field using 'RMMG1-WERKS'

IT_DATA-WERKS.

perform bdc_field using 'RMMG1_REF-WERKS'

IT_DATA-WERKS_1. "'RMG1_REF-WERKS'.

perform bdc_field using 'RMMG1-LGORT'

IT_DATA-LGORT.

perform bdc_field using 'RMMG1_REF-LGORT'

IT_DATA-LGORT_1. " 'RMG1_REF-LGORT'.

perform bdc_field using 'RMMG1-VKORG'

IT_DATA-VKORG.

perform bdc_field using 'RMMG1_REF-VKORG'

IT_DATA-VKORG. " 'RMG1_REF-VKORG'.

perform bdc_field using 'RMMG1-VTWEG'

IT_DATA-VTWEG.

perform bdc_field using 'RMMG1_REF-VTWEG'

IT_DATA-VTWEG_1. "RMG1_REF-VTWEG'.

perform bdc_dynpro using 'SAPLMGMM' '4000'.

perform bdc_field using 'BDC_OKCODE'

'/00'.

perform bdc_field using 'BDC_CURSOR'

'MAKT-MAKTX'.

perform bdc_field using 'MAKT-MAKTX'

IT_DATA-MAKTX.

*perform bdc_field using 'MARA-MEINS'

  • 'NO'.

*perform bdc_field using 'MARA-MATKL'

  • '000'.

*perform bdc_field using 'MVKE-SKTOF'

  • 'X'.

*

*perform bdc_dynpro using 'SAPLMGMM' '4000'.

*perform bdc_field using 'BDC_OKCODE'

  • '/00'.

*perform bdc_field using 'BDC_CURSOR'

  • 'MAKT-MAKTX'.

*perform bdc_field using 'MAKT-MAKTX'

  • '"415V, 50Hz, 50kA, SDB # 2 I/c : 400A'

  • & 'MC'.

*perform bdc_field using 'MVKE-VERSG'

  • '1'.

*perform bdc_field using 'MVKE-KTGRM'

  • '09'.

*perform bdc_field using 'MVKE-MTPOS'

  • 'NORM'.

*perform bdc_field using 'MVKE-PROVG'

  • '06'.

*perform bdc_dynpro using 'SAPLMGMM' '4000'.

*perform bdc_field using 'BDC_OKCODE'

  • '/00'.

*perform bdc_field using 'BDC_CURSOR'

  • 'MAKT-MAKTX'.

*perform bdc_field using 'MAKT-MAKTX'

  • '"415V, 50Hz, 50kA, SDB # 2 I/c : 400A'

  • & 'MC'.

*perform bdc_field using 'MARA-MEINS'

  • 'NO'.

*perform bdc_field using 'MARA-GEWEI'

  • 'KG'.

*perform bdc_field using 'MARC-MTVFP'

  • 'KP'.

*perform bdc_field using 'MARC-LADGR'

  • '0005'.

*perform bdc_field using 'MARA-MAGRV'

  • 'PACK'.

*perform bdc_dynpro using 'SAPLMGMM' '4004'.

*perform bdc_field using 'BDC_OKCODE'

  • '/00'.

*perform bdc_field using 'BDC_CURSOR'

  • 'MAKT-MAKTX'.

*perform bdc_field using 'MAKT-MAKTX'

  • '"415V, 50Hz, 50kA, SDB # 2 I/c : 400A'

  • & 'MC'.

*

*perform bdc_dynpro using 'SAPLMGMM' '4040'.

*perform bdc_field using 'BDC_OKCODE'

  • '=SP09'.

*perform bdc_field using 'MAKT-MAKTX'

  • '"415V, 50Hz, 50kA, SDB # 2 I/c : 400A'

  • & 'MC'.

*

*perform bdc_dynpro using 'SAPLMGMM' '4000'.

*perform bdc_field using 'BDC_OKCODE'

  • '/00'.

*perform bdc_field using 'MAKT-MAKTX'

  • '"415V, 50Hz, 50kA, SDB # 2 I/c : 400A'

  • & 'MC'.

*perform bdc_field using 'BDC_CURSOR'

  • 'MARC-EKGRP'.

*perform bdc_field using 'MARA-MEINS'

  • 'NO'.

*perform bdc_field using 'MARC-EKGRP'

  • 'sp3'.

*perform bdc_field using 'MARA-MATKL'

  • '000'.

*perform bdc_field using 'MARA-EKWSL'

  • 'I2'.

*perform bdc_field using 'MARC-WEBAZ'

  • '1'.

*perform bdc_field using 'MARC-USEQU'

  • '4'.

*

*perform bdc_dynpro using 'SAPLMGMM' '4000'.

*perform bdc_field using 'BDC_OKCODE'

  • '/00'.

*perform bdc_field using 'BDC_CURSOR'

  • 'MAKT-MAKTX'.

*perform bdc_field using 'MAKT-MAKTX'

  • '"415V, 50Hz, 50kA, SDB # 2 I/c : 400A'

  • & 'MC'.

*

*perform bdc_dynpro using 'SAPLMGMM' '4040'.

*perform bdc_field using 'BDC_OKCODE'

  • '=SP12'.

*perform bdc_field using 'MAKT-MAKTX'

  • '"415V, 50Hz, 50kA, SDB # 2 I/c : 400A'

  • & 'MC'.

*

*perform bdc_dynpro using 'SAPLMGMM' '4000'.

*perform bdc_field using 'BDC_OKCODE'

  • '/00'.

*perform bdc_field using 'BDC_CURSOR'

  • 'MAKT-MAKTX'.

*perform bdc_field using 'MAKT-MAKTX'

  • '"415V, 50Hz, 50kA, SDB # 2 I/c : 400A'

  • & 'MC'.

*perform bdc_field using 'MARA-MEINS'

  • 'NO'.

*perform bdc_field using 'MARC-EKGRP'

  • 'SP3'.

*perform bdc_field using 'MARC-DISMM'

  • 'X0'.

*perform bdc_field using 'MARC-DISPO'

  • 'ECM'.

*perform bdc_field using 'MARC-DISLS'

  • 'EX'.

*

*perform bdc_dynpro using 'SAPLMGMM' '4000'.

*perform bdc_field using 'BDC_OKCODE'

  • '/00'.

*perform bdc_field using 'BDC_CURSOR'

  • 'MAKT-MAKTX'.

*perform bdc_field using 'MAKT-MAKTX'

  • '"415V, 50Hz, 50kA, SDB # 2 I/c : 400A'

  • & 'MC'.

*perform bdc_field using 'MARC-BESKZ'

  • 'X'.

*perform bdc_field using 'MARC-USEQU'

  • '4'.

*perform bdc_field using 'MARC-WEBAZ'

  • '1'.

*perform bdc_field using 'MARC-FHORI'

  • '000'.

*

*perform bdc_dynpro using 'SAPLMGMM' '4000'.

*perform bdc_field using 'BDC_OKCODE'

  • '/00'.

*perform bdc_field using 'BDC_CURSOR'

  • 'MAKT-MAKTX'.

*perform bdc_field using 'MAKT-MAKTX'

  • '"415V, 50Hz, 50kA, SDB # 2 I/c : 400A'

  • & 'MC'.

*perform bdc_field using 'MARC-PERKZ'

  • 'M'.

*perform bdc_field using 'MARC-MTVFP'

  • 'KP'.

*

*perform bdc_dynpro using 'SAPLMGMM' '4000'.

*perform bdc_field using 'BDC_OKCODE'

  • '/00'.

*perform bdc_field using 'BDC_CURSOR'

  • 'MAKT-MAKTX'.

*perform bdc_field using 'MAKT-MAKTX'

  • '"415V, 50Hz, 50kA, SDB # 2 I/c : 400A'

  • & 'MC'.

*

*perform bdc_dynpro using 'SAPLMGMM' '4000'.

*perform bdc_field using 'BDC_OKCODE'

  • '/00'.

*perform bdc_field using 'BDC_CURSOR'

  • 'MAKT-MAKTX'.

*perform bdc_field using 'MAKT-MAKTX'

  • '"415V, 50Hz, 50kA, SDB # 2 I/c : 400A'

  • & 'MC'.

*perform bdc_field using 'MARA-MEINS'

  • 'NO'.

*perform bdc_field using 'MARA-IPRKZ'

  • 'D'.

*

*perform bdc_dynpro using 'SAPLMGMM' '4000'.

*perform bdc_field using 'BDC_OKCODE'

  • '/00'.

*perform bdc_field using 'BDC_CURSOR'

  • 'MAKT-MAKTX'.

*perform bdc_field using 'MAKT-MAKTX'

  • '"415V, 50Hz, 50kA, SDB # 2 I/c : 400A'

  • & 'MC'.

*perform bdc_field using 'MARA-GEWEI'

  • 'KG'.

*

*perform bdc_dynpro using 'SAPLMGMM' '4000'.

*perform bdc_field using 'BDC_OKCODE'

  • '/00'.

*perform bdc_field using 'BDC_CURSOR'

  • 'MAKT-MAKTX'.

*perform bdc_field using 'MAKT-MAKTX'

  • '"415V, 50Hz, 50kA, SDB # 2 I/c : 400A'

  • & 'MC'.

*perform bdc_field using 'MARA-MEINS'

  • 'NO'.

*perform bdc_field using 'MBEW-BKLAS'

  • 'ZBOL'.

*perform bdc_field using 'MBEW-VPRSV'

  • 'V'.

*perform bdc_field using 'MBEW-PEINH'

  • '1'.

*perform bdc_field using 'MBEW-VERPR'

  • '1.00'.

*

*perform bdc_dynpro using 'SAPLMGMM' '4000'.

*perform bdc_field using 'BDC_OKCODE'

  • '/00'.

*perform bdc_field using 'BDC_CURSOR'

  • 'MAKT-MAKTX'.

*perform bdc_field using 'MAKT-MAKTX'

  • '"415V, 50Hz, 50kA, SDB # 2 I/c : 400A'

  • & 'MC'.

perform bdc_dynpro using 'SAPLSPO1' '0300'.

perform bdc_field using 'BDC_OKCODE'

'=YES'.

perform bdc_transaction using 'MM01'.

LOOP AT T_MESSTAB WHERE REC_NO IS INITIAL.

AT FIRST.

V_MESSAGE_CNT = V_MESSAGE_CNT + 1.

T_MESSTAB-REC_NO = V_COUNT.

ENDAT.

MODIFY T_MESSTAB TRANSPORTING REC_NO.

ENDLOOP.

REFRESH T_BDCDATA.

CLEAR T_BDCDATA.

ENDLOOP.

SKIP.

WRITE : /10 'Record Number ', 30 'Error Message'.

SKIP.

endform.

&----


*& Form WRITE_ERROR

&----


  • text

----


  • --> p1 text

  • <-- p2 text

----


FORM WRITE_ERROR.

LOOP AT T_MESSTAB.

WRITE : /10 T_MESSTAB-REC_NO , 30 T_MESSTAB-MESSAGE.

ENDLOOP.

ULINE /10(100).

WRITE : /10 'No of Records : ' , V_COUNT.

WRITE : /10 'No of Erroneous Records : ' , V_MESSAGE_CNT.

ULINE /10(100).

ENDFORM. " WRITE_ERROR

&----


*& Form CHECK_BDC

&----


  • text

----


  • --> p1 text

  • <-- p2 text

----


FORM CHECK_BDC.

DATA: L_CHECK LIKE YMMT_CHECK_BDC-YCHECK.

SELECT SINGLE YCHECK INTO L_CHECK FROM YMMT_CHECK_BDC

WHERE PROGRAMM EQ SY-REPID

AND YCHECK EQ 'X'.

IF SY-SUBRC NE 0.

MESSAGE S000(YM) WITH 'Execution not possible'.

STOP.

ENDIF.

ENDFORM. " CHECK_BDC

Thanks

Madhukar Reddy

2 REPLIES 2
Read only

Former Member
0 Likes
459

hi,

in recording for each screen the Ok code should be at the end of the screen

eg)

perform bdc_dynpro using 'SAPLMGMM' '0060'.

perform bdc_field using 'BDC_CURSOR'

'RMMG1-MTART'.

perform bdc_field using 'BDC_OKCODE'

'=ENTR'. This should be the last statement in this block

perform bdc_field using 'RMMG1-MATNR'

IT_DATA-MATNR_1.

perform bdc_field using 'RMMG1-MBRSH'

IT_DATA-MBRSH.

perform bdc_field using 'RMMG1-MTART'

IT_DATA-MTART.

perform bdc_field using 'RMMG1_REF-MATNR'

IT_DATA-MATNR_2.

perform bdc_field using 'BDC_OKCODE'

'=ENTR'.

regards,

pavan

Read only

0 Likes
459

Hi,

thanks for your reply.

This program is working fine for call transaction All screen mode but it is not working for no screens mode.

another problem is it getting time out when we press F4 for

uploading the file at selection screen.

please provide the solution

thanks

Madhukar reddy