Chinaunix首页 | 论坛 | 博客
  • 博客访问: 3120287
  • 博文数量: 238
  • 博客积分: 864
  • 博客等级: 军士长
  • 技术积分: 2940
  • 用 户 组: 普通用户
  • 注册时间: 2012-10-08 23:01
个人简介

WeChat: cj_william / Mail: william.chen.cn@outlook.com

文章分类

全部博文(238)

文章存档

2018年(2)

2016年(35)

2015年(47)

2014年(104)

2013年(38)

2012年(12)

分类:

2012-10-16 14:18:54

原文地址: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

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 : 顺序号

阅读(1520) | 评论(0) | 转发(0) |
0

上一篇:bseg 问题解决

下一篇:ALV中的Checkbox

给主人留下些什么吧!~~