SAP函数大荟萃

来源:互联网 发布:新郎礼服 知乎 编辑:程序博客网 时间:2024/04/30 22:57
 
1 . 函数WS_UPLOAD 
    功能﹕将TXT文件转换成SAP中的内表定义的数据表格文件
    注意﹕1 函数将按参数 data_tab 的实际参数(假设为 table1) table1 定                                                                 
            义的各个字段的长度来依次将TXT文件间隔开﹐并依次将对应的值付给table1的
            字段,table中的各个字段必须为C 型
          2 TXT文件中﹐各个字段值之间不能有空格
   事例: ZBC400_JOHN_26

2 . 函数TH_POPUP
     功能: 向函数入口参数 client , user决定的用户发送信息(信息为入口参数 message 决
           定的信息)
     事例﹕ZBC_LSL_017

3. 函数   HELP_VALUES_GET_WITH_TABLE
     功能﹕弹出用户所需要的信息﹐让用户选择﹐并把选种的信息付给输入框﹐相当与建立起
           SEARCH HELP
     注意: 1 tables 的参数 fields , valuetab 需要固定的内表结构
           2 importing 的参数 select_value 有高﹐低两个值﹐即用户选种的值付给相应的
             输入框的最小值﹐最大值
           3 tables 的参数 fields , valuetab 的实际参数(假设为 tab_field, field_value) 
             tab_field, field_value 的付值,其tab_field 内表中﹐有且仅有一个字段的 
             selectflag = ‘X’ 
      事例﹕ ZPP000293

4 . 函数 Z_UDARBID 
         功能﹕根据工单号﹐当前工作中心代号﹐读出上一工作中心代号﹐上一工作中心名称﹐
               下一工作中心代号﹐下一工作中心名称
         事例﹕ZPP000224_EDIT
         说明﹕取得上下组别的函数更正确的函数 z_udarbid_change(可以解决组别
                                                            循环问题) 
         示例﹕ZBAK_ZPP000222_LSL

5 . 函数 Z_COLORANDSIZE 
         功能﹕根据该物料的组态﹐得出该物料的颜色尺码.
         注意﹕入口参数 IP_SPRAS = ‘E’ 表示本厂款号﹐’M’表示客户款号

6 . 函数 Z_PRINTTITLE 
        功能 ﹕打印标准报表头 
        事例﹕ ZBC_LSL_777

7 . 函数 Z_PAGECHANGE 
        功能﹕许多记录时﹐进行翻叶操作

8 . 函数READ_TEXT
        功能﹕读取内文
        假设﹕FORM get_pitext USING pn LIKE thead-tdname .     
              REFRESH tabline.
  CALL FUNCTION 'READ_TEXT'
       EXPORTING
            client         = sy-mandt
            id             = '0006'
            language       = 'M'
            object         = 'VBBK'
            name           = pn
            archive_handle = 0
       IMPORTING
            headers        = thead
       TABLES
            lines          = tabline
       EXCEPTIONS
            not_found      = 2.
注意﹕ 1  tabline 必须为固定格式, headers 的实际参数必须为 thead
          name 的实际参数必须为thead-tdname 形式,靠它来确定取谁的内      
          文
2 client , language , archive_handle 的入口值基本固定如上
3 id 为 va03à转到à表头à内文à(双击要读取的内文项)àgotoàheader
text id 既是参数 id 的值
text object 既是参数 object 的值
事例﹕ZPP000220
            
