Hi Experts,
I have to write a program to create a new batch for a material and copy the properties of another batch into it. I am using the following code to create a new batch
material2 = p_matnr.
plant2 = p_werks.
lgort2 = p_lgort.
CALL FUNCTION 'BAPI_BATCH_CREATE'
EXPORTING
MATERIAL = material2
PLANT = plant2
BATCHSTORAGELOCATION = lgort2
IMPORTING
BATCH = batch2
TABLES
RETURN = return2.
CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'.
refresh return2.
concatenate material2 batch2 into object2.
CALL FUNCTION 'BAPI_OBJCL_GET_KEY_OF_OBJECT'
EXPORTING
OBJECTNAME = object2
OBJECTTABLE = 'MCH1'
CLASSTYPE = '023'
CREATE_MISSING_KEY = 'X'
IMPORTING
CLOBJECTKEYOUT = obj_key
TABLES
RETURN = return2
.
CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'.
refresh return2.
clnum = e_class1.
CALL FUNCTION 'BAPI_OBJCL_CHANGE_KEY'
EXPORTING
CLOBJECTKEY = obj_key
CLASSNUM = clnum
TABLES
ALLOCVALUESNUM_NEW = tnum
ALLOCVALUESCHAR_NEW = tchar
ALLOCVALUESCURR_NEW = tcurr
RETURN = return2
.
CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'.
The first two bapi execute successfully. But the third one BAPI_OBJCL_CHANGE_KEY returns an error saying
Class type 023 is not defined for object obj_key
Can someone let me know where am I going wrong. I tried the forums and the method specified is the same that I am following.
Thanks,
Abdullah