SAP bom展开例程
四班SAPBOM基础和导入
操作
III
24
BOM创建前还需要查询重复BOM和工艺
I
发现重复BOM时,在导入模板内 删除已有BOM
III
操作
II
25
BOM导入前检查
3.工艺重复存在
26
BOM创建前还需要查询重复工艺
I II
操作
III
27
BOM创建前还需要查询重复BOM和工艺
操作
发现系统已经存在工艺时,一定切记要删除BOM内的工艺,因为系统内 部可以导入多个工艺,如果导入错误,会发生成本,工时在内的多个错误 ,所以在工艺导入时,一定需要谨慎,要求多查后,才能导入!
操作
单个手动BOM创建
操作
35
第 三工 部艺 分路 线 导 入
BOM
1. 工艺的创建
36
单个手动工
单个手动工艺创建
38
单个手动工艺创建
39
第 四的 批 部 分量 导 入
BOM
I》BOM的整理和批导
40
41
BOM的批量导入
I II
III
42
BOM的批量导入
28
第 三工 部艺 分路 线 导 入
BOM
1. BOM的创建
29
单个手动BOM创建
I II
操作
III
30
单个手动BOM创建
操作
31
单个手动BOM创建
操作
32
单个手动BOM创建
操作
33
单个手动BOM创建
料 为 到 冲 件 , 螺 丝 螺 母 等 。 就 可 以 , 不 要 点 其 他 东 西 , 这 些 物 当 提 示 此 类 提 示 时 , 只 需 要 回 34 车
SAP_BOM数据导出方法步骤
图例
8.依照此办法,可增加其他项目。 相反,也可对左侧现有显示的列 进行删除。点击左下角的“√(确 认)”按钮,确认退出。
9. 列 图 中 已 经 显 示 刚 才 增 加 的 “凭证”和“凭证版本”两项内 容。
步骤及内容 10.如要将数据导出为电子档,则 选左上方的“电子表格”按钮。
图例
11.系统弹出“选择电子表格”窗 口。选择所要导出文件的格式, 然后点击左下角的 “√(确认)” 键。
12.系统弹出保存窗口,选择保存 路径和文件名称即可。
步骤及内容 4.进入“显示多级 BOM”界面。
图例
5.如果原有界面里没有列出所需 要的资料,如“凭证号”等,则 点击“布局”按钮,出现“更择需要添加的内容。 如需添加 “凭 证”项目的内容,双击“凭证” , 或者选择“凭证”后再点击向左 的按钮。
步骤及内容 7.此时,左侧的“显示的列”内, 已经添加了“凭证”项目。
SAP 物料 BOM 数据导出方法
步骤及内容 1.进入 SAP 主界面,在命令输入 框内输入“CS12”后回车,或者 选择 “CS12-多层 BOM” 后双击。 图例
2.进入了“展开 BOM:多层 BOM: 初始屏幕” 。
3.在“物料”中输入物料的 SAP 代码。 在“工厂” 中输入 BOM 所处的工 厂代码(如 5250)。 在“BOM 用途”中输入该 BOM 的用途项“3” 。 在 “BOM” 应用程序中选择 “BEST” 选项。 然后回车。
SAP物料主数据BOM数据管理制度V1
SAP物料主数据BOM数据管理制度V1一、引言本文档旨在规范和指导公司在SAP系统中管理物料主数据BOM数据的流程和操作。
通过建立统一的管理制度,确保物料主数据BOM数据的准确性、一致性和可靠性,提高公司物料管理的效率和质量。
二、术语定义1. SAP系统:指公司内部采用的SAP企业资源计划系统。
2. 物料主数据:指在SAP系统中用于描述和管理公司所使用的物料的数据。
3. BOM数据:指物料主数据中的BOM(Bill of Materials)数据,用于描述物料的组成结构和层级关系。
三、管理流程1. 新建物料主数据BOM1.1. 提交申请:当需要新建物料主数据BOM时,相关部门或者人员需向物料管理部门提交申请,包括物料基本信息、BOM结构和层级关系等。
1.2. 数据审核:物料管理部门对提交的申请进行审核,确保申请的完整性和合规性。
1.3. 数据录入:审核通过后,物料管理部门将申请的物料主数据BOM录入SAP系统,并进行数据验证和校对。
1.4. 数据审批:物料管理部门将已录入的物料主数据BOM提交给相关部门或者人员进行审批,并记录审批结果。
内部各部门使用。
2. 修改物料主数据BOM2.1. 提交申请:当需要修改已有物料主数据BOM时,相关部门或者人员需向物料管理部门提交申请,包括修改内容和原因等。
2.2. 数据审核:物料管理部门对提交的申请进行审核,确保申请的合理性和合规性。
2.3. 数据修改:审核通过后,物料管理部门将申请的修改内容进行数据修改,并进行数据验证和校对。
2.4. 数据审批:物料管理部门将已修改的物料主数据BOM提交给相关部门或者人员进行审批,并记录审批结果。
2.5. 数据发布:经过审批的物料主数据BOM修改将被发布到SAP系统中,替换原有的数据。
3. 停用物料主数据BOM3.1. 提交申请:当需要停用已有物料主数据BOM时,相关部门或者人员需向物料管理部门提交申请,包括停用原因和替代物料等。
SAP_BOM最终用户操作手册
MD模块最终用户操作手册文档控制文档更新记录文档审核记录文档去向记录目录1前言 (4)2岗位职责描述 (6)3物料清单部分 (7)3.1标准BOM的创建 (7)3.2标准BOM的复制 (11)3.3标准BOM的显示 (15)3.3.1标准BOM的显示 (15)3.3.2标准BOM逐层显示 (19)3.3.3标准BOM多层显示 (20)3.3.4标准BOM多层显示 (22)3.4标准BOM的修改 (24)3.5标准BOM的删除 (27)3.6标准BOM批导 (29)3.7订单BOM的创建 (31)3.8订单BOM的复制 (35)3.9订单BOM的显示 (39)3.10订单BOM的修改 (44)3.11BOM批量查询 (46)1前言本此文档是在ERP项目中用于培训的系统操作手册,旨在帮助用户学习和掌握系统操作流程和方法。
此文档必须结合系统内操作和外部业务流程,以及用户岗位职责,详述每个业务操作环节。
外部业务说明是为了帮助用户了解整个业务过程及加深对系统功能的了解和掌握。
此文档会进行补充校正,请参阅者注意文档版本更新信息。
操作说明功能SAP系统符号说明保存按钮保存您在数据库中的工作。
返回(上一级)按钮使您在不保存当前工作的情况下返回以前的屏幕。
取消(退出当前屏幕)按钮使您在不保存当前工作的情况下退出当前的任务。
取消/放弃操作按钮使您在不保存当前工作的情况下退出当前的任务。
确认(回车)按钮使您能够进入下一个屏幕或窗口。
Enter 按钮有相同的功能。
下拉菜单选择项全选取消全选翻页按钮使您能够进入以后或以前的页,既可以进入第一页也可以是最后一页。
列按钮使您能够显示以后或以前的列,既可以显示第一列也可以是最后一列。
创建新的会话按钮使你快速打开一个新的会话窗口。
执行键按钮使您开始一个系统活动。
批准检查按钮可检查屏幕输入内容(或程序等)的准确性及完整性。
打印新建项目取消项目按钮在同一订单中删除一个或多个行项目。
单据删除按钮删除整个订单。
SAP系统BOM查询操作讲义
A 2/6
路徑: Logistics>Production> Master data> Bill Of Material>Bill Of Material>Material Bom>Display
Entry T-code : CS03 1. 輸入或選擇成品或半成品物料料號 2. 輸入或選擇相應的工廠代碼 3. 輸入或選擇 BOM 的用途 1—Production 8—重工 點擊 進入 BOM 相關元件維護界面 , 按照上述 BOM 主檔維護 2.—6.步驟查詢相關內容
A 6/6
5
查詢結果
結束 如上述 6 勾選了擴展顯示,會展出 所有相關的上階料號
※
※ 本文件之著作權及營業秘密內容屬於鴻海公司,非經公司允許不得翻印 ※
※
Entry T-code : CS15 目的: 使用清單顯示 BOMS 中的原件在那些物料所 用.通過選擇條件你可以指明在使用清單中那類 BOM 應該做評估 . 如果你輸入關鍵日期 , 系統會在 BOMS 的有效期內查找 1. 輸入或從下拉列表中選擇要查行的物料料號 2. 選擇使用清單的類型 3. 輸入或從下拉列表中選擇生效日期 4. 選擇使用的范圍,選擇物料 BOM 5. 輸入或從下拉列表中選擇工廠代碼 6. 如要顯示多層結構,請勾選擴展顯示選項 然後按 進入查詢結果界面
3 1 2
2
按逐層查詢 BOM
資料查詢結果
同一階的物料歸集一起逐層 住下展
※
※ 本文件之著作權及營業秘密內容屬於鴻海公司,非經公司允許不得翻印 ※
※
Rev Page HON HAI/FOXCONN PRECISION IND.CO.LTD 系統名稱 : SYSTEM 系統作業流程 3. 按結構層次展開 BOM 主題:(SUBJECT): BOM 查詢 步驟說明 文件編號 DOCUMENT NO: NWE-EUTMMBOM 圖形解說
SAP BOM 制作指引
一、SAP BOM制作流程: 最新PR+最新Flat BOM 将Flat BOM分 层 制作为PP BOM 制作PP-BOMPlant allocation 制作PP-Rout Header 制作PP-Rout Item
1
二、流程各部分的具体操作
1、最新PR+最新Flat BOM
6
PP BOM操作界面如下图3:
此栏是Flat BOM中部 分物料的位置,这一列 主要是电子元件在 PCB板上的位置居多
此栏是Flat BOM中的 备注部分,主要是针对 部分元件的使用位置
此栏是Flat BOM中的 备注部分,主要是针对 部分元件的使用位置
此栏是Flat BOM中的用 量部分乘以1000所得
13
6、制作PP-Rout Item
PP-Rout Item的操作界面如图1:(附带说明)
此两栏是填写半成品及包装的编号及 此两栏是填写半成品及包装的编号 说明(包括邦定、SMT、插机等) (包括邦定、SMT、插机等)
此栏是填写生产前两栏 组件的公司代码
此栏是填写组件 的描述
此栏是填写组件 用量单位
注: 在PP-BOM-Plant allocation中未有提到的项目栏可以不用填写。
11
5、制作PP-Rout Header
PP-Rout Header的操作界面如图1(附带说明)
此两栏是填写半成品及包装的编号及 此两栏是填写半成品及包装的编号 说明(包括邦定、SMT、插机等) (包括邦定、SMT、插机等)
此两栏是BOM内的物料编号及物料 此两栏是Flat BOM内的物料编号及 物料描述,前两行有半成品和包装的 描述,前两行有半成品的 编号是因为在SAP BOM不能出现 空栏,所以将其填满
SAP物料主数据BOM数据管理制度V1
SAP物料主数据BOM数据管理制度V1一、引言SAP物料主数据BOM(Bill of Materials,物料清单)数据是企业生产过程中关键的组成部份,对于生产计划、成本控制、供应链管理等方面具有重要意义。
为了保证物料主数据BOM数据的准确性、一致性和可靠性,制定本管理制度,明确BOM数据的管理流程、责任和要求,以提高企业生产效率和质量。
二、适合范围本管理制度适合于公司所有相关部门和人员,包括物料管理部门、生产部门、采购部门、质量管理部门等。
三、术语定义1. SAP:Systems, Applications and Products in Data Processing,即数据处理的系统、应用和产品。
2. 物料主数据:包括物料基本信息、物料分类、计量单位、价格、供应商等。
3. BOM数据:物料清单数据,包括物料的组成关系、数量、版本等。
四、管理流程1. BOM数据创建1.1 物料管理部门负责根据实际生产需求,在SAP系统中创建新的物料主数据,并填写相关信息。
1.2 物料管理部门根据生产工艺和产品需求,创建相应的BOM数据,并与物料主数据关联。
1.3 物料管理部门将新建的物料主数据和BOM数据提交给质量管理部门进行审批。
1.4 质量管理部门对物料主数据和BOM数据进行审批,确保其符合产品质量和安全要求。
1.5 审批通过后,物料管理部门将物料主数据和BOM数据发布至SAP系统,使其可供其他部门使用。
2. BOM数据变更2.1 若需对已有的BOM数据进行变更,相关部门需提出变更申请,并填写BOM变更申请表。
2.2 物料管理部门收到变更申请后,进行评估和分析,确定变更的可行性和影响范围。
2.3 物料管理部门根据评估结果,进行BOM数据的变更,并更新相关物料主数据。
2.4 变更完成后,物料管理部门将变更后的BOM数据提交给质量管理部门进行审批。
2.5 质量管理部门对变更后的BOM数据进行审批,确保其符合产品质量和安全要求。
SAP销售BOM配置及举例优选稿
S A P销售B O M配置及举例集团文件版本号:(M928-T898-M248-WU2669-I2896-DQ586-M1988)销售BOM配置文档一、业务说明及前提公司在销售“盒装综合礼品”时,其包装含有多个产品组合,在销售订单创建时录入“盒装综合礼品”时,自动带出其下挂组件,礼品盒无库存,不做库存管理,其相关组件有实际库存。
BOM:5-销售和分销”;组件:180g180g 1*040简装)组成,组件项目全部设置为“与销售相关-X-和SD 相关”;客户:销售范围:1101-00-00(郑州三全/公用分销渠道/公用产品组)目标实现:可用性检查、信贷控制、货物移动、发票项目、发票金额二、后台配置1、可用性检查配置:要求成品不参与可用性检查、组件参与检查;02(个别需求);2、信贷控制配置:成品影响信贷额度,组件对信贷额度没有影响;定义风险类别:IMG->财务会计(新)->应收账目和应付账目->信用管理->信用控制会计科目->定义风险类别定义自动信贷控制:IMG->销售和分销->基本功能->信贷管理/风险管理->信贷管理->定义自动信贷控制(OVA8); 其信贷检查为“静态”。
3、项目类别配置:路径:IMG->销售和分销->销售->销售单据->销售单据项目->定义项目类别“结构范围”根据实际需要进行配置,可设置为“B-展开多级物料票据”;“应用程序”选择“SD01-销售和分销”例如:订单类型:OR(标准订单)项目类别:TAN(标准项目-发出商品)、TANN(免费项目)后台设置:IMG->销售和分销->销售->销售单据->销售单据项目->分配项目类别将“TANN”的上层项设置为“TAN”;4、计划行配置:实现“成品”进行定价计算,无库存,不进行货物移动;“组件”不进行价格计算,有库存,进行货物移动。
SAP_BOM数据导出方法步骤
12.系统弹出保存窗口,选择保存 路径和文件名称即可。
图例
8.依照此办法,可增加其他项目。 相反,也可对左侧现有显示的列 进行删除。点击左下角的“√(确 认)”按钮,确认退出。
9. 列 图 中 已 经 显 示 刚 才 增 加 的 “凭证”和“凭证版本”两项内 容。
步骤及内容 10.如要将数据导出为电子档,则 选左上方的“电子表格”按钮。
图例
11.系统弹出“选择电子表格”窗 口。选择所要导出文件的格式, 然后点击左下角的 “√(确认)” 键。
步骤及内容 4.进入“显示多级 BOM”界面。
图例
5.如果原有界面里没有列出所需 要的资料,如“凭证号”等,则 点击“布局”按钮,出现“更改 格式”窗口。
6.在右侧的“列设置”栏内,选 择需要添加的内容。 如需添加 “凭 证”项目的内容,双击“凭证” , 或者选择“凭证”后再点击向左 的按钮。
步骤及内容 7.此时,左侧的“显示的列”内, 已经添加了“凭证”项目。
SAP 物料 BOM 数据导出方法
步骤及内容 1.进入 SAP 主界面,在命令输入 框内输入“CS12”后回车,或者 选择 “CS12-多层 BOM”பைடு நூலகம்后双击。 图例
2.进入了“展开 BOM:多层 BOM: 初始屏幕” 。
3.在“物料”中输入物料的 SAP 代码。 在“工厂” 中输入 BOM 所处的工 厂代码(如 5250)。 在“BOM 用途”中输入该 BOM 的用途项“3” 。 在 “BOM” 应用程序中选择 “BEST” 选项。 然后回车。
根据BOM综合展开,合并成品所有子物料
END
FHistory INT DEFAULT(0) NULL, FHaveMrp SMALLINT DEFAULT(0) NULL, FLevelString VARCHAR(2ห้องสมุดไป่ตู้0) NULL ,
FBom INT, FMaterielType INT DEFAULT(371) NULL,FOperID INT DEFAULT(0),FRootBOMID INT DEFAULT(0))
CREATE TABLE #Errors(FIndex INT IDENTITY, FType SMALLINT DEFAULT(0), FErrText NVARCHAR(355) )
DECLARE @PRDate DATE='2017-04-12'
IF OBJECT_ID(N'[tempdb].[dbo].[#MutiParentItem]') IS NOT NULL DROP TABLE #MutiParentItem
FMaterielType INT DEFAULT(371) NULL,FOperID INT DEFAULT(0),FRootBOMID INT DEFAULT(0))
IF OBJECT_ID(N'[tempdb].[dbo].[#Errors]') IS NOT NULL DROP TABLE #Errors
FROM ICBOM WHERE FItemID=110795 AND FEnterTime<='2017-04-20'
) a
INNER JOIN t_ICItem t1 on t1.FItemID = a.FItemID
SAP BOM展开 完整有注释
*&-----------------------------------------------------------------* *& Report YPPR0042 SAP BOM展开*&-----------------------------------------------------------------*REPORT YPPR0042 NO STANDARD PAGE HEADING.TYPE-POOLS: SLIS.TABLES: MAST, "BOM 链接物料MARA, "常规物料数据STKO, "BOM 表头MAKT. "物料描述DATA: STB LIKE STPOX OCCURS0WITH HEADER LINE,WA_ALV_FIELD TYPE SLIS_FIELDCAT_ALV, "列描述内表,列清单WA_ALV_FIELDCAT TYPE SLIS_T_FIELDCAT_ALV, "定义内表LAYOUT TYPE SLIS_LAYOUT_ALV,GS_LAYOUT TYPE SLIS_LAYOUT_ALV,GT_LIST_TOP_OF_PAGE TYPE SLIS_T_LISTHEADER,COUNTER TYPE I VALUE0,G_REPID LIKE SY-REPID,DC(1) TYPE C VALUE'X', "是否多层展开默为多层展开G_USER_COMMAND TYPE SLIS_FORMNAME VALUE'USER_COMMAND'.DATA: BEGIN OF SELPOOL.INCLUDE STRUCTURE CSTMAT.DATA: END OF SELPOOL.DATA: DSTST_FLG LIKE CSDATA-XFELD. "BOM 帮助字段DATA: BEGIN OF IT_DATA OCCURS0,STUFE LIKE STPOX-STUFE, "层次MATNR LIKE MARA-MATNR, "父件物料编码OJTXB(80) TYPE C, "父件物料描述BMENG TYPE I, "BOM中的基本数量IDNRK LIKE STPOX-IDNRK, "子件物料编码OJTXP(80) TYPE C, "子件物料描述ALPRF LIKE STPO-ALPRF, "优先级EWAHR LIKE STPO-EWAHR, "使用可能性STLAN LIKE STPOX-STLAN, "BOM用途STLAL LIKE STPOX-STLAL, "可选的BOMALPGR LIKE STPOX-ALPGR, "替代组MTART LIKE STPOX-MTART, "物料类型MMEIN LIKE STPOX-MMEIN, "基本计量单位STPRS LIKE STPOX-STPRS, "标准价格MNGLG LIKE STPOX-MNGLG, "以基本计量单位为准的已计算的组件数量MNGKO LIKE STPOX-MNGKO, "以组件计量单位为准的已计算的组件数量 MENGE LIKE STPOX-MENGE, "组件数量DATUV LIKE STPOX-DATUV, "开始生效/有效截止日期AENNR LIKE STPOX-AENNR, "更改编号ANDAT LIKE STPOX-ANDAT, "日期记录创建于ANNAM LIKE STPOX-ANNAM, "创建记录的用户AUSCH LIKE STPOX-AUSCH, "工序报废AVOAU LIKE STPOX-AVOAU, "工序废品NTGEW LIKE MARA-NTGEW, "净重BRGEW LIKE MARA-BRGEW, "毛重WEIGH LIKE MARA-BRGEW, "重量 = BOM用量 * 单重STAWN LIKE MARC-STAWN, "外贸的商品代码和进口代码STAWT(200) TYPE C, "海关编码描述SEL TYPE C,END OF IT_DATA.DATA: BEGIN OF MATCAT OCCURS50.INCLUDE STRUCTURE CSCMAT.DATA: END OF MATCAT.DATA: BEGIN OF MATS.INCLUDE STRUCTURE CSCMAT.DATA: END OF MATS.DATA: BEGIN OF DLLH_DATA,MATNR LIKE MARA-MATNR, "物料编码BMENG TYPE I, "BOM中的基本数量END OF DLLH_DATA.DATA: TDLLH_DATA LIKE DLLH_DATA OCCURS0.DATA: BEGIN OF WLXX_DATA,MATNR LIKE MARA-MATNR, "物料编码NORMT LIKE MARA-NORMT, "延伸机种,即机型MAKTX(80) TYPE C, "物料描述GROES LIKE MARA-GROES, "描述补充NTGEW LIKE MARA-NTGEW, "净重BRGEW LIKE MARA-BRGEW, "毛重STAWN LIKE MARC-STAWN, "外贸的商品代码和进口代码END OF WLXX_DATA.DATA: TWLXX_DATA LIKE WLXX_DATA OCCURS0.DATA: BEGIN OF HGBM_DATA,STAWN LIKE T604T-STAWN, "外贸的商品代码和进口代码TEXT1(200) TYPE C, "描述TEXT2 LIKE T604T-TEXT2, "描述TEXT3 LIKE T604T-TEXT3, "描述TEXT4 LIKE T604T-TEXT4, "描述TEXT5 LIKE T604T-TEXT5, "描述TEXT6 LIKE T604T-TEXT6, "描述TEXT7 LIKE T604T-TEXT7, "描述END OF HGBM_DATA.DATA: THGBM_DATA LIKE HGBM_DATA OCCURS0.SELECTION-SCREEN BEGIN OF BLOCK SCR1 WITH FRAME TITLE text-001.* SELECT-OPTIONS: S_WERKS FOR MAST-WERKS DEFAULT '1000'. "工厂SELECT-OPTIONS: S_MATNR FOR MARA-MATNR, "成品编码S_MTART FOR MARA-MTART, "物料类型S_MATKL FOR MARA-MATKL, "物料组S_MAKTX FOR MAKT-MAKTX, "物料描述S_NORMT FOR MARA-NORMT. "机型PARAMETERS: P_EMENG LIKE STKO-BMENG OBLIGATORY DEFAULT'1', "R equired quantityP_STLAN LIKE MAST-STLAN DEFAULT'1'. "B OM 用途SELECTION-SCREEN SKIP1.PARAMETERS:RB_MCB RADIOBUTTON GROUP RG1 DEFAULT'X', "多层展开RB_SCB RADIOBUTTON GROUP RG1. "单层展开SELECTION-SCREEN SKIP1.PARAMETERS:RB_YTD RADIOBUTTON GROUP RG2 DEFAULT'X', "有替代料RB_WTD RADIOBUTTON GROUP RG2. "无替代料SELECTION-SCREEN SKIP1.PARAMETERS:RB_ALL RADIOBUTTON GROUP RG3, "显示所有列RB_HGY RADIOBUTTON GROUP RG3 DEFAULT'X'. "仅显示海关专用列SELECTION-SCREEN SKIP1.PARAMETERS:RB_YBC RADIOBUTTON GROUP RG4, "仅计算原材料重量RB_WBC RADIOBUTTON GROUP RG4 DEFAULT'X'. "计算所有物料重量SELECTION-SCREEN END OF BLOCK SCR1.INITIALIZATION.G_REPID = SY-REPID.START-OF-SELECTION.SELECT MARA~MATNRINTO CORRESPONDING FIELDS OF TABLE TDLLH_DATA "取得物料编码内表FROM MARAINNER JOIN MAKT ON MARA~MATNR = MAKT~MATNRWHERE MARA~MATNR IN S_MATNR AND MARA~MTART IN S_MTART AND MARA~NORMT IN S_NORMT AND MAKT~MAKTX IN S_MAKTX AND MARA~MATKL IN S_MATKL AND MA KT~SPRAS = SY-LANGU.SORT TDLLH_DATA BY MATNR.SELECT T604T~STAWN T604T~TEXT1 T604T~TEXT2 T604T~TEXT3 T604T~TEXT4 T6 04T~TEXT5 T604T~TEXT6 T604T~TEXT7INTO TABLE THGBM_DATA "取得海关编码及描述内表FROM T604TWHERE T604T~SPRAS = SY-LANGU.SORT THGBM_DATA BY STAWN.LOOP AT THGBM_DATA INTO HGBM_DATA.CONCATENATE HGBM_DATA-TEXT1 HGBM_DATA-TEXT2 HGBM_DATA-TEXT3 HGBM_DATA-TEXT4 HGBM_DATA-TEXT5 HGBM_DATA-TEXT6 HGBM_DATA-TEXT7 INTO HGBM_DA TA-TEXT1.MODIFY THGBM_DATA FROM HGBM_DATA.ENDLOOP.IF RB_MCB = ''. "如果选择为单层展开则把原来的默认值由X 改为空DC = ''.ENDIF.CLEAR: DLLH_DATA.LOOP AT TDLLH_DATA INTO DLLH_DATA. "循环每个物料号CLEAR: STB.CALL FUNCTION'CS_BOM_EXPL_MAT_V2'EXPORTINGCAPID = 'ZP01'"BOM 应用程序DATUV = SY-DATUM "有效起始日EMENG = P_EMENG "基本数量 Required quantity STKO-BMENGMTNRV = DLLH_DATA-MATNR "成品号或半成品号STLAN = '1'"BOM用途,1代表生产 STLAL = ''"可选BOMMKTLS = 'X'MEHRS = DC "是否多层展开,'X' 代表多层RNDKZ = '1'"Round off: ' '=a lways, '1'=never, '2'=only levels > 1 是否取整WERKS = '1000'"工厂IMPORTINGTOPMAT = SELPOOL "开始BOM 展开的物料显示DSTST = DSTST_FLG "BOM 帮助字段TABLESSTB = STBMATCAT = MATCAT "下面含有组件的物料存放在该内表对应 STB-TTIDX 在类别表内的索引﹐标志直属哪个物料下的 BOM EXCEPTIONSALT_NOT_FOUND = 1CALL_INVALID = 2MATERIAL_NOT_FOUND = 3MISSING_AUTHORIZATION = 4NO_BOM_FOUND = 5NO_PLANT_DATA = 6NO_SUITABLE_BOM_FOUND = 7OTHERS = 8.LOOP AT STB.IT_DATA-STUFE = STB-STUFE. "层次IT_DATA-OJTXB = STB-OJTXB. "父件描述IT_DATA-BMENG = SELPOOL-BMENG.IT_DATA-IDNRK = STB-IDNRK. "子件编码IT_DATA-OJTXP = STB-OJTXP. "子件描述IT_DATA-ALPRF = STB-ALPRF. "优先级IT_DATA-EWAHR = STB-EWAHR. "使用可能性IT_DATA-STLAN = STB-STLAN. "BOM用途IT_DATA-STLAL = STB-STLAL. "可选的BOMIT_DATA-ALPGR = STB-ALPGR. "替代组IT_DATA-MTART = STB-MTART. "物料类型IT_DATA-MMEIN = STB-MMEIN. "基本计量单位IT_DATA-STPRS = STB-STPRS. "标准价格IT_DATA-MNGLG = STB-MNGLG. "以基本计量单位为准的已计算的组件数量IT_DATA-MNGKO = STB-MNGKO. "以组件计量单位为准的已计算的组件数量IT_DATA-MENGE = STB-MENGE. "组件数量IT_DATA-AUSCH = STB-AUSCH. "工序报废IT_DATA-AVOAU = STB-AVOAU. "工序废品IT_DATA-DATUV = STB-DATUV. "生效日期IT_DATA-STAWN = STB-STAWN. "外贸的商品代码和进口代码IT_DATA-AENNR = STB-AENNR. "更改编号IT_DATA-ANDAT = STB-ANDAT. "创建于IT_DATA-ANNAM = STB-ANNAM. "创建者READ TABLE MATCAT INTO MATS WITH KEY INDEX = STB-TTIDX. "根据STB-TTIDX 找MATCAT 中对应的 INDEX 可以得到其相对的上阶物料号IT_DATA-MATNR = MATS-MATNR. "相对的父件编码APPEND IT_DATA.ENDLOOP.ENDLOOP.*SORT IT_DATA BY MATNR STUFE ALPGR ALPRF IDNRK. "按成品号层次号替代组优先级原料号排序IF RB_WTD = ''. "如果选择无替代料则把替代料删除DELETE IT_DATA WHERE ALPGR <> ''AND ALPRF <> '1'. "ALPGR 替代组 ALPRF 为优先组 1为第一优先使用可性为 100 视为主料ENDIF.SELECT MARA~MATNR MARA~NORMT MAKT~MAKTX MARA~GROES MARA~NTGEW MARA~BR GEW MARC~STAWNINTO TABLE TWLXX_DATA "取得物料信息FROM MARAINNER JOIN MAKT ON MARA~MATNR = MAKT~MATNRINNER JOIN MARC ON MARA~MATNR = MARC~MATNRWHERE MAKT~SPRAS = SY-LANGU AND MARC~WERKS = '1000'.SORT TWLXX_DATA BY MATNR.LOOP AT IT_DATA.CLEAR: WLXX_DATA,HGBM_DATA.READ TABLE TWLXX_DATA INTO WLXX_DATA WITH KEY MATNR = IT_DATA-IDNRK BINARY SEARCH.CONCATENATE WLXX_DATA-MAKTX WLXX_DATA-GROES INTO WLXX_DATA-MAKTX.IT_DATA-OJTXP = WLXX_DATA-MAKTX. "连接后的完全的组件物料描述IT_DATA-NTGEW = WLXX_DATA-NTGEW.IF RB_WBC = 'X'AND IT_DATA-MTART <> '805'.IT_DATA-WEIGH = IT_DATA-MNGKO * WLXX_DATA-NTGEW.ENDIF.MODIFY IT_DATA.ENDLOOP.LOOP AT IT_DATA.CLEAR: WLXX_DATA,HGBM_DATA.READ TABLE TWLXX_DATA INTO WLXX_DATA WITH KEY MATNR = IT_DATA-MATNR BINARY SEARCH.CONCATENATE WLXX_DATA-MAKTX WLXX_DATA-GROES INTO WLXX_DATA-MAKTX. IT_DATA-OJTXB = WLXX_DATA-MAKTX. "连接后的完全的父件物料描述READ TABLE THGBM_DATA INTO HGBM_DATA WITH KEY STAWN = IT_DATA-STAWNBINARY SEARCH.IT_DATA-STAWT = HGBM_DATA-TEXT1. "根据海关编码得到相应的描述MODIFY IT_DATA.ENDLOOP.PERFORM COMMENT_BUILD CHANGING GT_LIST_TOP_OF_PAGE[].PERFORM SUB_FIELDCAT.PERFORM LAYOUT_INIT CHANGING GS_LAYOUT.CALL FUNCTION'REUSE_ALV_GRID_DISPLAY'"调用ALV显示表单数据EXPORTINGI_CALLBACK_PROGRAM = SY-REPIDI_CALLBACK_TOP_OF_PAGE = 'TOP_OF_PAGE'IT_FIELDCAT = WA_ALV_FIELDCATIS_LAYOUT = GS_LAYOUTI_CALLBACK_USER_COMMAND = G_USER_COMMANDTABLEST_OUTTAB = IT_DATAEXCEPTIONSPROGRAM_ERROR = 1OTHERS = 2.IF SY-SUBRC <> 0.MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNOWITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.ENDIF.FORM SUB_FIELDCAT.PERFORM ADD_FIELD USING'STUFE''层次''C111''X'.PERFORM ADD_FIELD USING'MATNR''父件编码''C111''X'.PERFORM ADD_FIELD USING'OJTXB''父件描述''C111''X'.PERFORM ADD_FIELD USING'BMENG''基本数量''C602''X'.PERFORM ADD_FIELD USING'IDNRK''子件编码''C111''X'.PERFORM ADD_FIELD USING'OJTXP''子件描述''C111''X'.* PERFORM ADD_FIELD USING 'MNGLG' 'MNGLG' 'C111' 'X'.PERFORM ADD_FIELD USING'MNGKO''用量''C111''X'.PERFORM ADD_FIELD USING'NTGEW''单重''C111''X'.PERFORM ADD_FIELD USING'WEIGH''重量''C111''X'.PERFORM ADD_FIELD USING'STAWN''海关编码''C111'''. "外贸的商品代码和进口代码显示前导 0PERFORM ADD_FIELD USING'STAWT''描述''C111''X'. "外贸的商品代码和进口代码描述IF RB_ALL = 'X'.PERFORM ADD_FIELD USING'MENGE''组件数量''C111''X'.PERFORM ADD_FIELD USING'MMEIN''基本计量单位''C111''X'.PERFORM ADD_FIELD USING'ALPGR''替代组''C111'''.PERFORM ADD_FIELD USING'ALPRF''优先级''C111''X'.PERFORM ADD_FIELD USING'EWAHR''使用可能性''C111''X'.PERFORM ADD_FIELD USING'MTART''物料类型''C111''X'.PERFORM ADD_FIELD USING'AVOAU''工序废品''C111''X'.PERFORM ADD_FIELD USING'AUSCH''工序报废''C111''X'.PERFORM ADD_FIELD USING'STLAN''BOM用途''C111''X'.PERFORM ADD_FIELD USING'STLAL''可选的BOM''C111''X'.PERFORM ADD_FIELD USING'DATUV''生效日期''C111''X'.PERFORM ADD_FIELD USING'AENNR''更改编号''C111''X'.PERFORM ADD_FIELD USING'ANDAT''创建于''C111''X'.PERFORM ADD_FIELD USING'ANNAM''创建者''C111''X'.ENDIF.ENDFORM.FORM ADD_FIELD USING I_FIELDNAME TYPE SLIS_FIELDNAME I_TEXT TYPE STRI NG I_NO TYPE C I_ZERO TYPE C.CLEAR WA_ALV_FIELD.WA_ALV_FIELD-FIELDNAME = I_FIELDNAME.WA_ALV_FIELD-TABNAME = 'IT_DATA'.WA_ALV_FIELD-DDICTXT = 'L'.WA_ALV_FIELD-NO_ZERO = I_ZERO. "为空时显示前导0 为X时不显示前导0WA_ALV_FIELD-SELTEXT_L = I_TEXT.IF WA_ALV_FIELD-FIELDNAME = 'BMENG'.WA_ALV_FIELD-EMPHASIZE = 'C602'.ENDIF.IF WA_ALV_FIELD-FIELDNAME = 'MNGKO'.WA_ALV_FIELD-EMPHASIZE = 'C510'.ENDIF.APPEND WA_ALV_FIELD TO WA_ALV_FIELDCAT.ENDFORM. "ADD_FIELDFORM LAYOUT_INIT CHANGING RS_LAYOUT TYPE SLIS_LAYOUT_ALV.RS_LAYOUT-COLWIDTH_OPTIMIZE = 'X'.RS_LAYOUT-BOX_FIELDNAME = 'SEL'.RS_LAYOUT-ZEBRA = 'X'.RS_LAYOUT-DETAIL_POPUP = 'X'.ENDFORM. "LAYOUT_INITFORM TOP_OF_PAGE.CALL FUNCTION'REUSE_ALV_COMMENTARY_WRITE'EXPORTINGIT_LIST_COMMENTARY = GT_LIST_TOP_OF_PAGE.ENDFORM. "TOP_OF_PAGEFORM COMMENT_BUILD CHANGING LT_TOP_OF_PAGE TYPE SLIS_T_LISTHEADER.DATA LS_LINE TYPE SLIS_LISTHEADER.CLEAR LS_LINE.LS_LINE-TYP = 'H'.LS_LINE-INFO = 'BOM展开'.APPEND LS_LINE TO LT_TOP_OF_PAGE.CLEAR LS_LINE.LS_LINE-TYP = 'S'.LS_LINE-KEY = '做成时间:'.LS_LINE-INFO = SY-DATUM.APPEND LS_LINE TO LT_TOP_OF_PAGE.LS_LINE-KEY = '做成者:'.LS_LINE-INFO = SY-UNAME.APPEND LS_LINE TO LT_TOP_OF_PAGE.ENDFORM. "COMMENT_BUILDFORM USER_COMMAND USING R_UCOMM LIKE SY-UCOMMRS_SELFIELD TYPE SLIS_SELFIELD.CASE R_UCOMM.WHEN'&IC1'. " SAP STANDARD CODE FOR DOUBLE-CLICKING IF RS_SELFIELD-SEL_TAB_FIELD = 'IT_DATA-MATNR'.SET PARAMETER ID'MAT'FIELD RS_SELFIELD-VALUE.CALL TRANSACTION'CS03'AND SKIP FIRST SCREEN.ENDIF.IF RS_SELFIELD-SEL_TAB_FIELD = 'IT_DATA-IDNRK'.SET PARAMETER ID'MAT'FIELD RS_SELFIELD-VALUE.CALL TRANSACTION'MM03'AND SKIP FIRST SCREEN.ENDIF.IF RS_SELFIELD-SEL_TAB_FIELD = 'IT_DATA-MBLNR'.SET PARAMETER ID'MBN'FIELD RS_SELFIELD-VALUE.CALL TRANSACTION'MB51'AND SKIP FIRST SCREEN.ENDIF.ENDCASE.ENDFORM.。
SAP BOM及工艺路线及工艺路线
版本:周勋 2010年12月6日
举例说明
现在我们需要建立一个DCQ26前左 门SAP的BOM 与工艺路线:
1.SAP的BOM如何建立 2.工艺路线如何建立
如何建立DCQ26的SAP BOM
1.获得采购BOM和包装BOM 2.将采购BOM和包装BOM变为生产BOM 3将生产BOM变为SAP BOM
4.物料表用途:1(固定) 5.可选BOM: 1(固定) 6.生效日期:20100101(固定) 7.有效截止日期:20991231(固定) 8.基础数量:填写生产bom上成品的数量(最小包装数) 9.可选文本:对BOM的一种描述(一般和物料描述一样) 10.项目:以10进制递增 11.项目类别:L(固定) 12.组件:将零件PDM号提供给赵明伦,赵明伦提供10位零
将采购BOM中的数据和包装联系单上的信息 进行汇总,剔除一些不需要的信息最终变为 DCQ26生产bom。
注意:bom里的用量不允许出现分数,一般 以一个包装箱内的成品数为最小包装数进行 统计。
返回
3将生产BOM变为SAP BOM
根据SAP bom模板将抬头下面需要的数据填 上。(需要的信息都在上面已经完成的生产 BOM中。)
件SAP号码
3将生产BOM变为SAP BOM
13.组件描述:对这个零件的详细描述(一般写零件名称) 14.组件数量:根据基础数量(最小包装数)和本零件在此
成品上的用量得出 15.单位:EA(固定) 16.废品率:0(固定) 17.生产订单发货点:填写线边库库位号 18.提前偏置量:需要提前预装的天数(格式为:-天数) 19.排序字符串:填写对应的工作中心编号 完成 返回
可配置BOM基本流程与示例
*资料来源于网络,经整理及修正*下面先谈谈配置BOM的一点理解:1. 在SAP系统中BOM和VC是两大块知识,当业务需要时把两块知识结合在一起搭建的BOM称为变式BOM ;2. 当你的产品销售模式主要以客户定制为主,而且产品同一属性可供客户选择的项目比较多,那么从方便客户定制、减少物料编码、BOM数量等综合考虑请启用变式BOM ;3. 变式BOM的维护相对复杂,额外多出一些类、特性、特性值、配置参数文件、相关性等基础数据维护工作;4•同时由于启用变式BOM,你的其他模块的相应业务可能也要跟使用普通BOM有所不同。
1)可配置物料只有一个号码,它本身有characteristics/class/object depe ndan cy/c on figurati onprofile之类的东西(如果没有con figuration profile ,销售订单是不能创建的);2)可配置物料有一个所谓的super bom (及super rout in g),穷举所有可能的组件,每个组件有不同的object dependancy ,销售订单的不同配置信息就通过object dependancy 去抓取定可配置物料所需要的有关组件及其数量。
2)可配置物料是不能CO01手工创建生产工单的,但如果出现了几种常用配置的产品需要预投库存生产”的场景怎么办?创建一个非可配置物料,MRP3中作指定配置与可配置物料挂钩(在此之前,必须使用CU41为可配置物料创建configuration profile ),使用CS40与super bom 挂钩,使用ca02 与super routing 完成material assignment 。
这样就可以对代表常用配置的物料号”(SAP称之为material variant )进行预投生产了。
BOMSAP 中,配置BOM 勺基本顺序流程 1. 创建特征及特征值(CT04)。
2. 创建“类”,并将特征归结在类中(CL01)。
SAP物料和BOM的创建、导入及查询
SAP物料和BOM的创建、导入及查询SAP系统的使用及说明-MM模块的应用2017.07.13目录一、查询命令及使用二、物料代码编写三、BOM编写与导入四、物料及BOM修改物料/编码查询常用固定代码说明:工厂代码(3001);可选BOM-生产BOM:1研发BOM:2单项查询:MM03多项查询:MM60、ZPP025一、日常查询多项查询一、日常查询多项查询一、日常查询多项查询价格查询也是使用的这个命令一、日常查询BOM查询逐层展开:CS11多层展开:CS12汇总展开:CS13(均可导出)树状结构展开:CSMB(建议查询使用、无法导出)一、日常查询逐层展开一、日常查询逐层展开一、日常查询多层展开一、日常查询汇总展开一、日常查询树状结构展开一、日常查询基本件外购件(标准件和特标件)原材料二、物料代码编写基本件二、物料代码编写基本件热板导向装置;部套;LLY-B1780.1.2;栓轴;42CrMo;φ63X170;LLY-B1780.1.2-1;二、物料代码编写基本件PS:用LEN()函数检查下物料描述字符总数,不能超过40二、物料代码编写标准件二、物料代码编写特标件二、物料代码编写外购件二、物料代码编写原材料二、物料代码编写原材料二、物料代码编写仅基本件中的自制部分需要编写BOM;自制件的BOM编写到原材料时方可停止;一个部套中既有自制又有外协的,各个分支的BOM到外协件时停止。
三、BOM编写与导入三、BOM编写与导入三、BOM编写与导入BOM导入:ZPP014需要分别导入生产BOM和研发BOMPS:账号3000PPE00 8才有这个权限三、BOM编写与导入三、BOM编写与导入物料的常见修改:物料描述、生产方式、存储库位、单位等。
BOM的常见修改:增、减、物料替换等。
四、修改BOM修改:CS012四、修改研发BOM可直接修改;生产BOM修改前需要确认是否已经被项目部、工艺部等使用。
变更编号创建:CC01四、修改Thanks!2017-07-08。
SAP销售BOM配置及举例
销售BOM配置文档一、业务说明及前提公司在销售“盒装综合礼品”时,其包装含有多个产品组合,在销售订单创建时录入“盒装综合礼品”时,自动带出其下挂组件,礼品盒无库存,不做库存管理,其相关组件有实际库存。
BOM:5-销售和分销”;组件:180g180g 1*040简装)组成,组件项目全部设置为“与销售相关-X-和SD相关”;客户:销售范围:1101-00-00(郑州三全/公用分销渠道/公用产品组)目标实现:可用性检查、信贷控制、货物移动、发票项目、发票金额二、后台配置1、可用性检查配置:要求成品不参与可用性检查、组件参与检查;02(个别需求);2、信贷控制配置:成品影响信贷额度,组件对信贷额度没有影响;定义风险类别:IMG->财务会计(新)->应收账目和应付账目->信用管理->信用控制会计科目->定义风险类别定义自动信贷控制:IMG->销售和分销->基本功能->信贷管理/风险管理->信贷管理->定义自动信贷控制(OVA8); 其信贷检查为“静态”。
3、项目类别配置:路径:IMG->销售和分销->销售->销售单据->销售单据项目->定义项目类别“结构范围”根据实际需要进行配置,可设置为“B-展开多级物料票据”;“应用程序”选择“SD01-销售和分销”例如:订单类型:OR(标准订单)项目类别:TAN(标准项目-发出商品)、TANN(免费项目)后台设置:IMG->销售和分销->销售->销售单据->销售单据项目->分配项目类别将“TANN”的上层项设置为“TAN”;4、计划行配置:实现“成品”进行定价计算,无库存,不进行货物移动;“组件”不进行价格计算,有库存,进行货物移动。
后台路径:IMG->销售和分销->销售->销售单据->计划行->定义计划行类别、分配计划行类别例如:计划行类别CP (物料需求计划)、CD(无交货)将“TAN+物料类型”分配CD(无交货)、“TANN+物料类型”分配CP(物料需求计划)。
BOM按层展开在ABAP中的几个实现方法
下面是BOM按层展开在ABAP中的几个实现方法,做完以后发现用层次遍历算法时循环比用递归无论是在程序可读性、运行效率上、异常处理方面都要好,另这个说法也适合深度遍历算法。
最初一的个版本,递归的方式实现FUNCTION z bom explode.*"--------------------------------------------------------- *"*"Local Interface:*" IMPORTING*" REFERENCE(MATNR) TYPE MATNR*" REFERENCE(WERKS) TYPE WERKS_D*" TABLES*" PARENT STRUCTURE SBOM*" CHILDREN STRUCTURE SBOM*" EXCEPTIONS*" NO_BOM_FOUND*"----------------------------------------------------------DATA: it_a TYPE TABLE OF sbom.DATA: it_b TYPE TABLE OF sbom.IF parent[] IS INITIAL.* first time that call to the FMSELECT stpo~idnrkINTO TABLE it_aFROM mast INNER JOIN stpoON mast~stlnr = stpo~stlnrWHERE mast~matnr = matnrAND mast~werks = werks.IF it_a[] IS INITIAL.RAISE no_bom_found.ENDIF.ELSE.SELECT stpo~idnrkINTO TABLE it_aFROM mast INNER JOIN stpoON mast~stlnr = stpo~stlnrFOR ALL entries IN parentWHERE mast~matnr = parent-matnrAND mast~werks = werks.* if there is no any sub item, then stop the recursionIF it_a[] IS INITIAL.EXIT.ENDIF.ENDIF.APPEND LINES OF it_a TO children.* get sub items recursivelyCALL FUNCTION 'Z_BOM_EXPLODE'EXPORTINGmatnr = ''werks = werksTABLESparent = it_achildren = it_b.APPEND LINES OF it_b TO children.* delete duplicate sub items at the endIF parent[] IS INITIAL.SORT children BY matnr.DELETE ADJACENT DUPLICATES FROM children. ENDIF.ENDFUNCTION.1FUNCTION z bom explode 1.*"--------------------------------------------------------- *"*"Local Interface:*" IMPORTING*" VALUE(MATNR) TYPE MATNR*" VALUE(WERKS) TYPE WERKS_D*" TABLES*" CHILDREN STRUCTURE SBOM*" EXCEPTIONS*" NO_BOM_FOUND*"---------------------------------------------------------DATA: it_a TYPE TABLE OF sbom,it_b TYPE TABLE OF sbom,it_result TYPE TABLE OF sbom.SELECT stpo~idnrkINTO TABLE it_aFROM mast INNER JOIN stpoON mast~stlnr = stpo~stlnrWHERE mast~matnr = matnrAND mast~werks = werks.APPEND LINES OF it_a TO it_result.WHILE NOT it_a[] IS INITIAL.SELECT stpo~idnrkINTO TABLE it_bFROM mast INNER JOIN stpoON mast~stlnr = stpo~stlnrFOR ALL entries IN it_aWHERE mast~matnr = it_a-matnrAND mast~werks = werks.APPEND LINES OF it_b TO it_result.it_a[] = it_b[].ENDWHILE.* delete duplicate sub itemsSORT it_result BY matnr.DELETE ADJACENT DUPLICATES FROM it_result.children[] = it_result[].ENDFUNCTION.2FUNCTION z bom explode 2.*"---------------------------------------------------------- *"*"Local Interface:*" IMPORTING*" VALUE(MATNR) TYPE MATNR*" VALUE(WERKS) TYPE WERKS_D*" TABLES*" CHILDREN STRUCTURE SBOM*" EXCEPTIONS*" NO_BOM_FOUND*"---------------------------------------------------------- DATA: it_result TYPE TABLE OF sbom,wa_bom TYPE sbom.SELECT stpo~idnrkINTO TABLE it_resultFROM mast INNER JOIN stpoON mast~stlnr = stpo~stlnrWHERE mast~matnr = matnrAND mast~werks = werks.LOOP AT it_result INTO wa_bom.SELECT stpo~idnrkAPPENDING TABLE it_resultFROM mast INNER JOIN stpoON mast~stlnr = stpo~stlnrWHERE mast~matnr = wa_bom-matnrAND mast~werks = werks.ENDLOOP.* delete duplicate sub itemsSORT it_result BY matnr.DELETE ADJACENT DUPLICATES FROM it_result.children[] = it_result[].ENDFUNCTION.FUNCTION Z BOM EXPLODE.*"--------------------------------------------------------- *"*"Local Interface:*" IMPORTING*" VALUE(MATNR) LIKE MARA-MATNR*" VALUE(WERKS) LIKE MARC-WERKS OPTIONAL*" VALUE(CAPID) LIKE TC04-CAPID DEFAULT 'PP01'*" TABLES*" STB STRUCTURE STPOX*" RETURN STRUCTURE BAPIRET2*"---------------------------------------------------------IF WERKS IS INITIAL."Added in case external call does not know WERKS = '3001'.ENDIF.IF CAPID IS INITIAL.CAPID = 'PP01'.ENDIF.CALL FUNCTION 'CS_BOM_EXPL_MAT_V2'EXPORTINGCAPID = CAPIDDATUV = SY-DATUMMEHRS = 'X'MTNRV = MATNRWERKS = WERKSTABLESSTB = STBEXCEPTIONSNO_BOM_FOUND = 1.IF sy-subrc <> 0.msg_typ = 'E'.msg_id = 'Z_EF'.msg_no = '002'.msg_v1 = MATNR.if not msg_typ is initial.* append error to table RETURNcall function 'BALW_BAPIRETURN_GET2'exportingtype = msg_typcl = msg_idnumber = msg_nopar1 = msg_v1par2 = msg_v2par3 = msg_v3par4 = msg_v4parameter = spacerow = spacefield = spaceimportingreturn = wa_return_tmp.append wa_return_tmp to return.endif.ENDIF.ENDFUNCTION.。
BOM-做可配置BOM的基本流程
做可配置BOM的基本流程SAP中,配置BOM的基本顺序流程.做可配置BOM的基本流程1.创建物料主数据,比如K1234,该物料是可配置的(MM01)2.创建物料清单,有哪些物料,将组成K1234. (CS01)3.创建CLASS,每个可配置物料只有1个CLASS.(CL01)4.创建特征值.特征值归结在CLASS中.(CT01)5.创建零件关系.(CU01)6.零件关系挂进物料清单.(CS02)建个ORDER CHECK.7.创建CONFIG PROFILE,每个可配置物料就一个CONFIG PROFILE(CU41)8.创建PRICE关系.(CU01)9.PRICE关系挂进CONFIG PROFILE.(CU42)10.报价.(VK11)建ORDER CHECK.可以看到1--6步是零件关系的设置,在完成后,可以进行配置和生产7-10步是价钱关系,完成后可以报价.Super BOM(Configurable material BOM)的应用熟悉make-to order之前,先说一下什么是Super BOM,因为一般make-to order和Super BOM,变式(配置)BOM通常在一起.降低材料成本(11%-40%)、提高生产率(6%-45%)、加快资金周转(8%-35%)、提高用户服务水平(10%-27%)?一Classification System(分类系统)简介顾名思义,分类系统就是根据一定的特征组合相似对象从而使你能快速查找到所需的对象.SAP预定义了许多对象类型你几乎不要做,实际上应用分类系统基本上不用做任何或很少设置就可直接使用首先明白这几概念,请看图1[4]-[6] .1.Object(对象)物料,供应商,客户,批次,BOM等都可作为可分类的对象2.Object key(对象关键码)3.object type4.class5.class type6.characteristic7.class/characteristic group[1]Define Default Settings状态 1 (released)被预定义给所有的特征(characteristics),除非你有特殊需求,SAP推荐不做任何更改[2]Define特征组[3]Define特征状态典型的状态如图2[4][5][6]二Super BOM和配置BOM应用举例我做过的一个CTO的项目是.算了,还是假设你为电脑厂家设计一CTO项目,客户通过网站选定主机,机箱和产品包装材料,假设每种有3种选择,如使用普通的BOM,就有3*3*3中BOM 组合,实际上可能是9*9*8或更多选择.客户通过网站选定机型后通过程序Link到ERP系统,自动产生material number和相关BOM 然后汇集到生产部门生产.典型的应用还发生在制鞋制衣行业.1.建立特征(Tcode:CT04)如图1.Restrictions是做限制的,比如选择了ZST_ZJ特征不能用于某Class type,这很好理解.上面建立了特征ZST_ZJ(主机)包含3个特征值ZZJ1-ZZJ3同样地,建立特征ZST_BOX包含特征值ZBOX1-ZBOX3,特征ZST_PAK包含特征值ZPAK1-ZPAK3.建立类(CL01/CL02/CL03)现在的问题是如何将Characteristic/Class和material master data/BOM master data 挂勾.为了不混淆视听,通常的做法是各层物料尽量采用class名称,特征值(特征这层似乎不要建立物料)的名称,为了方便理解,假设配置BOM下面再没有可配置子BOM,于是,本例你需要建立的material No是ZST_MODEL(Super BOM top-level material),ZZJ1-ZZJ3,ZBOX1-ZBOX3, ZPAK1-ZPAK3 .为了方便理解,再假设每个主机,机箱和包装材料都由3个material component,比如ZZJ1由970000-970002组成,ZZJ2由970003-970005组成,ZZJ3由970005-970008组成. 依此类推,机箱ZBOX1-ZBOX3和包装材料ZPAK1-ZPAK3的material component从970009-970026(假设每组件有3component组成).建立物料(Tcode:MM01)ZST_MODEL(1)Basic data2 的Material is configurable一定要选上.表示其是可被配置的物料(2) 在Classification view选上分类ZST_MODEL(Class和物料同名),带出上面所设定的三特征值.(3)MRP1 view 的MRP type可设置成ND不跑MPR(4)MRP2 view Special procurement 设成50,就是说通常这料是Phantom Part,关于phantompart请看例1-Phantom Part的使用.ZZJ1-ZZJ3,ZBOX1-ZBOX3,ZPAK1-ZPAK3根据实际需要,如果你需要进行库存管理,和普通物料一样,如不需要可简称phantom part. 注意:这层物料并不需要建立Classification .建立Super BOM(CS01)从图5-[1]进去维护Object Dependency(注意在创建OD时不要直接双击item进去维护).图6-[2]Rltnship使用BOM material加Item.然后到图6-[1]维护Dependency,Dependency维护如图7.图7-[1]$ROOT表示跟特征,$ROOT.ZST_ZJ表示其下的特征ZST_ZJ(请回顾图3-[3]), = ‘ZJJ1’ ,ZJJ1表示特征ZST_ZJ的特征值ZJJ1(请回顾图2-[3]),这样就将item component ZZJ1和特征ZST_ZJ的特征值ZZJ1 link上了.同样地,建立好图5-[2]的其他component的OD ,比如ZBOX1的SEL. Condition是ZST_MODEL_ZBOX1,Dependency是$ROOT.ZST_BOX = ‘ZBOX1’ . ZPAK1 Condition是ZST_MODEL_ZPAK1,Dependency是$ROOT.ZST_PAK = ‘Z PAK1’等.*如需要你也可使用$ROOT.ZST_PAK in ‘ZPK1’.至此,一个超级BOM就建立好了,下面假设你做了一电子商务网站,允许用户在3种主机3种机箱3种包装选择.选择好了自动建立Sales part和BOM,为此你建立sales part ZMODEL1.建立configurable profile (Tcode:CU41)为配置物料建立configurable profile .进去后class type 选300,保存就为configurable material ZST_MODEL建好了configurable profile .(1)建立sales part MM01如图8,在basic data2 view中选择Configurable material ZST_MODEL,然后进classification view.到MRP3 view,如图9-[3],只要简单按”copy x-plant configuration”按钮就可,接下来在使用CS40对configurable material ZST_MODEL做个link,sales model物料ZMODEL1的BOM就有了,你必须使用CS11/CS12/CS13等查看而不能使用CS02/CS03查看配置BOM.*假设在sales model物料ZMODEL1选特征值是ZZJ1, ZBOX1,ZPAK1,如图8-[5](2)Link to Super BOM (Tcode: CS40)CS40 将ZMODEL1和Configurable material ZST_MODEL link 上如图11-[1],单击按钮’All Allocs to BOM’将ZMODEL1和ZST_MODELlink上.(3)Check with CS12使用CS12检查ZMODEL1的BOM,OK .Super BOM应用步骤总结(1)建立特征和特征值(Tcode :CT04)在本例你建立了特征ZST_ZJ表示电脑主机包含3特征值(主机类)ZZJ1-ZZJ3,特征ZST_BOX包含3特征类型(机箱)ZBOX1-ZBOX3,特征ZST_PAK包含3特征值(电脑包材)ZPAK1-ZPAK3 .(2)建立类(Tcode:CL01)在本例你建立ZST_MODEL类,class type是300(variant)(3)建立物料(MM01)首先建立ZST_MODEL,这是一个configurable material,可建成phantom part,为了便于管理,将它建立和class ZST_MODEL同名称,同样按9个特征值建立物料(4)建立BOM.(CS01)假设物料ZZJ1-ZZJ3,ZBOX1-ZBOX3,ZPAK1-ZPAK3有BOM,这些物料是普通的part(如需要,这些料也可建立成configurable material,这也没什么复杂的,本例只是为了简化实例),BOM也是普通的BOM例1- Phantom Part的使用.Phamton part作用1.体现工艺制作流程2.节省存储空间,因为BOM是扁平save在表中的.3.便于成本计算例2 配置BOM的成本估算。
182东风汽车SAP实施项目_单元测试_PP_CS13 综合展开BOM
事物代码 CS13事物名称综合展开BOM
作者负责顾问关键用户流程负责人测试人员
胡X 秦X 胡X 李振X 胡X
模块参考业务流程主清单编码子流程编码
PP(生产)
单元测试的详细描述:查看系统中创建的生产物料清单BOM
(请对本事物进行简短的描述,引发本事物处理的因素和预期的结果)
执行测试的历史记录:
测试人员
测试日期东风审核人员审核日期状态 (通过/失败)
通过
SAP 菜单路径:
SAP 菜单〉后勤〉生产〉主数据〉物料清单〉报告〉BOM 展开〉物料 BOM 〉CS13 - 汇总 BOM
测试数据
数据类型数据值 / 编码描述备注
物料C20XX0315NJH 需要查看BOM的物料
工厂RD00 研发中心生产厂
BOM应用PP01 生产-通用
序号预期的结果实际结果是否通过测试(Y/N) 注释
(与测试结果有关的系统信息》
1 BOM查询成功成功查看Y。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
(txt format), open this local file use other tools, e.g. Microsoft Access, in
SELECT * FROM MAST WHERE WERKS = IWERKS
AND MATNR IN IMATNR
AND STLAN = ISTLAN.
IMAST-MATNR = MAST-MATNR.
SELECT SINGLE * FROM MAKT WHERE MATNR = MAST-MATNR.
102 istpo-maktx,143 istpo-ausch,
154 istpo-posnr.
endloop.
endloop.
endloop.
uline.
endloop.
系统报没有:ZSDIAUTH
那一部分是我们自己的权限检查,你把它‘*’掉就可以了
众多BOM组件一次性导出系统的处理
stlkn like stas-stlkn,
end of istas.
data: begin of istpo occurs 0,
stlnr like stpo-stlnr,
menge like stpo-menge,
meins like stpo-meins,
idnrk like stpo-idnrk,
endselect.
LOOP AT IMAST.
SELECT SINGLE * FROM STKO WHERE STLNR = IMAST-STLNR
AND STLAL = IMAST-STLAL
AND LOEKZ NE 'X'.
ISTKO-STLNR = STKO-STLNR.
stlan like mast-stlan,
end of imast.
data: begin of istko occurs 0,
stlnr like stko-stlnr,
stlty like stko-stlty,
stlal like stko-stlal,
bmeng like stko-bmeng,
istpo-maktx = makt-maktx.
endif.
istpo-ausch = stpo-ausch.
istpo-posnr = stpo-posnr.
istpo-stlty = stpo-stlty.
append istpo.
clear istpo.
ENDSELECT.
79 '单位',83 'BOM组件料号',102 'BOM组件名称',
143 '部件废品(%)',154 '项目',159 'BOM套数',166 '表头基本数量',
184 '表头单位',192 '有效期始于',203 'BOM用途'.
uline.
START-OF-SELECTION.
LOOP AT ISTAS.
SELECT * FROM STPO WHERE STLNR = ISTAS-STLNR
AND STLTY = ISTAS-STlTY
AND STLKN = ISTAS-STLKN.
istpo-stlnr = stpo-stlnr.
istpo-menge = stpo-menge.
可以写段调用 BAPI 的 VB 程序,把 BOM 读到任何数据库里去。
You can develop one simple program to finish this task, in this program, you should
use BOM explore function (or logical table) to store components of BOM to internal
CLEAR ISTKO.
* ENDSELECT.
ENDLOOP.
LOOP AT ISTKO.
SELECT * FROM STAS WHERE STLNR = ISTKO-STLNR
AND STLTY = ISTKO-STLTY
AND STLAL = ISTKO-STLAL.
and stlty = istko-stlty.
loop at istpo where stlnr = istas-stlnr
and stlkn = istas-stlkn
and stlty = istas-stlty.
write:/60 istpo-menge,79 istpo-meins,83 istpo-idnrk,
access, you can import your original BOM and create new query to compare them.
我有一段导出程序,如果你有开发权限可以用一下。
REPORT ZPPBOMDOWN NO STANDARD PAGE HEADING line-size 213 line-count 65.
159 istko-stlal,
166 istko-bmeng,
184 istko-bmein,
192 istko-datuv,
203 imast-stlan.
loop at istas where stlnr = istko-stlnr
and stlal = istko-stlal
ENDLOOP.
loop at imast.
loop at istko where stlnr = imast-stlnr
and stlal = imast-stlal.
* and loekz <> 'X'.
write:/00 imast-matnr,
19 imast-maktx,
众多BOM组件一次性导出系统的处理
由于工作需要现需要将导入系统的所有BOM组件导出系统进行核对,但是由于组件数据量太多不能
成功导出,会因为时间过长造成处理错误.另外EXCEL表格最大容量为65536,在处理导出的数据时也
存在不能正常打开文件的情况,请问各仁兄有何高见解决这两个问题.
PARAMETERS: IWERKS LIKE MAST-WERKS OBLIGATORY.
SELECT-OPTIONS: IMATNR FOR MAST-MATNR.
PARAMETERS: ISTLAN LIKE MAST-STLAN OBLIGATORY.
SELECTION-SCREEБайду номын сангаас: END OF BLOCK INPUT.
TABLEs: MAST,STKO,STpo,STAS,MAKT,zusr03.
data: begin of imast occurs 0,
matnr like mast-matnr,
maktx like makt-maktx,
stlnr like mast-stlnr,
stlal like mast-stlal,
istpo-meins = stpo-meins.
istpo-stlkn = stpo-stlkn.
istpo-idnrk = stpo-idnrk.
select single * from makt where matnr = stpo-idnrk.
if sy-subrc = 0.
bmein like stko-bmein,
datuv like stko-datuv,
end of istko.
data: begin of istas occurs 0,
stlnr like stas-stlnr,
stlty like stas-stlty,
stlal like stas-stlal,
AT SELECTION-SCREEN ON BLOCK input.
INCLUDE ZSDIAUTH.
CALL FUNCTION 'Z_PP_AUTH_CHECK'
EXPORTING
WERKS = IWERKS
tables
zwerks = duozhi.
top-of-page.
write: 180 '列印者:',zusr03-name1+0(10).
if imatnr-low <> ' '.
write:/02 '物料号码:',imatnr-low.
if imatnr-high <> ' '.
write: '-',imatnr-high.
endif.
maktx like makt-maktx,
stlkn like stpo-stlkn,
ausch like stpo-ausch,
posnr like stpo-posnr,
stlty like stpo-stlty,
end of istpo.
SELECTION-SCREEN: BEGIN OF BLOCK INPUT.
else.
write:/02 '物料号码:'.