FORM GET_MATERIAL_001_DETAIL USING PF_MATNR PF_08 PF_03 PF_04 PF_09 PF_11 PF_07.
DATA: L_OBJECTKEY LIKE BAPI1003_KEY-OBJECT.
DATA: LT_CHAR LIKE TABLE OF BAPI1003_ALLOC_VALUES_CHAR WITH HEADER LINE,
LT_NUM LIKE TABLE OF BAPI1003_ALLOC_VALUES_NUM WITH HEADER LINE,
LT_CURR LIKE TABLE OF BAPI1003_ALLOC_VALUES_CURR WITH HEADER LINE,
LT_RETURN LIKE TABLE OF BAPIRET2 WITH HEADER LINE.
L_OBJECTKEY = PF_MATNR.
CALL FUNCTION 'BAPI_OBJCL_GETDETAIL'
EXPORTING
OBJECTKEY = L_OBJECTKEY
OBJECTTABLE = 'MARA'
CLASSNUM = 'Z_PVD_001_10'
CLASSTYPE = '001'
TABLES
ALLOCVALUESCHAR = LT_CHAR
ALLOCVALUESNUM = LT_NUM
ALLOCVALUESCURR = LT_CURR
RETURN = LT_RETURN.
LOOP AT LT_CHAR.
CASE LT_CHAR-CHARACT.
WHEN 'Z_PVD_001_08'. PF_08 = LT_CHAR-VALUE_CHAR. "類別
WHEN 'Z_PVD_001_03'. PF_03 = LT_CHAR-VALUE_CHAR. "顏色
WHEN 'Z_PVD_001_04'. PF_04 = LT_CHAR-VALUE_CHAR. "材質
WHEN 'Z_PVD_001_09'. PF_09 = LT_CHAR-VALUE_CHAR. "項目
WHEN 'Z_PVD_001_11'. PF_11 = LT_CHAR-VALUE_CHAR. "客供料
WHEN 'Z_PVD_001_07'. PF_07 = LT_CHAR-VALUE_CHAR. "級別
WHEN OTHERS.
...
ENDCASE.
ENDLOOP.
ENDFORM.
FORM READ_BATCH_FINISHED USING PF_MATNR PF_CHARG PF_WERKS PF_VALUE1.
data: objectkey like BAPI1003_KEY-OBJECT,
objectkeytable like table of BAPI1003_OBJECT_KEYS with header line,
allocvaluesnumnew like table of BAPI1003_ALLOC_VALUES_NUM with header line,
allocvaluescharnew like table of BAPI1003_ALLOC_VALUES_char with header line,
allocvaluescurrnew like table of BAPI1003_ALLOC_VALUES_curr with header line,
return like table of BAPIRET2 with header line.
CLEAR: objectkey, objectkeytable, objectkeytable[],
allocvaluescharnew, allocvaluescharnew[],
allocvaluescurrnew, allocvaluescurrnew[],
allocvaluesnumnew, allocvaluesnumnew[],
return, PF_VALUE1. ", PF_VALUE2.
clear: objectkeytable, objectkeytable[].
objectkeytable-key_field = 'MATNR'.
objectkeytable-value_int = PF_MATNR. "2O¢Do
APPEND objectkeytable.
objectkeytable-key_field = 'CHARG'.
objectkeytable-value_int = PF_CHARG. "2O¢Do¡±a|¡M
APPEND objectkeytable.
* Only if Batch management is Plant dependant
objectkeytable-key_field = 'WERKS'.
objectkeytable-value_int = PF_WERKS. "l_werks.
APPEND objectkeytable.
CALL FUNCTION 'BAPI_OBJCL_CONCATENATEKEY'
EXPORTING
objecttable = 'MCH1' "-objecttable
IMPORTING
objectkey_conc = objectkey
TABLES
objectkeytable = objectkeytable
return = return.
IF objectkey IS NOT INITIAL.
CALL FUNCTION 'BAPI_OBJCL_GETDETAIL'
EXPORTING
OBJECTKEY = objectkey
OBJECTTABLE = 'MCH1'
CLASSNUM = 'Z_BATCH_PVD_FG_01'
CLASSTYPE = '023'
* KEYDATE = SY-DATUM
* UNVALUATED_CHARS = ' '
* LANGUAGE = SY-LANGU
* IMPORTING
* STATUS =
* STANDARDCLASS =
TABLES
ALLOCVALUESNUM = ALLOCVALUESNUMNEW
ALLOCVALUESCHAR = ALLOCVALUESCHARNEW
ALLOCVALUESCURR = ALLOCVALUESCURRNEW
RETURN = RETURN.
READ TABLE ALLOCVALUESCHARNEW WITH KEY CHARACT = 'Z_BATCH_PVD_005'.
IF SY-SUBRC = 0.
PF_VALUE1 = ALLOCVALUESCHARNEW-VALUE_CHAR.
ENDIF.
* READ TABLE ALLOCVALUESCHARNEW WITH KEY CHARACT = 'Z_BATCH_PVD_004'.
* IF SY-SUBRC = 0.
* PF_VALUE2 = ALLOCVALUESCHARNEW-VALUE_CHAR.
* ENDIF.
ENDIF.
ENDFORM.
ABAP batch批次程式總結代碼
最新推荐文章于 2023-10-10 14:20:49 发布