on 04-08-2008 11:08 AM
hi friends,
can pls give slo for my problem
how to record diffrent views in BDC for MM01
hi,
i am sending you sample code along with recording.
try to analyze
code:
report ZMMBDC no standard page heading line-size 255.
BDC Program using Session Method*****
Table Declaration *********************
tables : rmmg1,makt,mara,mvke,mg03steuer,marc,mpop,mbew.
Internal table declaration*************
data : begin of itab occurs 0,
matnr like rmmg1-matnr,
mbrsh like rmmg1-mbrsh,
mtart like rmmg1-mtart,
werks like rmmg1-werks,
lgort like rmmg1-lgort,
vkorg like rmmg1-vkorg,
vtweg like rmmg1-vtweg,
maktx like makt-maktx,
meins like mara-meins,
matkl like mara-matkl,
spart like mara-spart,
dwerk like mvke-dwerk,
taxkm like mg03steuer-taxkm,
mtpos like mvke-mtpos,
mtvfp like marc-mtvfp,
tragr like mara-tragr,
ladgr like marc-ladgr,
dismm like marc-dismm,
dispo like marc-dispo,
disls like marc-disls,
beskz like marc-beskz,
fhori like marc-fhori,
prmod like mpop-prmod,
bklas like mbew-bklas,
end of itab.
BDC table declaration ********************
data : BDC_DATA like BDCDATA occurs 0 with header line.
start-of-selection.
Function call of GUI_Upload *******************
CALL FUNCTION 'GUI_UPLOAD'
EXPORTING
FILENAME = 'c:\material.txt'
FILETYPE = 'ASC'
HAS_FIELD_SEPARATOR = ' '
HEADER_LENGTH = 0
READ_BY_LINE = 'X'
DAT_MODE = ' '
IMPORTING
FILELENGTH =
HEADER =
TABLES
DATA_TAB = itab
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.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
fuction call of BDC_Open_group*********
CALL FUNCTION 'BDC_OPEN_GROUP'
EXPORTING
CLIENT = SY-MANDT
DEST = FILLER8
GROUP = 'Material'
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.
Function call of BDC_insert ***********
repetitive execution of BDC_insert ********
loop at itab.
refresh bdc_data.
perform map_data.
CALL FUNCTION 'BDC_INSERT'
EXPORTING
TCODE = 'MM01'
POST_LOCAL = NOVBLOCAL
PRINTING = NOPRINT
SIMUBATCH = ' '
CTUPARAMS = ' '
TABLES
DYNPROTAB = BDC_DATA
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.
endloop.
function call of BDC_close_group ********
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.
Subroutinue map_data ****************
form map_data.
perform bdc1_dynpro using 'SAPLMGMM' '0060'.
perform bdc1_field using 'RMMG1-MATNR'
itab-matnr.
perform bdc1_field using 'RMMG1-MBRSH'
itab-mbrsh.
perform bdc1_field using 'RMMG1-MTART'
itab-mtart.
perform bdc1_field using 'BDC_OKCODE'
'=AUSW'.
perform bdc1_dynpro using 'SAPLMGMM' '0070'.
perform bdc1_field using 'MSICHTAUSW-KZSEL(01)'
'X'.
perform bdc1_field using 'MSICHTAUSW-KZSEL(04)'
'X'.
perform bdc1_field using 'MSICHTAUSW-KZSEL(05)'
'X'.
perform bdc1_field using 'MSICHTAUSW-KZSEL(06)'
'X'.
perform bdc1_field using 'MSICHTAUSW-KZSEL(12)'
'X'.
perform bdc1_field using 'MSICHTAUSW-KZSEL(13)'
'X'.
perform bdc1_field using 'MSICHTAUSW-KZSEL(16)'
'X'.
perform bdc1_field using 'BDC_OKCODE'
'/00'.
perform bdc1_dynpro using 'SAPLMGMM' '0080'.
perform bdc1_field using 'RMMG1-WERKS'
itab-werks.
perform bdc1_field using 'RMMG1-LGORT'
itab-lgort.
perform bdc1_field using 'RMMG1-VKORG'
itab-vkorg.
perform bdc1_field using 'RMMG1-VTWEG'
itab-vtweg.
perform bdc1_field using 'BDC_OKCODE'
'=ENTR'.
perform bdc1_dynpro using 'SAPLMGMM' '4004'.
perform bdc1_field using 'MAKT-MAKTX'
itab-maktx.
perform bdc1_field using 'MARA-MEINS'
itab-meins.
perform bdc1_field using 'MARA-MATKL'
itab-matkl.
perform bdc1_field using 'MARA-SPART'
itab-spart.
perform bdc1_field using 'BDC_OKCODE'
'=SP02'.
perform bdc1_dynpro using 'SAPLMGMM' '4004'.
perform bdc1_field using 'MAKT-MAKTX'
itab-maktx.
perform bdc1_field using 'BDC_OKCODE'
'=SP04'.
perform bdc1_dynpro using 'SAPLMGMM' '4000'.
perform bdc1_field using 'MAKT-MAKTX'
itab-maktx.
perform bdc1_field using 'MARA-MEINS'
itab-meins.
perform bdc1_field using 'MARA-SPART'
itab-spart.
perform bdc1_field using 'MVKE-DWERK'
itab-dwerk.
perform bdc1_field using 'MARA-MATKL'
itab-matkl.
perform bdc1_field using 'MG03STEUER-TAXKM(01)'
itab-taxkm.
perform bdc1_field using 'BDC_OKCODE'
'=SP05'.
perform bdc1_dynpro using 'SAPLMGMM' '4200'.
perform bdc1_field using 'MAKT-MAKTX'
itab-maktx.
perform bdc1_field using 'BDC_OKCODE'
'=MAIN'.
perform bdc1_dynpro using 'SAPLMGMM' '4000'.
perform bdc1_field using 'MAKT-MAKTX'
itab-maktx.
perform bdc1_field using 'MARA-MEINS'
itab-meins.
perform bdc1_field using 'MARA-SPART'
itab-spart.
perform bdc1_field using 'MVKE-DWERK'
itab-dwerk.
perform bdc1_field using 'MARA-MATKL'
itab-matkl.
perform bdc1_field using 'BDC_OKCODE'
'=SP05'.
perform bdc1_dynpro using 'SAPLMGMM' '4000'.
perform bdc1_field using 'MAKT-MAKTX'
itab-maktx.
perform bdc1_field using 'MVKE-MTPOS'
itab-mtpos.
perform bdc1_field using 'BDC_OKCODE'
'=SP06'.
perform bdc1_dynpro using 'SAPLMGMM' '4000'.
perform bdc1_field using 'MAKT-MAKTX'
itab-maktx.
perform bdc1_field using 'MARA-MEINS'
itab-meins.
perform bdc1_field using 'MARC-MTVFP'
itab-mtvfp.
perform bdc1_field using 'MARA-TRAGR'
itab-tragr.
perform bdc1_field using 'MARC-LADGR'
itab-ladgr.
perform bdc1_field using 'BDC_OKCODE'
'=SP12'.
perform bdc1_dynpro using 'SAPLMGMM' '4000'.
perform bdc1_field using 'MAKT-MAKTX'
itab-maktx.
perform bdc1_field using 'MARA-MEINS'
itab-meins.
perform bdc1_field using 'MARC-DISMM'
itab-dismm.
perform bdc1_field using 'MARC-DISPO'
itab-dispo.
perform bdc1_field using 'MARC-DISLS'
itab-disls.
perform bdc1_field using 'BDC_OKCODE'
'=SP13'.
perform bdc1_dynpro using 'SAPLMGMM' '4000'.
perform bdc1_field using 'MAKT-MAKTX'
itab-maktx.
perform bdc1_field using 'MARC-BESKZ'
itab-beskz.
perform bdc1_field using 'MARC-FHORI'
itab-fhori.
perform bdc1_field using 'BDC_OKCODE'
'SP16'.
perform bdc1_dynpro using 'SAPLMGMM' '4000'.
perform bdc1_field using 'MAKT-MAKTX'
itab-maktx.
perform bdc1_field using 'MARA-MEINS'
itab-meins.
perform bdc1_field using 'MPOP-PRMOD'
itab-prmod.
perform bdc1_field using 'BDC_OKCODE'
'=SP27'.
perform bdc1_dynpro using 'SAPLMGMM' '4000'.
perform bdc1_field using 'MAKT-MAKTX'
itab-maktx.
perform bdc1_field using 'BDC_OKCODE'
'/00'.
endform.
-
Start new screen
*
-
FORM BDC1_DYNPRO USING PROGRAM DYNPRO.
CLEAR bdc_data.
bdc_data-program = PROGRAM.
bdc_data-dynpro = DYNPRO.
bdc_data-dynbegin = 'X'.
APPEND bdc_data.
ENDFORM.
-
Insert field
*
-
FORM BDC1_FIELD USING FNAM FVAL.
IF FVAL SPACE.
CLEAR bdc_data.
bdc_data-fnam = FNAM.
bdc_data-fval = FVAL.
APPEND bdc_data.
ENDIF.
ENDFORM.
recording:
Recording of MM01:
T MM01 BS AA X F
SAPLMGMM 0060 X
RMMG1-MATNR scooter
RMMG1-MBRSH M
RMMG1-MTART FERT
BDC_OKCODE =AUSW
SAPLMGMM 0070 X
MSICHTAUSW-KZSEL(01) X
MSICHTAUSW-KZSEL(04) X
MSICHTAUSW-KZSEL(05) X
MSICHTAUSW-KZSEL(06) X
MSICHTAUSW-KZSEL(12) X
MSICHTAUSW-KZSEL(13) X
MSICHTAUSW-KZSEL(16) X
BDC_OKCODE /00
SAPLMGMM 0070 X
MSICHTAUSW-KZSEL(15) X
BDC_OKCODE /00
SAPLMGMM 0080 X
RMMG1-WERKS 1000
RMMG1-LGORT 0001
RMMG1-VKORG 1000
RMMG1-VTWEG 10
BDC_OKCODE =ENTR
SAPLMGMM 4004 X
BDC_SUBSCR SAPLMGMM 2004TABFRA1
BDC_SUBSCR SAPLMGD1 1002SUB1
MAKT-MAKTX 5 gear scooter
BDC_SUBSCR SAPLMGD1 2001SUB2
MARA-MEINS pc
MARA-MATKL 001
MARA-SPART 00
MARA-MTPOS_MARA NORM
BDC_SUBSCR SAPLMGD1 2561SUB3
BDC_SUBSCR SAPLMGD1 2007SUB4
MARA-GEWEI KG
BDC_SUBSCR SAPLMGD1 2005SUB5
BDC_SUBSCR SAPLMGD1 2011SUB6
BDC_SUBSCR SAPLMGD1 2033SUB7
BDC_SUBSCR SAPLMGD1 3300SUB8
BDC_SUBSCR SAPLMGD1 0001SUB9
BDC_SUBSCR SAPLMGD1 0001SUB10
BDC_OKCODE =SP02
SAPLMGMM 4004 X
BDC_SUBSCR SAPLMGMM 2004TABFRA1
BDC_SUBSCR SAPLMGD1 1002SUB1
MAKT-MAKTX 5 gear scooter
BDC_SUBSCR SAPLMGD1 2002SUB2
BDC_SUBSCR SAPLMGD1 2010SUB3
BDC_SUBSCR SAPLMGD1 2003SUB4
BDC_SUBSCR SAPLMGD1 2004SUB5
BDC_SUBSCR SAPLMGD1 2499SUB6
BDC_SUBSCR SAPLMGD1 2012SUB7
BDC_SUBSCR SAPLMGD1 0001SUB8
BDC_SUBSCR SAPLMGD1 0001SUB9
BDC_SUBSCR SAPLMGD1 0001SUB10
BDC_OKCODE /00
SAPLMGMM 4000 X
BDC_SUBSCR SAPLMGMM 2000TABFRA1
BDC_SUBSCR SAPLMGD1 1004SUB1
MAKT-MAKTX 5 gear scooter
BDC_SUBSCR SAPLMGD1 2158SUB2
MARA-MEINS PC
MARA-SPART 00
MVKE-DWERK 1000
MARA-MATKL 001
MVKE-SKTOF X
BDC_SUBSCR SAPLMGD1 2184SUB3
MG03STEUER-TAXKM(01) 1
BDC_SUBSCR SAPLMGD1 2159SUB4
BDC_SUBSCR SAPLMGD1 0001SUB5
BDC_SUBSCR SAPLMGD1 0001SUB6
BDC_OKCODE =SP05
SAPLMGMM 4200 X
BDC_SUBSCR SAPLMGMM 2200TABFRA1
BDC_SUBSCR SAPLMGD1 1004SUB1
MAKT-MAKTX 5 gear scooter
BDC_SUBSCR SAPLMGD1 2181SUB2
BDC_OKCODE =MAIN
SAPLMGMM 4000 X
BDC_SUBSCR SAPLMGMM 2000TABFRA1
BDC_SUBSCR SAPLMGD1 1004SUB1
MAKT-MAKTX 5 gear scooter
BDC_SUBSCR SAPLMGD1 2158SUB2
MARA-MEINS PC
MARA-SPART 00
MVKE-DWERK 1000
MARA-MATKL 001
MVKE-SKTOF X
BDC_SUBSCR SAPLMGD1 2184SUB3
BDC_SUBSCR SAPLMGD1 2159SUB4
BDC_SUBSCR SAPLMGD1 0001SUB5
BDC_SUBSCR SAPLMGD1 0001SUB6
BDC_OKCODE =SP05
SAPLMGMM 4000 X
BDC_SUBSCR SAPLMGMM 2000TABFRA1
BDC_SUBSCR SAPLMGD1 1004SUB1
MAKT-MAKTX 5 gear scooter
BDC_SUBSCR SAPLMGD1 2157SUB2
MVKE-MTPOS NORM
BDC_SUBSCR SAPLMGD1 2156SUB3
BDC_SUBSCR SAPLMGD1 2155SUB4
BDC_SUBSCR SAPLMGD1 0001SUB5
BDC_SUBSCR SAPLMGD1 0001SUB6
BDC_OKCODE =SP06
SAPLMGMM 4000 X
BDC_SUBSCR SAPLMGMM 2000TABFRA1
BDC_SUBSCR SAPLMGD1 1001SUB1
MAKT-MAKTX 5 gear scooter
BDC_SUBSCR SAPLMGD1 2161SUB2
MARA-MEINS PC
MARA-GEWEI KG
MARC-MTVFP 01
BDC_SUBSCR SAPLMGD1 2162SUB3
MARA-TRAGR 0001
MARC-LADGR 0001
BDC_SUBSCR SAPLMGD1 2164SUB4
BDC_SUBSCR SAPLMGD1 5802SUB5
BDC_SUBSCR SAPLWRPD 2010SUB6
BDC_OKCODE =SP12
SAPLMGMM 4000 X
BDC_SUBSCR SAPLMGMM 2000TABFRA1
BDC_SUBSCR SAPLMGD1 1001SUB1
MAKT-MAKTX 5 gear scooter
BDC_SUBSCR SAPLMGD1 2481SUB2
MARA-MEINS PC
MARC-DISGR 0031
BDC_SUBSCR SAPLMGD1 2482SUB3
MARC-DISMM pd
MARC-DISPO 000
BDC_SUBSCR SAPLMGD1 2483SUB4
MARC-DISLS ex
BDC_SUBSCR SAPLMGD1 2480SUB5
BDC_SUBSCR SAPLMGD1 2479SUB6
BDC_OKCODE =SP13
SAPLMGMM 4000 X
BDC_SUBSCR SAPLMGMM 2000TABFRA1
BDC_SUBSCR SAPLMGD1 1001SUB1
MAKT-MAKTX 5 gear scooter
BDC_SUBSCR SAPLMGD1 2484SUB2
MARC-BESKZ x
BDC_SUBSCR SAPLMGD1 2485SUB3
MARC-FHORI 000
BDC_SUBSCR SAPLMGD1 2486SUB4
BDC_SUBSCR SAPLMGD1 0001SUB5
BDC_SUBSCR SAPLMGD1 0001SUB6
BDC_OKCODE SP16
SAPLMGMM 4000 X
BDC_SUBSCR SAPLMGMM 2000TABFRA1
BDC_SUBSCR SAPLMGD1 1001SUB1
MAKT-MAKTX 5 gear scooter
BDC_SUBSCR SAPLMGD1 2524SUB2
MARA-MEINS PC
MPOP-PRMOD D
MARC-PERKZ M
BDC_SUBSCR SAPLMGD1 2525SUB3
MPOP-PERAN 60
MPOP-ANZPR 12
BDC_SUBSCR SAPLMGD1 2523SUB4
MPOP-KZINI X
MPOP-SIGGR 4.000
MARC-AUTRU X
MPOP-MODAV 2
BDC_SUBSCR SAPLMGD1 2552SUB5
BDC_SUBSCR SAPLMGD1 0001SUB6
BDC_OKCODE =SP27
SAPLMGMM 4000 X
BDC_SUBSCR SAPLMGMM 2000TABFRA1
BDC_SUBSCR SAPLMGD1 1009SUB1
MAKT-MAKTX 5 gear scooter
BDC_SUBSCR SAPLMGD1 2953SUB2
BDC_SUBSCR SAPLMGD1 2952SUB3
BDC_SUBSCR SAPLMGD1 2902SUB4
MBEW-BKLAS 7920
MBEW-VPRSV S
MBEW-PEINH 1
BDC_SUBSCR SAPLMGD1 0001SUB5
BDC_SUBSCR SAPLMGD1 0001SUB6
BDC_OKCODE =BU
Test DATA
SCOOTER MECHANICAL-ENGINEERING FINISHED-PRODUCT 1000 0001 1000 10 5GEAR-SCOOTER PC 001 c0 1000 1 NORM 01 0001 0001 PD 000 EX X 000 D 7920
regards,
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi,
It is advicable to use FM 'BAPI_MATERIAL_SAVEDATA' instead of BDC. That will surely save you lot of headches.
I hope this helps,
Regards
Raju Chitale
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi,
At the time of recording select the check box not a batch input sesion.
And after entering into MM01 press the F8-->Next Screen
F7-->Previous Screen
Regards
Sandipan
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
84 | |
10 | |
10 | |
9 | |
7 | |
7 | |
6 | |
5 | |
4 | |
4 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.