Download as txt, pdf, or txt
Download as txt, pdf, or txt
You are on page 1of 4

REPORT zmmbatch_create_material.

DATA tkstatus LIKE t130m-pstat.


DATA anzgstatus LIKE t130m-pstat.
INCLUDE zbdcrecx2.
DATA xbdcdata LIKE bdcdata OCCURS 10 WITH HEADER LINE.
DATA new_matnr.
DATA werks_entered.
DATA cr.
DATA flag.
DATA text1(50).
DATA text2(10).
TABLES : mara.
TABLES : marc.
TABLES : t134.
TABLES : t130m.

DATA : BEGIN OF gor OCCURS 10,


guifu LIKE mbildtab-guifu,
END OF gor.
DATA: BEGIN OF ztemel OCCURS 10,
matnr LIKE mara-matnr.
DATA: END OF ztemel.

DATA : BEGIN OF created OCCURS 10,


pstat LIKE mbildtab-pstat,
guifu LIKE mbildtab-guifu,
END OF created.

DATA: BEGIN OF bildtab OCCURS 30.


INCLUDE STRUCTURE mbildtab.
DATA: END OF bildtab.

* DATA TAB

DATA : BEGIN OF datatab OCCURS 10,


matnr(50),
mbrsh(50),
mtart(50),
*TEMEL VERILER
mtxtr(40), " malzeme k�sa metni TR
mtxen(40), " malzeme k�sa metni EN
meins(20), " T�B
matkl(20), " mal grubu
bismt(50), " eski malzeme
labor(3), " Laboratuvar
mstae(50), "Malzeme durumu
end of datatab.
* URETIM
DATA : BEGIN OF uretim OCCURS 10,
matnr LIKE mara-matnr,
mbrsh LIKE mara-mbrsh,
mtart LIKE mara-mtart,
*TEMEL VER�LER
mtxtr LIKE makt-maktx,
mtxen LIKE makt-maktx,
meins LIKE mara-meins,
matkl LIKE mara-matkl,
bismt LIKE mara-bismt,
labor LIKE mara-labor,
mstae LIKE mara-mstae, "Malzeme durumu

end of uretim.

START-OF-SELECTION.
PERFORM organise_imported_data.
PERFORM open_group.
PERFORM batch_input.
PERFORM close_group.

*&---------------------------------------------------------------------*
*& Form organise_impoted_data
*&---------------------------------------------------------------------*
*----------------------------------------------------------------------*
* --> p1 text
* <-- p2 text
*----------------------------------------------------------------------*
FORM organise_imported_data.
CALL FUNCTION 'WS_UPLOAD'
EXPORTING
filename = fname
filetype = 'DAT'
TABLES
data_tab = datatab.
IF sy-subrc <> 0.
MESSAGE s000(zith) WITH 'Dosya a��lamad�'.
STOP.
ENDIF.
DELETE DATATAB WHERE MATNR EQ SPACE.

*
LOOP AT datatab.
MOVE-CORRESPONDING datatab TO uretim.
APPEND uretim.
ENDLOOP.
" M�P 4

ENDFORM. " organise_imported_data


*&---------------------------------------------------------------------*
*& Form batch_input
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* --> p1 text
* <-- p2 text
*----------------------------------------------------------------------*
FORM batch_input.
DATA: znobasic TYPE i.

SORT uretim.
LOOP AT uretim.
znobasic = 1.
CLEAR xbdcdata.
REFRESH xbdcdata.
CALL FUNCTION 'MATERIAL_BTCI_SELECTION_NEW'
EXPORTING
material = uretim-matnr
materialart = uretim-mtart
selection = 'K'
tcode = 'MM01'
TABLES
btci_d0070 = xbdcdata.

ON CHANGE OF uretim-matnr.
znobasic = 0.
ENDON.

TRANSLATE uretim-matnr TO UPPER CASE.


SELECT SINGLE * FROM mara WHERE matnr EQ uretim-matnr.
IF sy-subrc NE 0.
* Temel veriler i�in
READ TABLE xbdcdata WITH KEY fnam = 'MSICHTAUSW-KZSEL(01)'.
IF sy-subrc EQ 0.
xbdcdata-fval = 'X'.
MODIFY xbdcdata INDEX sy-tabix.
ENDIF.
ELSE.
znobasic = 1.
ENDIF.

PERFORM bdc_dynpro USING 'SAPLMGMM' '0060'.


PERFORM bdc_field USING 'RMMG1-MATNR' uretim-matnr.
PERFORM bdc_field USING 'RMMG1-MBRSH' uretim-mbrsh.
PERFORM bdc_field USING 'RMMG1-MTART' uretim-mtart.
PERFORM bdc_dynpro USING 'SAPLMGMM' '0070'.
LOOP AT xbdcdata WHERE fval ='X'.
PERFORM bdc_field USING xbdcdata-fnam xbdcdata-fval.
ENDLOOP.
PERFORM bdc_field USING 'BDC_OKCODE' 'ENTR'.
* Temel veriler
IF znobasic EQ 0.

PERFORM bdc_dynpro USING 'SAPLMGMM' '4004'.


PERFORM bdc_field USING 'MAKT-MAKTX' uretim-mtxtr.
PERFORM bdc_field USING 'MARA-MEINS' uretim-meins.
PERFORM bdc_field USING 'MARA-MATKL' uretim-matkl.
PERFORM bdc_field USING 'MARA-BISMT' uretim-bismt.
PERFORM bdc_field USING 'MARA-LABOR' uretim-labor.
PERFORM bdc_field USING 'MARA-MSTAE' uretim-mstae.

PERFORM bdc_field USING 'BDC_OKCODE' 'ZU01'.


PERFORM bdc_dynpro USING 'SAPLMGMM' '4300'.
PERFORM bdc_field USING 'SKTEXT-SPRAS(3)' 'EN'.
PERFORM bdc_field USING 'SKTEXT-MAKTX(3)' uretim-mtxen..
PERFORM bdc_field USING 'BDC_OKCODE' 'MAIN'.
PERFORM bdc_dynpro USING 'SAPLMGMM' '4004'.
PERFORM bdc_field USING 'BDC_OKCODE' '/0'.
ENDIF.

PERFORM bdc_field USING 'BDC_OKCODE' 'BU'.


PERFORM bdc_transaction USING 'MM01'.
ENDLOOP.
ENDFORM. " batch_input

You might also like