批次属性的创建和修改
创建:BAPI_BATCH_CREATE
修改:VB_BATCH_2_CLASS_OBJECT
BAPI_OBJCL_GETDETAIL
BAPI_OBJCL_CHANGE
BAPI_TRANSACTION_COMMIT
BAPI_TRANSACTION_ROLLBACK
问题:遇到 使⽤ 函数 BAPI_OBJCL_GETDETAIL 时 ,获得物料当前批次的属性时, 没有批次的问题
看了下⾯的博客 才了解到 S/4 ,objectkey_long 这个参数 要给值的 和 objectkey 的值⼀样就可以了
DATA:wa_batch TYPE charg_d,
batchattributes TYPE bapibatchatt,
batchcontrolfields TYPE bapibatchctrl.
DATA: it_return TYPE TABLE OF bapiret2,
wa_return TYPE bapiret2.
DATA:cuobn TYPE cuobn,
tabelle TYPE tabelle,
klassenart TYPE klassenart,
klasse_d TYPE klasse_d.
DATA:l_object TYPE bapi1003_key-object,
l_obtab TYPE bapi1003_key-objecttable,
l_class TYPE bapi1003_key-classnum,
l_type TYPE bapi1003_key-classtype,
l_long TYPE bapi1003_key-object_long.
FIELD-SYMBOLS:<fs> TYPE any.
DATA:lt_classvaluationschar TYPE STANDARD TABLE OF bapi1003_alloc_values_char,
ls_classvaluationschar TYPE bapi1003_alloc_values_char,
lt_classvaluationscurr TYPE STANDARD TABLE OF bapi1003_alloc_values_curr,
ls_classvaluationscurr TYPE bapi1003_alloc_values_curr,
lt_classvaluationsnum TYPE STANDARD TABLE OF bapi1003_alloc_values_num,
ls_classvaluationsnum TYPE bapi1003_alloc_values_num.
DATA: lv_status TYPE bapi1003_key-status.
LOOP AT im_data INTO DATA(wa_data).
CASE wa_data-cztyp.
WHEN 'I'."创建
CALL FUNCTION 'CONVERSION_EXIT_MATN1_INPUT'
EXPORTING
input = wa_data-matnr
IMPORTING
output = wa_data-matnr
EXCEPTIONS
length_error = 1
OTHERS = 2.
batchattributes-expirydate = wa_data-vfdat.
batchattributes-expirydate = wa_data-vfdat.
batchattributes-prod_date = wa_data-hsdat.
batchcontrolfields-class_num = 'Z_PICI'.
batchcontrolfields-batchlevel = '0'.
batchcontrolfields-doclassify = 'X'.
CALL FUNCTION 'BAPI_BATCH_CREATE'
EXPORTING
material = wa_data-matnr
batch = wa_data-charg
plant = wa_data-werks
batchattributes = batchattributes
batchcontrolfields = batchcontrolfields
IMPORTING
batch = wa_batch
TABLES
仙剑续传return = it_return.
LOOP AT it_return INTO wa_return." WHERE type = 'E'. CASE wa_return-type.
WHEN 'E' .
ret-type = wa_return-type.
新春祝福语2021ret-id = wa_return-id.
抖音满汉全席什么梗ret-number = wa_return-number.
ret-message = ret-message && wa_return-message . WHEN 'S'.
ret-type = wa_return-type.
ret-id = wa_return-id.
ret-number = wa_return-number.
ret-message = ret-message && wa_return-message . WHEN OTHERS.
ENDCASE.
ENDLOOP.
WHEN 'U'."修改
CALL FUNCTION 'CONVERSION_EXIT_MATN1_INPUT' EXPORTING
input = wa_data-matnr
IMPORTING
output = wa_data-matnr
EXCEPTIONS最好的古装电视剧
length_error = 1
OTHERS = 2.
CALL FUNCTION 'VB_BATCH_2_CLASS_OBJECT'
EXPORTING
i_matnr = wa_data-matnr
i_charg = wa_data-charg
i_werks = wa_data-werks
IMPORTING
e_objek = cuobn
e_obtab = tabelle
e_klart = klassenart
e_class = klasse_d.
l_object = cuobn.
l_obtab = tabelle.
l_class = klasse_d.
l_type = klassenart.
l_long = cuobn.
CLEAR:lv_status.
CALL FUNCTION 'BAPI_OBJCL_GETDETAIL'
EXPORTING
objectkey = l_object
objectkey = l_object
objecttable = l_obtab
classnum = l_class
classtype = l_type
* KEYDATE = SY-DATUM
unvaluated_chars = 'X'
language = sy-langu
objectkey_long = l_long
IMPORTING
status = lv_status
* STANDARDCLASS =
TABLES
allocvaluesnum = lt_classvaluationsnum
allocvalueschar = lt_classvaluationschar
allocvaluescurr = lt_classvaluationscurr
return = it_return.
READ TABLE it_return INTO wa_return WITH KEY type = 'E'.
IF sy-subrc <> 0.
REFRESH: it_return.
CLEAR: wa_return.
LOOP AT lt_classvaluationschar INTO ls_classvaluationschar. ASSIGN COMPONENT ls_classvaluationschar-charact
OF STRUCTURE wa_data TO FIELD-SYMBOL(<fs_value>). IF <fs_value> IS ASSIGNED.
ls_classvaluationschar-value_char = <fs_value>.
鬼吹灯全集顺序目录ls_classvaluationschar-value_neutral = <fs_value>.
ls_classvaluationschar-value_char_long = <fs_value>.
ls_classvaluationschar-value_neutral_long = <fs_value>.
ENDIF.
MODIFY lt_classvaluationschar FROM ls_classvaluationschar. ENDLOOP.
CALL FUNCTION 'BAPI_OBJCL_CHANGE'
EXPORTING
objectkey = l_object
objecttable = l_obtab
classnum = l_class
classtype = l_type
status = '1'
* STANDARDCLASS =
* CHANGENUMBER =
* KEYDATE = SY-DATUM
* NO_DEFAULT_VALUES = ' '
* KEEP_SAME_DEFAULTS = ' '
objectkey_long = l_long
IMPORTING
classif_status = lv_status
TABLES
allocvaluesnumnew = lt_classvaluationsnum
allocvaluescharnew = lt_classvaluationschar
allocvaluescurrnew = lt_classvaluationscurr
return = it_return.
LOOP AT it_return INTO wa_return." WHERE type = 'E'.
CASE wa_return-type.
WHEN 'E' .
ret-type = wa_return-type.
ret-id = wa_return-id.
ret-number = wa_return-number.
ret-message = ret-message && wa_return-message .
WHEN 'S'.
CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
EXPORTING
EXPORTING
wait = 'X'
* IMPORTING
* RETURN =
.
ret-type = wa_return-type.
ret-id = wa_return-id.
ret-number = wa_return-number.
ret-message = ret-message && wa_return-message . WHEN OTHERS.
ENDCASE.
ENDLOOP.
ELSE.
ret-type = wa_return-type.
ret-id = wa_return-id.
ret-number = wa_return-number.
ret-message = ret-message && wa_return-message .
ENDIF.
西安供暖WHEN OTHERS.
ENDCASE.
ENDLOOP.
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论