9 . 函数 Z_CURR_TO_CHAR .
        功能﹕把 curr 型的数据转化成 char 型的数据﹐转化后的数据仍然 
              按 curr 型数据显示 (“###,###,###.##”)并可以在char型数  
              前后添加固定个特殊字符 
                 (“**12,111,456.23”, ”**********12.45”)
     假设 p_curr 为 CURR 型﹐ p_char = ‘*’
CALL FUNCTION 'Z_CURR_TO_CHAR'
     EXPORTING
          p_curr_i        = p_curr
      *   p_char_i        = p_char
      *   p_num_i         = 2
      *   p_bore_i        = 
      *   p_nums_i        = 20
    IMPORTING
          p_char_o        = t_chr
     EXCEPTION
          no_p_curr_i     = 1
          curr_type_wrong = 2
          not_bore_i      = 3
          OTHERS          = 4.
  说明﹕
      p_curr  : 必须输入参数﹐不能超过15个长度,被转化的参数
      p_char  : 可线参数﹐须添加的特殊字符
      p_num_I : 可线参数﹐当参数p_nums_I为空时有效﹐要添加的特殊字符                
                的个数                
      p_bore_I: 可线参数﹐决定是在前/后添加特殊字符,bà前﹐eà后﹐默
                认为 b,只能输入b/e 否则函数不转化
      p_nums_I: 可线参数﹐决定转化成固定个字符长度的﹐若参数p_char_I
                 有值﹐则不足位时补特殊字符﹐若参数p_char_I为空时﹐
                 该参数无效﹐若该参数输入值﹐则参数p_num_I 无效。
      p_char_o: 转化后的数据
 若执行该函数 sy-subrc 之值如下﹕
          1à没用输入参数p_curr_I .
          2à参数p_curr_I过长﹐或p_nums_I为空﹐p_num_I为负数
          3à参数p_bore_I 不是输入’e’/’b’(大小写不区分) 
事例﹕ZBC_Z_CURR_TO_CHAR

8.函数  Z_COLORANDSIZE_MATNR 
  功能 ﹕根据物料的款号得出该物料的特性值 (如C10019-EYEDE 的对应的A,C,D 的颜色说
         明﹐39.5﹐41.5 的尺码大小﹐见 TC : CT03 ) 放与一个内表中)
  CALL FUNCTION 'Z_COLORANDSIZE_MATNR'
     EXPORTING
          p_matnr  = p_matnr
          p_spras  = 'Z1'
   TABLES
          t_tab    = it
     EXCEPTIONS
          no_matnr = 1
          no_data  = 2
          OTHERS   = 3.
 说明﹕
       p_matnr : 必要入口参数﹐需要取得特性的物料的款号
       p_spras : 语言码﹐默认为 ‘M’  
       it      : 为内表﹐P_matnr 的各特性值便放与次表中﹐该表结构固定﹐   
                 字段如下﹕
                  name   字符型 (= ‘COLOR’ 表示颜色特性﹐= ‘SIZE’ 表示
                                   尺码特性)
                  atwrt  特性码 (如 D,E,F,39.4,41.5)
                  atwtb  特性值说明﹐即通常所说的颜色﹐尺码
       执行后 sy-subrc = 1 表示 参数 p_matnr 为空
                       = 2 表示 该 物料没用特性值
                       = 3 表示其它错误
     获得结果比函数Z_COLORANDSIZE 更广

  9.函数WS_DOWNLOAD
     功能﹕将内表中的数据转化成特定的文件
           见范例 zbc400_lsl_file_change

  10. 函数WS_UPLOAD
      功能﹕将指定文件中的数据转化成内表中的数据
           见范例 zbc400_lsl_file_change




         有其它客户在更新该数据表
 CALL FUNCTION 'ENQUEUE_ECMERKM'           
          EXPORTING
*         MODE_RCTMV     = 'E'
          mandt              = sy-mandt
          atnam              = p_lock_atnam
*         X_ATNAM          = ' '
*         _SCOPE           = '2'
*         _WAIT            = ' '
*         _COLLECT         = ' '
     EXCEPTIONS
          foreign_lock  = 1
          system_failure = 2
          OTHERS     = 3.
 说明﹕ mandt ﹕ 使用的数据端口
        atnam ﹕ 被锁定的记录(可以确定唯一一条记录)

12 函数EQUEUE_ECMERKM
   功能﹕对自己锁定的记录进行解锁,常用于对数据表中数据进行更新操作之 
          前﹐通常与 加锁函数联合起来用
           CALL FUNCTION 'DEQUEUE_ECMERKM'
                 EXPORTING
*                    mode_rctmv = 'E'
                     mandt      = sy-mandt
                     atnam      =  p_ulock_atnam
