2006 May 09 6:52 PM
2006 May 10 5:54 AM
Hai Kiran
check with this code
include bdcrecx1.
tables : mara.
data : begin of it_mara occurs 0,
matnr like mara-matnr,
mbrsh like mara-mbrsh,
mtart like mara-mtart,
maktx like makt-maktx,
meins like mara-meins,
end of it_mara.
start-of-selection.
perform upload_data.
perform open_group.
loop at it_mara.
perform bdc_dynpro using 'SAPLMGMM' '0060'.
perform bdc_field using 'BDC_CURSOR'
'RMMG1-MATNR'.
perform bdc_field using 'BDC_OKCODE'
'/00'.
perform bdc_field using 'RMMG1-MATNR'
it_mara-matnr.
perform bdc_field using 'RMMG1-MBRSH'
it_mara-mbrsh.
perform bdc_field using 'RMMG1-MTART'
it_mara-mtart.
perform bdc_dynpro using 'SAPLMGMM' '0070'.
perform bdc_field using 'BDC_CURSOR'
'MSICHTAUSW-DYTXT(02)'.
perform bdc_field using 'BDC_OKCODE'
'=ENTR'.
perform bdc_field using 'MSICHTAUSW-KZSEL(01)'
'X'.
perform bdc_field using 'MSICHTAUSW-KZSEL(02)'
'X'.
perform bdc_dynpro using 'SAPLMGMM' '4004'.
perform bdc_field using 'BDC_OKCODE'
'=BU'.
perform bdc_field using 'MAKT-MAKTX'
it_mara-maktx.
perform bdc_field using 'BDC_CURSOR'
'MARA-MEINS'.
perform bdc_field using 'MARA-MEINS'
it_mara-meins.
perform bdc_field using 'MARA-MTPOS_MARA'
'NORM'.
perform bdc_transaction using 'MM01'.
endloop.
perform close_group.
&----
*& Form upload_data
&----
text
----
--> p1 text
<-- p2 text
----
FORM upload_data .
CALL FUNCTION 'GUI_UPLOAD'
EXPORTING
FILENAME = 'c:\mat_bdc.txt'
FILETYPE = 'ASC'
TABLES
DATA_TAB = it_mara.
IF SY-SUBRC = 0.
SORT IT_MARA BY MATNR.
ENDIF.
ENDFORM. " upload_data
flat file structure is
PRANIT_011 CCOUP This is Testing material kg
PRANIT_012 CCOUP This is Testing material kg
PRANIT_013 CCOUP This is Testing material kg
PRANIT_014 CCOUP This is Testing material kg
PRANIT_015 CCOUP This is Testing material kg
when your selecting views
this particular material will belongs to Po/Sales or some other areas .
when you select basic 1 --it gives description
select basic 2 -- it gives tax ,amount, base unit of measurement
Thanks & Regards
Sreenivasulu P
2006 May 09 6:54 PM
hi Kiran,
Give me your mail id i will send u the code..
Regards,
Santosh
2006 May 09 6:55 PM
I suggest using the BAPI instead of BDC.
report zrich_0003 .
data: headdata type bapimathead.
data: clientdata type bapi_mara.
data: clientdatax type bapi_marax.
data: descdata type table of BAPI_MAKT with header line.
data: return type bapiret2 .
data: returnm type table of bapi_matreturn2 with header line.
data: xmara type mara.
parameters: p_matnr type mara-matnr.
headdata-material = p_matnr.
headdata-ind_sector = 'M'.
headdata-matl_type = 'FERT'.
headdata-basic_view = 'X'.
clientdata-BASE_UOM = 'EA'.
clientdatax-BASE_UOM = 'X'.
clientdata-old_mat_no = 'Old Material'.
clientdatax-old_mat_no = 'X'.
clientdata-division = '00'.
clientdatax-division = 'X'.
descdata-LANGU = sy-langu.
descdata-MATL_DESC = 'This is the description'.
append descdata.
call function 'BAPI_MATERIAL_SAVEDATA'
exporting
headdata = headdata
clientdata = clientdata
clientdatax = clientdatax
* PLANTDATA =
* PLANTDATAX =
* FORECASTPARAMETERS =
* FORECASTPARAMETERSX =
* PLANNINGDATA =
* PLANNINGDATAX =
* STORAGELOCATIONDATA =
* STORAGELOCATIONDATAX =
* VALUATIONDATA =
* VALUATIONDATAX =
* WAREHOUSENUMBERDATA =
* WAREHOUSENUMBERDATAX =
* SALESDATA =
* SALESDATAX =
* STORAGETYPEDATA =
* STORAGETYPEDATAX =
importing
return = return
tables
MATERIALDESCRIPTION = descdata
* UNITSOFMEASURE =
* UNITSOFMEASUREX =
* INTERNATIONALARTNOS =
* MATERIALLONGTEXT =
* TAXCLASSIFICATIONS =
returnmessages = returnm
* PRTDATA =
* PRTDATAX =
* EXTENSIONIN =
* EXTENSIONINX =
.
check sy-subrc = 0.
Regards,
Rich Heilman
2006 May 09 6:58 PM
hi
my mail id is: touchmachi18@yahoo.co.in
but my requirement is in bdc only can u plz help me
thanks regards,
kiran kumar.m
2006 May 09 7:04 PM
hi Kiran,
Check out this code this is related to BDC ONLY
Fill the Screen of MM01 - First Screen
PERFORM FILL_DYNPRO USING:
'X' 'SAPLMGMM' '0060',
' ' 'RMMG1-MATNR' P_MATNR,
' ' 'RMMG1-MBRSH' V_MBRSH,
' ' 'RMMG1-MTART' V_MTART,
' ' 'RMMG1_REF-MATNR' P_RFMAT,
' ' 'BDC_OKCODE' '/00'.
Fill the Screen of MM01 - Select All Views
LOOP AT T_VIEW.
AT FIRST.
PERFORM FILL_DYNPRO USING:
'X' 'SAPLMGMM' '0070'.
ENDAT.
IF T_VIEW-PSTA2 NE SPACE AND T_VIEW-VIEWN < 22.
MOVE 'MSICHTAUSW-KZSEL(&)' TO V_FLDNM.
REPLACE '&' WITH T_VIEW-VIEWN INTO V_FLDNM.
PERFORM FILL_DYNPRO USING:
' ' V_FLDNM 'X'.
ENDIF.
AT LAST.
PERFORM FILL_DYNPRO USING:
' ' 'BDC_OKCODE' '/00'.
ENDAT.
ENDLOOP.
Fill the Screen of MM01 - Organizational Data for New & Ref Material
PERFORM FILL_DYNPRO USING:
'X' 'SAPLMGMM' '0080'.
PERFORM FILL_DYNPRO USING:
' ' 'RMMG1-WERKS' T_ZMCMATXTND-WERKS.
IF p_bschp EQ ' '.
PERFORM fill_dynpro USING:
' ' 'RMMG1_REF-WERKS' t_zmcmatxtnd-rfwrk.
ELSE.
PERFORM FILL_DYNPRO USING:
' ' 'RMMG1_REF-WERKS' T_ZMCMATXTND-RFWRK.
ENDIF.
IF F_LVIEW EQ 'Y'.
PERFORM FILL_DYNPRO USING:
' ' 'RMMG1-LGORT' T_ZMCMATXTND-LGORT,
' ' 'RMMG1_REF-LGORT' T_ZMCMATXTND-RFLGO.
ENDIF.
IF F_SVIEW EQ 'Y'.
PERFORM FILL_DYNPRO USING:
' ' 'RMMG1-VKORG' T_ZMCMATXTND-VKORG,
' ' 'RMMG1-VTWEG' T_ZMCMATXTND-VTWEG,
' ' 'RMMG1_REF-VKORG' T_ZMCMATXTND-RFVKO,
' ' 'RMMG1_REF-VTWEG' T_ZMCMATXTND-RFVTW.
ENDIF.
PERFORM FILL_DYNPRO USING:
' ' 'BDC_OKCODE' '/00'.
Fill the Screen of MM01 - Data Screens w/ Override Parameters
LOOP AT T_VIEW.
IF T_VIEW-PSTA2 NE SPACE.
" perform fill_dynpro using:
" 'X' t_view-progn t_view-dypno.
CONCATENATE '=SP' T_VIEW-VIEWN INTO V_FLDNM.
PERFORM FILL_DYNPRO USING:
'X' 'SAPLMGMM' '4000',
' ' 'BDC_OKCODE' V_FLDNM.
Overwrite Old Material Number on Basic Data Screen
IF T_VIEW-VIEWN = 1. "Basic Data 1
PERFORM FILL_DYNPRO USING:
'X' 'SAPLMGMM' '4000',
' ' 'MARA-BISMT' p_bismt, "old Material Number
' ' 'MARA-EXTWG' ' ', "Ext Mat Group to be blank.
' ' 'BDC_OKCODE' '/00'.
ENDIF.
IF T_VIEW-VIEWN = 2. " Basi Data 2
PERFORM FILL_DYNPRO USING:
'X' 'SAPLMGMM' '4000',
' ' 'MARA-KZUMW' P_LEAD,
' ' 'MARA-ZEINR' ' '," Booking Part is blank for local part
' ' 'BDC_OKCODE' '/00'.
ENDIF.
Overwrite Delivery Plant, Sales Status and Sales Status Valid Date
on the Sales Organization Data Screen
IF T_VIEW-VIEWN = 4. "Sales: Sales Org Data 1
IF T_ZMCMATXTND-DWERK NE SPACE.
PERFORM FILL_DYNPRO USING:
'X' 'SAPLMGMM' '4000',
' ' 'MVKE-DWERK' T_ZMCMATXTND-DWERK,
Start of delete by venkat 03/09/06 inc# 55365
' ' 'BDC_OKCODE' '/00',
End of delete by venkat 03/09/06 inc# 55365
' ' 'BDC_OKCODE' '=SP04'.
ENDIF.
IF T_ZMCMATXTND-VMSTA NE SPACE.
PERFORM FILL_DYNPRO USING:
'X' 'SAPLMGMM' '4000',
' ' 'MVKE-VMSTA' T_ZMCMATXTND-VMSTA,
' ' 'MVKE-VMSTD' V_VMSTD,
' ' 'BDC_OKCODE' '/00'.
ENDIF.
IF T_ZMCMATXTND-WERKS = '0301'
OR T_ZMCMATXTND-WERKS = 'RTC1'" Rensas Canada, Pra 07/25/2005
OR T_ZMCMATXTND-WERKS = '0311'
OR T_ZMCMATXTND-WERKS = '0341'.
PERFORM FILL_DYNPRO USING: "Tax Detail
'X' 'SAPLMGMM' '4200',
' ' 'BDC_OKCODE' '/00'.
ENDIF.
ENDIF.
IF P_APPL <> SPACE AND T_VIEW-VIEWN = 5.
CONCATENATE '=SP' T_VIEW-VIEWN INTO V_FLDNM.
PERFORM FILL_DYNPRO USING:
'X' 'SAPLMGMM' '4000',
' ' 'MVKE-MVGR3' P_APPL, "Application Code
' ' 'BDC_OKCODE' V_FLDNM.
ENDIF.
IF p_bschp EQ 'X' AND t_view-viewn = 5.
IF T_VIEW-VIEWN = 5.
PERFORM FILL_DYNPRO USING:
'X' 'SAPLMGMM' '4000',
' ' 'MVKE-MTPOS' t_zmcmatxtnd-bcmtp, "Item Category Group
' ' 'BDC_OKCODE' '=SP06'.
ENDIF.
Put Extra ENTER on Sales Text Screen if Text Exists for Ref Material
IF T_VIEW-VIEWN = 8.
V_TDNAM+00(18) = P_RFMAT.
V_TDNAM+18(04) = T_ZMCMATXTND-RFVKO.
V_TDNAM+22(02) = T_ZMCMATXTND-RFVTW.
SELECT * FROM STXH
WHERE TDOBJECT EQ 'MVKE'
AND TDNAME EQ V_TDNAM .
ENDSELECT.
PERFORM FILL_DYNPRO USING:
'X' 'SAPLMGMM' '4040',
' ' 'BDC_OKCODE' '/00'.
ENDIF.
IF T_VIEW-VIEWN = 9 .
PERFORM FILL_DYNPRO USING: 'X' 'SAPLMGMM' '4000'.
PERFORM FILL_DYNPRO USING: ' ' 'MARA-MFRPN' ' '.
PERFORM FILL_DYNPRO USING: ' ' 'MARC-KAUTB' ' '.
PERFORM FILL_DYNPRO USING: ' ' 'MARC-WEBAZ' ' '.
**-- Pricing Part is blank for local part
PERFORM fill_dynpro USING: ' ' 'MARC-MFRPN' ' '.
PERFORM FILL_DYNPRO USING: ' ' 'BDC_OKCODE' '=SP09'.
ENDIF.
IF T_VIEW-VIEWN = 13.
PERFORM FILL_DYNPRO USING: 'X' 'SAPLMGMM' '4000'.
IF NOT P_GRPROC IS INITIAL.
PERFORM FILL_DYNPRO USING: ' ' 'MARC-WEBAZ' P_GRPROC.
ENDIF.
PERFORM FILL_DYNPRO USING: ' ' 'MARC-EISBE'(004) ' '.
PERFORM FILL_DYNPRO USING: ' ' 'BDC_OKCODE' '=SP13'.
ENDIF.
IF T_VIEW-VIEWN = 14 .
V_PARTALG = 4.
PERFORM FILL_DYNPRO USING: 'X' 'SAPLMGMM' '4000',
' ' 'MARC-Z_PRTNO_ALG' V_PARTALG,
' ' 'MARC-Z_FCT_TO_BCKLOG' ' '.
PERFORM FILL_DYNPRO USING: ' ' 'BDC_OKCODE' '=SP14'.
ENDIF.
IF T_VIEW-VIEWN = 11. "Purchase order text
PERFORM FILL_DYNPRO USING: "Sales order text
'X' 'SAPLMGMM' '4040',
' ' 'BDC_OKCODE' '/00'.
SELECT LEX1 INTO
FROM
IF IS RM03M-LTEX1[] NOT INITIAL.
PERFORM FILL_DYNPRO USING:
'X' 'SAPLMGMM' '4040',
' ' 'BDC_OKCODE' '/00'.
ENDIF.
Overwrite MRP Data on MRP screen
IF T_VIEW-VIEWN = 12 . "MRP 1 screen
IF T_ZMCMATXTND-WERKS EQ 'RTC1'.
P_DISPO = 'rtc'.
ENDIF.
PERFORM FILL_DYNPRO USING:
'X' 'SAPLMGMM' '4000',
' ' 'MARC-DISPO' P_DISPO,"MRP Controller
' ' 'BDC_OKCODE' '/00'.
ENDIF.
ENDIF.
AT LAST.
remove foreign trade commondity code
PERFORM FILL_DYNPRO USING:
'X' 'SAPLMGMM' '4000',
' ' 'BDC_OKCODE' '=SP07'.
PERFORM FILL_DYNPRO USING:
'X' 'SAPLMGMM' '4004',
' ' 'MARC-STAWN' '',
' ' 'MARC-MTVER' '',
' ' 'BDC_OKCODE' 'BU'.
ENDAT.
ENDLOOP.
Call Transaction MM01
SY-SUBRC = '4'.
CALL TRANSACTION 'MM01'
USING T_BDC_TAB
MODE P_BDMOD
UPDATE 'S'
MESSAGES INTO T_MSG_TAB .
Regards,
Santosh
Note: Reward Points if helpful
2006 May 09 7:10 PM
hi vijay,
thanks for all
can u give me the complete code on bdc only and then how to know the selected view of the for a materials here for different materials different view are appearing...
please give me the complete code.........
thanks regards,
kiran kumar.m
2006 May 11 8:51 AM
hi santosh,
can u give me the complete code for this one
and i want to know the structre of t_view in u r code
and how can i recognize the selected views?
thanks regards,
kiran
2006 May 09 6:55 PM
Hi,
Check the code..
report ZTES_MATUP
no standard page heading line-size 255.
include bdcrecx1.
parameters: dataset(132) lower case.
*** DO NOT CHANGE - the generated data section - DO NOT CHANGE ***
*
* If it is nessesary to change the data section use the rules:
* 1.) Each definition of a field exists of two lines
* 2.) The first line shows exactly the comment
* '* data element: ' followed with the data element
* which describes the field.
* If you don't have a data element use the
* comment without a data element name
* 3.) The second line shows the fieldname of the
* structure, the fieldname must consist of
* a fieldname and optional the character '_' and
* three numbers and the field length in brackets
* 4.) Each field must be type C.
*
*** Generated data section with specific formatting - DO NOT CHANGE ***
data: begin of record,
* data element: MTART
MTART_001(004),
* data element: MATNR
MATNR_002(018),
* data element: XFELD
KZSEL_01_003(001),
* data element: XFELD
KZSEL_02_004(001),
* data element: MAKTX
MAKTX_005(040),
* data element: MEINS
MEINS_006(003),
* data element: SPART
SPART_007(002),
* data element: MAKTX
MAKTX_008(040),
end of record.
*** End generated data section ***
start-of-selection.
perform open_dataset using dataset.
perform open_group.
do.
read dataset dataset into record.
if sy-subrc <> 0. exit. endif.
perform bdc_dynpro using 'SAPLMGMM' '0060'.
perform bdc_field using 'BDC_CURSOR'
'RMMG1-AENNR'.
perform bdc_field using 'BDC_OKCODE'
'AUSW'.
perform bdc_field using 'RMMG1-MTART'
record-MTART_001.
perform bdc_field using 'RMMG1-MATNR'
record-MATNR_002.
perform bdc_dynpro using 'SAPLMGMM' '0070'.
perform bdc_field using 'BDC_CURSOR'
'MSICHTAUSW-DYTXT(02)'.
perform bdc_field using 'BDC_OKCODE'
'=ENTR'.
perform bdc_field using 'MSICHTAUSW-KZSEL(01)'
record-KZSEL_01_003.
perform bdc_field using 'MSICHTAUSW-KZSEL(02)'
record-KZSEL_02_004.
perform bdc_dynpro using 'SAPLMGMM' '4004'.
perform bdc_field using 'BDC_OKCODE'
'/00'.
perform bdc_field using 'MAKT-MAKTX'
record-MAKTX_005.
perform bdc_field using 'BDC_CURSOR'
'MARA-SPART'.
perform bdc_field using 'MARA-MEINS'
record-MEINS_006.
perform bdc_field using 'MARA-SPART'
record-SPART_007.
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'
record-MAKTX_008.
perform bdc_dynpro using 'SAPLSPO1' '0300'.
perform bdc_field using 'BDC_OKCODE'
'=YES'.
perform bdc_transaction using 'MM01'.
enddo.
perform close_group.
perform close_dataset using dataset.
Regards
vijay
2006 May 09 6:58 PM
Hi,
also check the code using BAPI also...
REPORT Z_BAPI_MAT.
**********************************************************************
* STRUCTURE DECLARATIONS *
**********************************************************************
TABLES: BAPIMATHEAD, "Headerdata
BAPI_MARA, "Clientdata
BAPI_MARAX, "Clientdatax
BAPI_MARC, "Plantdata
BAPI_MARCX, "Plantdatax
BAPI_MAKT, "Material description
BAPIRET2. "Return messages
DATA:V_FILE TYPE STRING.
DATA:
BEGIN OF LSMW_MATERIAL_MASTER,
MATNR(018) TYPE C, "Material number
MTART(004) TYPE C, "Material type
MBRSH(001) TYPE C, "Industry sector
WERKS(004) TYPE C, "Plant
MAKTX(040) TYPE C, "Material description
DISMM(002) TYPE C, "Extra Field Added In the Program as itsrequired
MEINS(003) TYPE C, "Base unit of measure
MATKL(009) TYPE C, "Material group
SPART(002) TYPE C, "Division
LABOR(003) TYPE C, "Lab/office
PRDHA(018) TYPE C, "Product hierarchy
MSTAE(002) TYPE C, "X-plant matl status
MTPOS_MARA(004) TYPE C, "Gen item cat group
BRGEW(017) TYPE C, "Gross weight
GEWEI(003) TYPE C, "Weight unit
NTGEW(017) TYPE C, "Net weight
GROES(032) TYPE C, "Size/Dimensions
MAGRV(004) TYPE C, "Matl grp pack matls
BISMT(018) TYPE C, "Old material number
WRKST(048) TYPE C, "Basic material
PROFL(003) TYPE C, "DG indicator profile
KZUMW(001) TYPE C, "Environmentally rlvt
BSTME(003) TYPE C, "Order unit
VABME(001) TYPE C,
EKGRP(003) TYPE C, "Purchasing group
XCHPF(001) TYPE C, "Batch management
EKWSL(004) TYPE C, "Purchasing key value
WEBAZ(003) TYPE C, "GR processing time
MFRPN(040) TYPE C, "Manufacturer part number
MFRNR(010) TYPE C, "Manufacturer number
VPRSV(001) TYPE C, "Price control indicator
STPRS(015) TYPE C, "Standard price
BWPRH(014) TYPE C, "Commercial price1
BKLAS(004) TYPE C, "Valuation class
END OF LSMW_MATERIAL_MASTER.
**********************************************************************
* INTERNAL TABLE DECLARATIONS *
**********************************************************************
*to store the input data
DATA:
BEGIN OF it_matmaster OCCURS 0.
INCLUDE STRUCTURE LSMW_MATERIAL_MASTER.
DATA:
END OF it_matmaster.
*for material description
DATA:BEGIN OF IT_MATERIALDESC OCCURS 0.
INCLUDE STRUCTURE BAPI_MAKT .
DATA:END OF IT_MATERIALDESC.
*to return messages
DATA:BEGIN OF IT_RETURN OCCURS 0.
INCLUDE STRUCTURE BAPIRET2.
DATA:END OF IT_RETURN.
************************************************************************
* SELECTION SCREEN
************************************************************************
SELECTION-SCREEN BEGIN OF BLOCK B1 WITH FRAME TITLE TEXT-002.
PARAMETERS:P_FILE LIKE RLGRAP-FILENAME OBLIGATORY.
SELECTION-SCREEN END OF BLOCK B1 .
************************************************************************
* AT SELECTION SCREEN
************************************************************************
AT SELECTION-SCREEN ON VALUE-REQUEST FOR P_FILE.
CALL FUNCTION 'F4_FILENAME'
EXPORTING
PROGRAM_NAME = SYST-CPROG
DYNPRO_NUMBER = SYST-DYNNR
FIELD_NAME = 'P_FILE'
IMPORTING
FILE_NAME = P_FILE.
**********************************************************************
* TO UPLOAD THE DATA *
**********************************************************************
START-OF-SELECTION.
V_FILE = P_FILE.
CALL FUNCTION 'GUI_UPLOAD'
EXPORTING
filename = V_FILE
FILETYPE = 'ASC'
HAS_FIELD_SEPARATOR = 'X'
* HEADER_LENGTH = 0
* READ_BY_LINE = 'X'
* DAT_MODE = ' '
* IMPORTING
* FILELENGTH =
* HEADER =
tables
data_tab = IT_MATMASTER
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.
**********************************************************************
* DATA POPULATIONS *
**********************************************************************
LOOP AT IT_MATMASTER.
BAPIMATHEAD-MATERIAL = IT_MATMASTER-MATNR.
BAPIMATHEAD-IND_SECTOR = IT_MATMASTER-Mbrsh.
BAPIMATHEAD-MATL_TYPE = IT_MATMASTER-Mtart.
BAPIMATHEAD-BASIC_VIEW = 'X'.
BAPIMATHEAD-PURCHASE_VIEW = 'X'.
BAPIMATHEAD-ACCOUNT_VIEW = 'X'.
BAPI_MARA-MATL_GROUP = IT_MATMASTER-MATKL.
BAPI_MARA-OLD_MAT_NO = IT_MATMASTER-BISMT.
BAPI_MARA-BASE_UOM = IT_MATMASTER-MEINS.
BAPI_MARA-BASIC_MATL = IT_MATMASTER-WRKST.
BAPI_MARA-MFR_NO = IT_MATMASTER-MFRNR.
BAPI_MARAX-MATL_GROUP = 'X'.
BAPI_MARAX-OLD_MAT_NO = 'X'.
BAPI_MARAX-BASE_UOM = 'X'.
BAPI_MARAX-BASIC_MATL = 'X'.
BAPI_MARAX-MFR_NO = 'X'.
BAPI_MARC-PLANT = IT_MATMASTER-WERKS.
BAPI_MARC-PUR_GROUP = IT_MATMASTER-EKGRP.
BAPI_MARCX-PLANT = IT_MATMASTER-WERKS.
BAPI_MARCX-PUR_GROUP = 'X'.
IT_MATERIALDESC-LANGU = 'EN'.
IT_MATERIALDESC-MATL_DESC = IT_MATMASTER-MAKTX.
append IT_materialdesc.
CALL FUNCTION 'BAPI_MATERIAL_SAVEDATA'
EXPORTING
headdata = BAPIMATHEAD
CLIENTDATA = BAPI_MARA
CLIENTDATAX = BAPI_MARAx
PLANTDATA = BAPI_MARc
PLANTDATAX = BAPI_MARcx
* FORECASTPARAMETERS =
* FORECASTPARAMETERSX =
* PLANNINGDATA =
* PLANNINGDATAX =
* STORAGELOCATIONDATA =
* STORAGELOCATIONDATAX =
* VALUATIONDATA =
* VALUATIONDATAX =
* WAREHOUSENUMBERDATA =
* WAREHOUSENUMBERDATAX =
* SALESDATA =
* SALESDATAX =
* STORAGETYPEDATA =
* STORAGETYPEDATAX =
* FLAG_ONLINE = ' '
* FLAG_CAD_CALL = ' '
IMPORTING
RETURN = IT_RETURN
TABLES
MATERIALDESCRIPTION = IT_MATERIALDESC
* UNITSOFMEASURE =
* UNITSOFMEASUREX =
* INTERNATIONALARTNOS =
* MATERIALLONGTEXT =
* TAXCLASSIFICATIONS =
* RETURNMESSAGES =
* PRTDATA =
* PRTDATAX =
* EXTENSIONIN =
* EXTENSIONINX =
.
WRITE:/ IT_RETURN-TYPE,
2 IT_RETURN-ID,
22 IT_RETURN-NUMBER,
25 IT_RETURN-MESSAGE.
* IT_RETURN-LOG_NO,
* IT_RETURN-LOG_MSG_NO,
* IT_RETURN-MESSAGE_V1,
* IT_RETURN-MESSAGE_V2,
* IT_RETURN-MESSAGE_V3,
* IT_RETURN-MESSAGE_V4,
* IT_RETURN-PARAMETER,
* IT_RETURN-ROW,
* IT_RETURN-FIELD,
* IT_RETURN-SYSTEM.
ENDLOOP.
Regards
vijay
2006 May 10 5:54 AM
Hai Kiran
check with this code
include bdcrecx1.
tables : mara.
data : begin of it_mara occurs 0,
matnr like mara-matnr,
mbrsh like mara-mbrsh,
mtart like mara-mtart,
maktx like makt-maktx,
meins like mara-meins,
end of it_mara.
start-of-selection.
perform upload_data.
perform open_group.
loop at it_mara.
perform bdc_dynpro using 'SAPLMGMM' '0060'.
perform bdc_field using 'BDC_CURSOR'
'RMMG1-MATNR'.
perform bdc_field using 'BDC_OKCODE'
'/00'.
perform bdc_field using 'RMMG1-MATNR'
it_mara-matnr.
perform bdc_field using 'RMMG1-MBRSH'
it_mara-mbrsh.
perform bdc_field using 'RMMG1-MTART'
it_mara-mtart.
perform bdc_dynpro using 'SAPLMGMM' '0070'.
perform bdc_field using 'BDC_CURSOR'
'MSICHTAUSW-DYTXT(02)'.
perform bdc_field using 'BDC_OKCODE'
'=ENTR'.
perform bdc_field using 'MSICHTAUSW-KZSEL(01)'
'X'.
perform bdc_field using 'MSICHTAUSW-KZSEL(02)'
'X'.
perform bdc_dynpro using 'SAPLMGMM' '4004'.
perform bdc_field using 'BDC_OKCODE'
'=BU'.
perform bdc_field using 'MAKT-MAKTX'
it_mara-maktx.
perform bdc_field using 'BDC_CURSOR'
'MARA-MEINS'.
perform bdc_field using 'MARA-MEINS'
it_mara-meins.
perform bdc_field using 'MARA-MTPOS_MARA'
'NORM'.
perform bdc_transaction using 'MM01'.
endloop.
perform close_group.
&----
*& Form upload_data
&----
text
----
--> p1 text
<-- p2 text
----
FORM upload_data .
CALL FUNCTION 'GUI_UPLOAD'
EXPORTING
FILENAME = 'c:\mat_bdc.txt'
FILETYPE = 'ASC'
TABLES
DATA_TAB = it_mara.
IF SY-SUBRC = 0.
SORT IT_MARA BY MATNR.
ENDIF.
ENDFORM. " upload_data
flat file structure is
PRANIT_011 CCOUP This is Testing material kg
PRANIT_012 CCOUP This is Testing material kg
PRANIT_013 CCOUP This is Testing material kg
PRANIT_014 CCOUP This is Testing material kg
PRANIT_015 CCOUP This is Testing material kg
when your selecting views
this particular material will belongs to Po/Sales or some other areas .
when you select basic 1 --it gives description
select basic 2 -- it gives tax ,amount, base unit of measurement
Thanks & Regards
Sreenivasulu P