SAP CSO1创建BOM
1业务说明
此文档使用BAPI:BAPI_MATERIAL_BOM_GROUP_CREATE创建BOM
2前台实现
事务代码:CS01

输入行项目信息


保存即可
3代码实现
3.1调用BAPI

抬头

行项目

导入BAPI

3.2问题解决
3.2.1 成本核算标识置空
成本核算标识置空失败,因为业务配置默认打钩,传空置之后,系统默认使用默认配置打上勾。

后来查了资料,是因为当以下字段为空时,就默认使用T416V,也就是业务配置的默认值予以覆盖,
因此需要给其中一个字段传值,这样可以不适用默认值覆盖,这里我们选择的是生产相关字段。


之后就可以顺利置空了。
3.3源代码
WITH HEADER LINE.
gw_subitemas TYPE bapi1080_rel_sui_itm_c,
gt_subitemas TYPE TABLE OF bapi1080_rel_sui_itm_c.
DATA:item_no TYPE i,
lv_check TYPE char1,
lv_message type char200,
lv_text TYPE char120 VALUE 'texttexttexttexttexttexttexttexttexttexttexttexttexttexttexttext'.
"以父物料汇总
CLEAR gt_bomgroup.
gt_bomgroup-bom_group_identification = 'BAPI_SMP_COL1'. "可以为空
gt_bomgroup-object_type = 'BGR'.
gt_bomgroup-object_id = 'SIMPLE1'.
gt_bomgroup-bom_usage = '1'. "用途
gt_bomgroup-ltxt_lang = sy-langu.
gt_bomgroup-technical_type = ''.
gt_bomgroup-bom_group = ''. "可以为空
gt_bomgroup-created_in_plant = '2010'."工厂
" gt_bomgroup-bom_text = lt_data-bom_text."BOM文本
APPEND gt_bomgroup.
" HEADER DETAILS OF THE DIFFERENT gt_variants
CLEAR gt_variants.
gt_variants-bom_group_identification = 'BAPI_SMP_COL1'.
gt_variants-object_type = 'BOM'.
gt_variants-object_id = 'SIMPLE1'.
gt_variants-alternative_bom = '09'."备选物料清单 此处要填两位数字,不够补零
gt_variants-bom_status = '01'. "BOM状态
gt_variants-base_qty = '10'."基本数量
" gt_variants-base_unit = lt_data-bmein."计量单位
gt_variants-valid_from_date = sy-datum."生效日期
" gt_variants-alt_text = lt_data-stktx."可选文本
gt_variants-ltxt_lang = sy-langu.
gt_variants-langu_iso = sy-langu.
gt_variants-function = 'NEW'. "NEW表示新建.
APPEND gt_variants.
CLEAR gt_materialrelations.
gt_materialrelations-bom_group_identification = 'BAPI_SMP_COL1'. "可以为空
gt_materialrelations-material_long = '000000000005000021'. "物料号
gt_materialrelations-plant = '2010'."工厂
gt_materialrelations-bom_usage = '1'."BOM用途
gt_materialrelations-alternative_bom = '09'."可选的BOM 此处要填两位数字,不够补零
APPEND gt_materialrelations.
"
" CLEAR gt_itemassignments.
" gt_itemassignments-bom_group_identification = ''. " 可以为空
" gt_itemassignments-sub_object_type = 'ITM'.
" gt_itemassignments-sub_object_id = object_id.
" gt_itemassignments-super_object_type = 'BOM'.
" gt_itemassignments-super_object_id = 'BOM1'.
" gt_itemassignments-valid_from_date = sy-datum.
" gt_itemassignments-function = 'NEW'.
" APPEND gt_itemassignments.
" CLEAR gw_subitemas.
" gw_subitemas-bom_group_identification = bom_group_identification.
" gw_subitemas-sub_object_type = 'SUI'.
" gw_subitemas-sub_object_id = 'SIM1'.
" gw_subitemas-super_object_type = 'ITM'.
" gw_subitemas-super_object_id = object_id.
" APPEND gw_subitemas TO gt_subitemas.
"取父物料的子件信息
item_no = item_no + 1.
CLEAR gt_items.
gt_items-bom_group_identification = 'BAPI_SMP_COL1'. "可以为空
gt_items-object_type = 'ITM'.
gt_items-object_id = item_no.
gt_items-item_no = '0010'."项目
gt_items-item_cat = 'L'."项目类别
gt_items-component_long = '000000000004000012'."组件编码
gt_items-comp_qty = '10'."组件数量
*gt_items-alt_item_group = gs_data-alpgr."项目替代组
gt_items-prod_rel = 'X'."标识:与生产相关项目
gt_items-cost_rel = ''."成本核算相关项的标识符
*IF gs_data-alpgr IS NOT INITIAL .
* gt_items-alt_item_strategy = '2'."替代项目:策略
*ENDIF.
*gt_items-alt_item_prio = gs_data-alprf."优先级
*gt_items-usage_prob = 100."以百分比表示的使用概率(备选项目)
"gt_items-comp_unit = gs_data-meins."组件计量单位
gt_items-item_text1 = lv_text+0(40)."项目长文本
gt_items-item_text2 = lv_text+40(80).
gt_items-ltxt_lang = sy-langu. "这个参数一定要填
APPEND gt_items.
CLEAR gt_itemassignments.
gt_itemassignments-bom_group_identification = 'BAPI_SMP_COL1'. " 可以为空
gt_itemassignments-sub_object_type = 'ITM'.
gt_itemassignments-sub_object_id = item_no.
gt_itemassignments-super_object_type = 'BOM'.
gt_itemassignments-super_object_id = 'SIMPLE1'.
gt_itemassignments-valid_from_date = sy-datum.
gt_itemassignments-function = 'NEW'.
APPEND gt_itemassignments.
"BOM操作
CALL FUNCTION 'BAPI_MATERIAL_BOM_GROUP_CREATE'
EXPORTING
* TESTRUN = 'X'
all_error = 'X'
TABLES
bomgroup = gt_bomgroup
variants = gt_variants
items = gt_items
materialrelations = gt_materialrelations
itemassignments = gt_itemassignments
* subitemassignments = gt_subitemas
return = gt_return.
lv_check = 'S'.
LOOP AT gt_return INTO gs_return WHERE type = 'A' OR type = 'E'.
lv_message = lv_message && gs_return-message.
lv_check = 'E'.
ENDLOOP.
IF lv_check = 'S'.
CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
EXPORTING
wait = 'X'.
* WRITE:GV_NUMBER.
ELSE.
CALL FUNCTION 'BAPI_TRANSACTION_ROLLBACK'.
ENDIF.
SAP CSO1创建BOM的更多相关文章
- PP 创建BOM
转自 http://blog.csdn.net/u012369651/article/details/19190939 一.最终结果预览. 二.创建过程. 使用到的事务码 CS01 创建BOM CS0 ...
- SAP HANA 创建属性视图
[Step By Step]SAP HANA创建属性视图(Attribute View) Demo Instruction: 从一张用户信息表中组合出相信地址. 1. 在modeler窗口中,找到相应 ...
- SAP Query创建
一.SAP Query创建步骤 1.创建User Group User Group即用户组,可以将所创建的列表使用权限分配给具体用户,Tcode:SQ03 在使用者群組初始界面里输入自定义名称,单击[ ...
- 【MM系列】SAP MM模块-BOM展开函数
公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[MM系列]SAP MM模块-BOM展开函数 ...
- 【EWM系列】SAP EWM创建warehouse task的函数
公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[MM系列]SAP EWM创建warehouse ...
- BAPI_MATERIAL_BOM_GROUP_CREATE创建BOM
天使用BAPI函数:BAPI_MATERIAL_BOM_GROUP_CREATE创建BOM组数据,过程中发现很多问题啊.总结如下: BOMGROUP VARIANTS 这两个参数必须要传 ...
- SAP MM01 创建物料主数据 [关注公众号后回复MM01获取更多资料]
操作内容 物料主数据,适用于所有有物料编码物料相关信息的系统维护 业务流程 新项目设计冻结后—M公司 PD用-物料编码申请表D-BOM Material Number Application部门内部 ...
- 二、在SAP中创建一个程序
一.我们来到SE38 二.添加一个程序的名字,需要以Y或者Z开头,点击创建就可以了 三.我们输入hello Sap,然后选择可执行程序,然后保存 四.创建对象目录时,可以选择把这个加入到包中,或者选择 ...
- SAP BAPI创建批次 为保存内部对象号
使用BAPI:BAPI_BATCH_CREATE 创建批次时,能够保存成功,但是MCH1表和KSSK表中没有内部对象号. 无奈,查找源码. 最后在BAPI中调用的这个函数这里找到了问题.此处kzcla ...
随机推荐
- C#_关键字:Lock的解释和使用
定义 lock关键字,互斥锁,通过锁住某一对象从而将语句块({})里面的代码设置为临界区. 线程在线性执行代码时若遇到互斥锁,必须先申请互斥锁的访问权,若访问成功,则继续线性访问互斥锁后的临界区代码块 ...
- stand up meeting 1--11
今天国庆同学回中科大考试因此缺席了今天的daily scrum.不过国庆的任务已经基本完成,不会影响项目进度. 今日更新: 分享功能已经完成一个版本,如下图为分享至邮件: 针对AP返回结果中没有Wor ...
- Beta-release 目标
在第二个release开发周期中我们首要先要完成的是对第一个发布版本的优化:(之前团队在跟travis的沟通中,travis也要求我们首先要把现在已有的feature做到一个比较成熟和稳定的版本) 1 ...
- Netty入门与实战教程总结分享
前言:都说Netty是Java程序员必须要掌握的一项技能,带着不止要知其然还要知其所以然的目的,在慕课上找了一个学习Netty源码的教程,看了几章后着实有点懵逼.虽然用过Netty,并且在自己的个人网 ...
- 批量查询PDF文本并导出结果的小工具
效果: 批量查询指定关键字 & 指定目录下PDF文件中的文本,并导出文件路径和关键字所在文本行. 下载: 链接: https://pan.baidu.com/s/1sK2OMMgGX26l7P ...
- MAC攻击及缺陷
MAC攻击及缺陷 MAC有好几种实现方式 对MAC的攻击 重放攻击 重放攻击的防护 密钥推测攻击 MAC算法的缺陷 第三方证明 防止否认 前面我们在讲HMAC的时候简单讲过了什么是MAC消息认证码. ...
- 基于jenkins自动打包并部署docker环境
一.实验环境 git 192.168.200.71 jenkins 192.168.200.72 docker 192.16 ...
- canvas 绘图api的位置问题
很久没碰canvas了,今天因为canvas绘图的为之问题浪费了一些时间. 我们知道canvas的默认宽高是300X150嘛. 实际使用的时候当然是自定义一个高宽啦. 通常我们会习惯性地在js中通过c ...
- #Week8 Advice for applying ML & ML System Design
一.Evaluating a Learning Algorithm 训练后测试时如果发现模型表现很差,可以有很多种方法去更改: 用更多的训练样本: 减少/增加特征数目: 尝试多项式特征: 增大/减小正 ...
- CF思维联系--CodeForces -214C (拓扑排序+思维+贪心)
ACM思维题训练集合 Furik and Rubik love playing computer games. Furik has recently found a new game that gre ...