*                    X_ATNAM    = ' '
*                    _SCOPE     = '3'
*                   _SYNCHRON   = ' '
*                   _COLLECT    = ' '
                 EXCEPTIONS
                     OTHERS     = 1.
说明﹕ mandt ﹕ 使用的数据端口
       atnam ﹕ 需要解锁的记录(可以确定唯一一条记录)

13 .函数  TH_POPUT
   说明﹕该函数是向 SAP 用户发送信息
  CALL FUNCTION 'TH_POPUP'           "向用户发送信息
         EXPORTING
              CLIENT         = BIT-MANDT
              USER           = BIT-BNAME
              MESSAGE        = MES
              MESSAGE_LEN    = LEN     "要发送的信息的长度可截断部分信息
              CUT_BLANKS     = ' '
         EXCEPTIONS
              USER_NOT_FOUND = 1.
  参数﹕client ------客户端口
        user--------用户名(接收者)
        message—需要发送的信息(通常用变量储存)
        message_len: 发送的信息截取的长度(若长度<mes的长度﹐则多余信
                    息被截掉)
  其中客户端口﹐用户名常常放与一内表中﹐内表结构必须为结构uinfo 
  见示例 zbc400_lsl_send_message

14 .图形显示函数﹕GRAPH_2D(二维平面图), GRAPH_3D(三维立体图)
CALL FUNCTION 'GRAPH_2D'
     EXPORTING
          mail_allow = 'X'
          titl       = l_title
     TABLES
          data      = t_graph.
    
  参数﹕ title : 图形的标题
         data:  存放数据的内表
  GRAPH_3D 函数用法同 GRAPH_2D .
  示例﹕ZBAK_ZPP000222_LSL

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


函数 : SO_NEW_DOCUMENT_SEND_API1
 功能﹕向SAP 用户的收信箱中发送Email(内容存与内表中)
CALL FUNCTION 'SO_NEW_DOCUMENT_SEND_API1'
      EXPORTING
           document_data = email_send
           document_type = 'RAW'
            put_in_outbox = 'X'
           put_in_outbox = ''
      TABLES
           object_content = it_data
           receivers     = email_rece.
说明﹕document_data  : 发送Email 之属性
      object_content : 发送之内容
      receivers      : 收件者

原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 1岁多宝宝不吃饭怎么办 胃口吃辣的难受怎么办 空腹吃辣椒胃疼怎么办 吃东西辣的胃口疼怎么办 吃辣的东西胃烧怎么办 吃母乳的宝宝不爱喝水怎么办 三个月宝宝不肯吃奶粉怎么办 三个月宝宝不肯喝奶粉怎么办 三个月的宝宝不肯喝奶粉怎么办 三个月的宝宝不肯吃奶粉怎么办 饿了还是没食欲怎么办 3岁半幼儿便秘怎么办 小孩字写得难看怎么办 小孩的字写的丑怎么办 小孩字写的太差怎么办 小孩很多字不会写怎么办 食欲不好吃不多怎么办 中班小孩子子不肯写字怎么办 1岁宝便秘该怎么办 两周的宝宝便秘怎么办 3岁宝宝不肯吃药怎么办 1岁婴儿不肯吃药怎么办 9月婴儿不肯吃药怎么办 半岁宝宝不吃药怎么办 1岁宝宝不爱吃药怎么办 2岁吃多了呕吐怎么办啊 小孩吃撑了吐怎么办 三岁宝宝吃太多怎么办 小孩吃撑发烧了怎么办 婆婆不帮忙带孩子怎么办 孩子在中班幼儿园不爱写字怎么办 小孩不愿意上学不愿意写字怎么办 宝妈太内向不喜欢带孩子出门怎么办 宝宝吃饭不带围兜怎么办 宝宝吃饭不喜欢带围兜怎么办 宝宝吃饭不爱带围兜怎么办 孩子不吃肉和菜怎么办 我很恶心我婆婆怎么办 坐月子不喜欢婆婆抱宝宝怎么办 宝宝一写字就哭怎么办 4岁宝宝不爱学习怎么办