cancel
Showing results for 
Search instead for 
Did you mean: 

how to record diffrent views in BDC for MM01

Former Member
0 Kudos

hi friends,

can pls give slo for my problem

how to record diffrent views in BDC for MM01

Accepted Solutions (0)

Answers (3)

Answers (3)

Former Member
0 Kudos

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,

Former Member
0 Kudos

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

Former Member
0 Kudos

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