使用BAPI修改Material Master Data的Classification
2012-05-17 11:30
218 查看
BAPI :
BAPI_OBJCL_GETDETAIL 读取Classification
BAPI_OBJCL_CHANGE 修改Classification
如果Material Master data的Classification不存在,则在创建新的classification之后,
需要更新mara中 pstat ,vpsta 字段,将‘C‘ 添加到该字符串之后。
CONCATENATE wa_mara-pstat 'C' INTO wa_mara-pstat.
CONCATENATE wa_mara-vpsta 'C' INTO wa_mara-vpsta.
BAPI_OBJCL_GETDETAIL 读取Classification
BAPI_OBJCL_CHANGE 修改Classification
如果Material Master data的Classification不存在,则在创建新的classification之后,
需要更新mara中 pstat ,vpsta 字段,将‘C‘ 添加到该字符串之后。
CONCATENATE wa_mara-pstat 'C' INTO wa_mara-pstat.
CONCATENATE wa_mara-vpsta 'C' INTO wa_mara-vpsta.
DATA :wa_class_char LIKE bapi1003_alloc_values_char,"Alphanumeric Values wa_class_curr LIKE bapi1003_alloc_values_curr,"Currency Values wa_class_err LIKE bapiret2."Error Messages i_class_num LIKE TABLE OF wa_class_plmd, i_class_char LIKE TABLE OF wa_class_char, i_class_curr LIKE TABLE OF wa_class_curr, i_class_err LIKE TABLE OF wa_class_err. *'C'表示classification FIND 'C' IN wa_mara-vpsta. IF sy-subrc <> 0. CONCATENATE wa_mara-pstat 'C' INTO wa_mara-pstat. CONCATENATE wa_mara-vpsta 'C' INTO wa_mara-vpsta. ELSE. *读取classification的信息 CALL FUNCTION 'BAPI_OBJCL_GETDETAIL' EXPORTING objectkey = g_objectkey objecttable = 'MARA' classnum = 'MATL_INFO' classtype = '001' * KEYDATE = SY-DATUM * UNVALUATED_CHARS = ' ' * LANGUAGE = SY-LANGU * IMPORTING * STATUS = * STANDARDCLASS = TABLES allocvaluesnum = i_class_num allocvalueschar = i_class_char allocvaluescurr = i_class_curr return = i_class_err . ENDIF. *------------------------------------------------------* * *修改或新增 classification * *------------------------------------------------------* *更新Classification CALL FUNCTION 'BAPI_OBJCL_CHANGE' EXPORTING objectkey = g_objectkey objecttable = 'MARA' classnum = 'MATL_INFO' classtype = '001' * STATUS = '1' * STANDARDCLASS = * CHANGENUMBER = * KEYDATE = SY-DATUM * NO_DEFAULT_VALUES = ' ' * IMPORTING * CLASSIF_STATUS = TABLES allocvaluesnumnew = i_class_num allocvaluescharnew = i_class_char allocvaluescurrnew = i_class_curr return = i_class_err . READ TABLE i_class_err INTO wa_class_err WITH KEY type = 'E'. IF syst-subrc = 0. CALL FUNCTION 'BAPI_TRANSACTION_ROLLBACK'. ELSE. ELSE. *****UPDATE MARA TBALE*********** UPDATE mara FROM wa_mara. CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'. ENDIF.
相关文章推荐
- JCO使用BAPI_MATERIAL_SAVEDATA,下列程序是否有误!!
- 调用BAPI_MATERIAL_SAVEDATA批量创建/修改物料
- BDC Program to Upload Material Master Data (MM01)
- BW: 在Infoset中使用Read Master Data
- BDC Program to Upload Material Master Data (MM01)
- 修改OleDB provider 移植 Data Application Blocks项目中使用存储过程的应用(Oracle or MsSqlServer)到Microsoft Access
- BDC Program to Upload Material Master Data (MM01)
- WPF:在XmlDataProvider上使用主-从绑定(Master-Detail Binding)
- BDC Program to Upload Material Master Data (MM01)
- mysql 修改data目录后 无法使用脚本启动 推荐
- 使用FormView Unity和LINQ实现的3层架构----MasterDataManage模型
- Spring-Data-JPA 使用@Modifying修改(Modifying queries)
- 微信小程序如何使用setData修改data中子对象的属性值
- 函数使用十二:BAPI_MATERIAL_BOM_GROUP_CREATE(CS61)
- mm 批量 修改 计量单位 BAPI_MATERIAL_SAVEDATA
- jquery的data函数定义、使用和修改
- Git的使用 强制放弃本地所有修改,获取master中最新版本更新本地
- Classification Data Material
- VC下使用OpenCV最好先修改一下结构体IplImage中的数据指针imageData的类型...