订单BOM、销售BOM、标准BOM

 

訂單BOM: 是實際生產時用的BOM, 在標準BOM和銷售BOM基礎上增減物料的BOM
銷售BOM: 是為特定客戶設定的BOM, 在主檔數據層次上的BOM, 在生產時是帶到訂單BOM中去的.
標準BOM: 是公司為標準生產的BOM, 在主檔數據層次上的BOM, 在生產時是帶到訂單BOM中去的.

訂單BOM >= 銷售BOM >= 標準BOM

一般使用中:
訂單BOM是在銷售BOM的基礎或標準BOM基礎上添加部分物料或減少或修改實際需求數量,
銷售BOM是在標準BOM基礎上增加特定客戶需要的BOM, 例如顏色,
標準BOM是公司在標準生產中使用的BOM, 通常由工程設計BOM產出再進行修正, 在SAP的標準成本計算是需要用到的.
工程設計BOM(應該很少公司用)是工程設計的BOM, 即將工程師畫的爆炸圖進行系統化.
SAP還有幾種BOM.

標準BOM維護: CS01/CS02/CS03, 查詢CS12
銷售BOM維護: CS61/CS62/CS63, 查詢CSK2
訂單BOM維護: CO01/CO02/CO03

銷售BOM使用前提是產品必須是MAKE TO ORDER, 否則系統在展開BOM時只會拿標準BOM, 不會拿銷售BOM的數據.

標準BOM的表: MAST
銷售BOM的表: KDST
訂單BOM的表: 沒有, 我的理解就是RESB中工單需求清單

在MTO方式来说,才会产生销售订单BOM。业务部门根据客户要求,配置产生的成品特性,从而自动从标准的最大BOM中选择组件,生成销售订单BOM
这其中就明确了两个概念,销售订单BOM是在建立配置特性的基础上的,从最大化的标准BOM中选择相关特性限制的组件而产生的BOM。可以说,销售BOM是标准BOM的一个特例。这时候的标准BOM罗列了所有可能的配置。
订单BOM则是生产中使用的BOM,是MRP根据销售订单配置和标准BOM计算产生的BOM,订单BOM在下达生产之前,可以通过计划员的调整以及设置替代,更换组件或数量,而下达时依此生产的BOM。此BOM用于生产和发料,并是成本BOM的直接来源。

----------------------------------------------

CS_BOM_EXPL_KND_V1 展销售订单bom
CS_BOM_EXPL_MAT_V2 展物料bom

CS_BOM_EXPLOSION
CS_BOM_EXPLOSION_EQUI
CS_BOM_EXPLOSION_MAT
CS_BOM_EXPL_EQU_V2
CS_BOM_EXPL_KND_V1
CS_BOM_EXPL_MAT_V2
CS_BOM_EXPL_PSP_V1
CS_BOM_EXPL_TPL_V1

输出未激活的BOM的function
CSAP_MAT_BOM_READ

15 .函数CS_WHERE_USED_MAT(逆查BOM)
   说明﹕取的物料的上层物料
                CALL FUNCTION 'CS_WHERE_USED_MAT' 
             EXPORTING
               datub                      = sy-datum
               datuv                      = sy-datum
               matnr                      = t_afru-matnr
*             POSTP                       = ' '
*             RETCODE_ONLY                = ' '
*             STLAN                       = ' '
               werks                      = '1000'
*        IMPORTING
*             TOPMAT                      =
             TABLES
                  wultb                   = ltb
                  equicat                 = equicat
                  kndcat                  = kndcat
                  matcat                  = matcat
                  stdcat                  = stdcat
                  tplcat                  = tplcat
             EXCEPTIONS
                  call_invalid                = 1
                  material_not_found          = 2
                  no_where_used_rec_found     = 3
                  no_where_used_rec_selected  = 4
                  no_where_used_rec_valid     = 5
                  OTHERS                      = 6.
         参数﹕datub:  当前日期
               datuv:  当前日期
               matnr:  要找回上层BOM物料的物料
               werks:  工厂通常取’1000’
               wultb:  所有的上层BOM物料存放在该表中(该表结构固定)
               equicat:  固定结构﹐一定要
               kndcat :  固定结构﹐一定要
               matcat:  固定结构﹐一定要
               stdcat : 固定结构﹐一定要
               tplcat : 固定结构﹐一定要
  示例:   ZBAK_ZPP000222_LSL

