BOM函数

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

说明﹕内表  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 : 顺序号


http://blog.csdn.net/elin_yi/article/details/4462900

你可能感兴趣的:(BOM函数)