‎2010 Apr 30 11:31 AM
Hi Gurus,
I am using the following bapi ( BAPI_OBJCL_CHANGE ) to change Batch classification values Eg: Cut clarity etc.
when i pass these values thru the function module in the program it is not getting changed while when i change it through msc2n it gets changed successfully...
I have passed the following values in the parameters of the bapi :
OBJECTKEY = v_objectkey
OBJECTTABLE = 'MCH1'
CLASSNUM = V_CLASSNUM
CLASSTYPE = '023'
KEYDATE = 30.04.2010
ALLOCVALUESCHARNEW
CHARACT = CLARITY
VALUE_CHAR = P040
VALUE_NEW = P040.
Can some one help me solve this....
Needed urgently..
Edited by: NAVIN FERNANDES on Apr 30, 2010 12:31 PM
Edited by: NAVIN FERNANDES on Apr 30, 2010 12:32 PM
‎2010 Jun 08 12:55 PM
‎2010 Jul 13 4:33 PM
hei, kind man, can you show me your solution? thank you very much
‎2010 Jul 14 6:49 AM
Hi Jacky,
I am posting the code here.. Do let me know if u have ne queries:
REPORT ZNAVBATCH.
SELECTION-SCREEN BEGIN OF BLOCK B1.
PARAMETERS: P_MATNR TYPE MATNR,
P_CHARG TYPE CHARG_D,
P_WERKS TYPE WERKS_D,
P_LGORT TYPE LGORT_D.
SELECTION-SCREEN END OF BLOCK B1.
START-OF-SELECTION.
DATA: WA_BATCH TYPE BAPI1003_OBJECT_KEYS,
WA_ALLOCCHAR TYPE BAPI1003_ALLOC_VALUES_CHAR,
WA_ALLOCVAL TYPE BAPI1003_ALLOC_VALUES_NUM,
INT_BATCH TYPE STANDARD TABLE OF BAPI1003_OBJECT_KEYS,
INT_RET1 TYPE STANDARD TABLE OF BAPIRET2,
INT_RET2 TYPE STANDARD TABLE OF BAPIRET2,
INT_RET3 TYPE STANDARD TABLE OF BAPIRET2,
LV_KEY TYPE BAPI1003_KEY-OBJECT,
INT_ALLOCVAL TYPE STANDARD TABLE OF BAPI1003_ALLOC_VALUES_NUM,
INT_ALLOCCHAR TYPE STANDARD TABLE OF BAPI1003_ALLOC_VALUES_CHAR,
INT_ALLOCCURR TYPE STANDARD TABLE OF BAPI1003_ALLOC_VALUES_CURR.
WA_BATCH-KEY_FIELD = 'MATNR'.
WA_BATCH-VALUE_INT = P_MATNR.
APPEND WA_BATCH TO INT_BATCH.
WA_BATCH-KEY_FIELD = 'CHARG'.
WA_BATCH-VALUE_INT = P_CHARG.
APPEND WA_BATCH TO INT_BATCH.
CALL FUNCTION 'BAPI_OBJCL_CONCATENATEKEY'
EXPORTING
OBJECTTABLE = 'MCH1'
IMPORTING
OBJECTKEY_CONC = LV_KEY
TABLES
OBJECTKEYTABLE = INT_BATCH
RETURN = INT_RET1.
IF SY-SUBRC = 0.
WRITE: 'SUCCESSFUL'.
CALL FUNCTION 'BAPI_OBJCL_GETDETAIL'
EXPORTING
OBJECTKEY = LV_KEY
OBJECTTABLE = 'MCH1'
CLASSNUM = 'ZTBATCHCHR'
CLASSTYPE = '023'
KEYDATE = SY-DATUM
UNVALUATED_CHARS = ' '
LANGUAGE = SY-LANGU
IMPORTING
STATUS =
STANDARDCLASS =
TABLES
ALLOCVALUESNUM = INT_ALLOCVAL
ALLOCVALUESCHAR = INT_ALLOCCHAR
ALLOCVALUESCURR = INT_ALLOCCURR
RETURN = INT_RET2
.
IF SY-SUBRC = 0.
WRITE : 'SUCCESSFUL'.
READ TABLE INT_ALLOCCHAR INTO WA_ALLOCCHAR WITH KEY CHARACT = 'CLARITY'.
IF SY-SUBRC = 0.
WA_ALLOCCHAR-VALUE_CHAR = 'C02'.
WA_ALLOCCHAR-VALUE_NEUTRAL = 'C02'.
MODIFY INT_ALLOCCHAR FROM WA_ALLOCCHAR INDEX SY-TABIX TRANSPORTING VALUE_CHAR VALUE_NEUTRAL.
ENDIF.
CALL FUNCTION 'BAPI_OBJCL_CHANGE'
EXPORTING
OBJECTKEY = LV_KEY
OBJECTTABLE = 'MCH1'
CLASSNUM = 'ZTBATCHCHR'
CLASSTYPE = '023'
STATUS = '1'
STANDARDCLASS =
CHANGENUMBER =
KEYDATE = SY-DATUM
NO_DEFAULT_VALUES = ' '
IMPORTING
CLASSIF_STATUS =
TABLES
ALLOCVALUESNUMNEW = INT_ALLOCVAL
ALLOCVALUESCHARNEW = INT_ALLOCCHAR
ALLOCVALUESCURRNEW = INT_ALLOCCURR
RETURN = INT_RET3
.
IF SY-SUBRC = 0.
CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
EXPORTING
WAIT = 'X'
IMPORTING
RETURN =
.
IF SY-SUBRC = 0.
WRITE: 'SUCCESSFUL'.
ENDIF.
ENDIF.
ENDIF.
ENDIF.
‎2012 Jan 12 1:45 PM
hi
i want to update object in mch1 table as to assign class to batch in corfirmation order
its working through msc2n
bt unable to do that by using bapi
bapi_objcl_change
bapi_objcl_create
thyanking you
‎2012 Jan 12 1:46 PM
hi
i want to update object in mch1 table as to assign class to batch in corfirmation order
its working through msc2n
bt unable to do that by using bapi
bapi_objcl_change
bapi_objcl_create
thyanking you