BOM 展开函数(顺查BOM)
16 .只展开 BOM 的函数
  CALL FUNCTION 'CS_BOM_EXPL_MAT_V2'
   EXPORTING
      capid = pm_capid   “应用程序 一般为 PP01
      datuv = pm_datuv   “通常为系统的当前日期
      mtnrv = pm_mtnrv   “要展开BOM 的物料
      mehrs = 'X'        “ x 表示多层展开﹐space 表示只展开第一层
      werks = pm_werks   “ 通常为 1000
   IMPORTING
      topmat = selpool
      dstst  = dstst_flg
   TABLES
      stb = stb          “展开的 BOM 存放在该内表
      matcat = matcat    “下面含有组件的物料存放在该内表

17 .展开与特性相关的特定款号的 BOM
   CALL FUNCTION 'CS_BOM_EXPL_ KND_V1'
   EXPORTING
      capid = pm_capid   “应用程序 一般为 PP01
      datuv = pm_datuv   “通常为系统的当前日期
      mtnrv = pm_mtnrv   “要展开BOM 的物料
      cuobj = vbap_wa-cuobj “与特性相关的组态
      mehrs = 'X'        “ x 表示多层展开﹐space 表示只展开第一层
      werks = pm_werks   “ 通常为 1000
   IMPORTING
      topmat = selpool
      dstst  = dstst_flg
   TABLES
      stb = stb          “展开的 BOM 存放在该内表
      matcat = matcat    “下面含有组件的物料存放在该内表

范例见系统报表程序 RCS12001

1 说明﹕内表 stb, matcat 结构固定, 输出参数 selpool , dstst_flg 固定,
      其固定结构如下:
 内表:
   DATA: BEGIN OF stb OCCURS 1000.
         INCLUDE STRUCTURE stpox.
   DATA: END OF stb.
   DATA: BEGIN OF matcat OCCURS 50.
         INCLUDE STRUCTURE cscmat.
   DATA: END OF matcat.
  输出参数:
     DATA: BEGIN OF selpool.
           INCLUDE STRUCTURE cstmat.
      DATA: END OF selpool.
      DATA: dstst_flg LIKE csdata-xfeld.

2 说明﹕内表 stb 中的数据按第一层顺序号排序﹐如第一层组件下还有BOM,
          则其BOM显示在其下面﹐并依次分层(下面BOM 也按顺序号排列)
         stb 下的重要字段说明如下﹕
           stufe : 在整个 BOM 中的层次
             tdidx : 对应 matcat-index ﹐标志直属哪个物料下的 BOM
             ojtxb : 上层物料的物料说明
             ojtxp : 本身物料说明
             idnrk : 组件名(即物料)
             stlkn : 在各自 BOM 中的顺序号
             matkl : 该物料群组
             mtart : 物料类型 (成品﹐半成品﹐原料)
           matcat 下的重要字段 (表matcat 存放下面还有BOM 的物料)
           matnr : 物料号
             index : 顺序号

本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/elin_yi/archive/2009/08/19/4462900.aspx

订单BOM、销售BOM、标准BOM的更多相关文章

  1. 什么是BOM?,什么是DOM? BOM跟DOM之间的关系

    什么是BOM? BOM是browser object model的缩写,简称浏览器对象模型.是用来获取或设置浏览器的属性.行为,例如:新建窗口.获取屏幕分辨率.浏览器版本号等. 比如 alert(); ...

  2. 美萍超市销售管理系统标准版access数据库密码mp611

    美萍超市销售管理系统标准版access数据库密码mp611 作者:admin  来源:本站  发表时间:2015-10-14 19:01:43  点击:199 美萍超市销售管理系统标准版access后 ...

  3. sap 如何获取公司间采购订单或销售订单的交货状态

    在上SAP项目过程,上了SD模块的企业一般都要做一些跟公司间采购订单或销售订单的交货状态的报表,通过这些报表可以经客户的业务上提供很大的灵活性,至于如何的灵活,还是那句老话“谁用谁知道".1 ...

  4. 详解BOM头以及去掉BOM头的方法

    类似WINDOWS自带的记事本等软件,在保存一个以UTF-8编码的文件时,会在文件开始的地方插入三个不可见的字符(0xEF 0xBB 0xBF,即BOM).它是一串隐藏的字符,用于让记事本等编辑器识别 ...

  5. 从零开始学 Web 之 BOM(一)BOM的概念,一些BOM对象

    大家好,这里是「 从零开始学 Web 系列教程 」,并在下列地址同步更新...... +-------------------------------------------------------- ...

  6. 详解BOM头以及去掉BOM头的方法--踩过BOM的大坑

    类似WINDOWS自带的记事本等软件,在保存一个以UTF-8编码的文件时,会在文件开始的地方插入三个不可见的字符(0xEF 0xBB 0xBF,即BOM).它是一串隐藏的字符,用于让记事本等编辑器识别 ...

  7. U811.1接口EAI系列之二-BOM构成-委外BOM构成--VB语言

    1.下面代码实现了VB6.0中调用U8EAI-BOM构成服务,以下代码均为项目实际代码,可直接复制应用. 2.在u811.1版本中委外BOM构成与正常的BOM构成是同系列表,不单独存储. 3.是以存货 ...

  8. php 批量检测bom头,去除bom头工具

    <?php //有些php文件由于不小心保存成了含bom头的格式而导致出现一系列的问题.以下是批量清除bom头的代码 if (isset ( $_GET ['dir'] )) { //confi ...

  9. C# UTF-8文件带BOM和不带BOM文件的转换

    读取INI文件使用的是GetPrivateProfileString方法,自己读写ini文件没有问题. 调用C++的API对同一个ini文件进行处理后,发现首个Section的值读不出来:发现是API ...

随机推荐

  1. JAVA基础3---运算符大全

    Java中的运算符有以下种类:算术运算符.关系运算符.位运算符.逻辑运算符.赋值运算符.其他的运算符 现在假设定义 int A = 10,B = 5: 一.算术运算符 运算符 描述 案例 + 等同于数 ...

  2. [资讯] NFC有什么作用。小米手机3NFC解读

    在近几年的智能手机市场,NFC成了Android高端手机产品的标准配置,无论是Android还是Windows Phone阵营,有越来越多的厂商也开始为自己的产品加入NFC功能.而小米最新的旗舰产品— ...

  3. 学习Linux shell脚本中连接字符串的方法

    这篇文章主要介绍了Linux shell脚本中连接字符串的方法,如果想要在变量后面添加一个字符,可以用一下方法: 代码如下: $value1=home $value2=${value1}"= ...

  4. SRTP参数及数据包处理过程(转)

    源: SRTP参数及数据包处理过程

  5. Django form choices, placeholder

    item=CharField(max_length=20,min_length=1,required=True,widget=widgets.TextInput({'placeholder':'tes ...

  6. windows下openssl编译

    昨晚,在编译rabbitmq-c时,使用cmake生成vs项目文件时遇到下列错误: CMake Error at C:/Program Files/CMake/share/cmake-3.6/Modu ...

  7. MySql数据库表操作(二)

    一.增加表记录: insert [into] tab_name (field1,field2....) values (values1,values2....) , (values1,values2. ...

  8. 选择排序法、冒泡排序法、插入排序法、系统提供的底层sort方法排序之毫秒级比较

    我的代码: package PlaneGame;/** * 选择排序法.冒泡排序法.插入排序法.系统提供的底层sort方法排序之毫秒级比较 * @author Administrator */impo ...

  9. Redhat普通用户如何使用管理员权限

    作为一个普通用户, 很多地方收到权限的控制, 下面展示sudoers大法, 主要就是sudo的问题了. 下面的是我的普通用户lee 还没有授权之前是这样的 开始授权 切换到root用户, 修改sudo ...

  10. ps -ef|grep详解

    ps命令将某个进程显示出来 grep命令是查找 中间的|是管道命令 是指ps命令与grep同时执行 PS是LINUX下最常用的也是非常强大的进程查看命令 grep命令是查找,是一种强大的文本搜索工具, ...