zoukankan      html  css  js  c++  java
  • ABAP用表格维护生成器维护数据sm30

    ABAP用表格维护生成器维护数据sm30
     
    
     
    1 用se11新建一个自定义数据库表,假设表名为 ZMARA ,
     
    其中数据库字段有:
     
    mandt matnr zstop ernam ersda crtime lauser ladate latime
     
    客户端(必须的,key) 物料号(key) 停用标识 创建人 创建日期 创建时间 最后修改人 最后修改日期 最后修改时间
     
    其中创建人、创建日期、创建时间不需要,因为只要记录最后修改的信息即可
     
    2 进入 技术设置,如图
     
    
    
    
    数据类:选择APPL0
     
    大小范畴: 写0 或者1 都可以(我认为既然是用表格维护生成器做的对话程序,数据量不会很大,所以选择写0就可以了)
     
    缓冲 :不允许缓冲
     
    缓冲类型:空
     
    关键字段号:空
     
    
    
    
    
    3 维护完技术设置之后,回到维护的界面,进入菜单:实用程序 - 表格维护生成器
     
    
    
    
    权限组:&NC&(我认为这个和BASIS有关,在此选择大权限)
     
    权限对象 函数组 package 在维护数据字典的时候已经设定,会自动带过来
     
    维护屏幕:
     
                  如果“维护类型”选择“一步”,则“维护屏幕编号”是只需要有“概述屏幕”即可,“单一屏幕”为空
     
               如果“维护类型”选择“两步”,则“维护屏幕编号”中“概述屏幕”和“单一屏幕”都需要 有屏幕号
     
              对于“一步”和“两步”的概念,自己体会
     
              对于所需要的屏幕号,则点击工具栏上的“查找屏幕号”,选择第一个建议的即可
     
    4 创建相应的tcode
     
        进入se93 , 输入tcode名称
     
    开始对象选择最后一个:Transaction with parameters (parameter transaction)
     
    
    
    
    
    
    属性设置如图
     
    
    
    
       事务:sm30
     
    跳过起始屏幕:勾选
     
    Inherit GUI attributes :勾选
     
    5 即可进入创建的tcode进入
     
    
    除了以上最基本的东西,还可以修改界面,写代码
     
         该例子设计的数据字典中创建信息相当于没用,所以不需要显示创建信息,具体操作:
     
             进入tcode,菜单:系统 - 状态 - 双击屏幕编号 (切记不是程序名称)
     
             进入格式界面,修改状态,把创建信息一列删除:先删文本,再删可输入列;
     
             修改“修改信息”的可输入状态,设为“不可输入”
     
             在PAI中,把不要的字段注释掉,并在其后添加一个module
     
         MODULE set_0027_change_info ON CHAIN-REQUEST.
    
     
             PROCESS AFTER INPUT.
           MODULE LISTE_EXIT_COMMAND AT EXIT-COMMAND.
          MODULE LISTE_BEFORE_LOOP.
           LOOP AT EXTRACT.
              MODULE LISTE_INIT_WORKAREA.
              CHAIN.
                 FIELD ZIEBBFWLZ-MATKL .
                 FIELD ZIEBBFWLZ-ZSTOP .
    *     FIELD ZIEBBFWLZ-ERNAM .
    *     FIELD ZIEBBFWLZ-LAUSER .
                 MODULE set_0027_change_info ON CHAIN-REQUEST.
                MODULE SET_UPDATE_FLAG ON CHAIN-REQUEST.
              ENDCHAIN.
              FIELD VIM_MARKED MODULE LISTE_MARK_CHECKBOX.
             CHAIN.
                 FIELD ZIEBBFWLZ-MATKL .
                 MODULE LISTE_UPDATE_LISTE.
              ENDCHAIN.
           ENDLOOP.
       MODULE LISTE_AFTER_LOOP.
     
    在新添加的module中写入如下代码即可:
     
       zmara-lauser = sy-uname.
       zmara-ladate = sy-datum.
       zmara-latime = sy-uzeit.
     
    注意module的位置,如果位置不对,该段程序也不会执行

    1.以建立ADDON表为例,se11首先进入数据字典定义,输入要建立的表名:

    点击create,填写信息:

    Field字段进入,选择predefined type按钮,如果是系统的变量,直接写就可以了

    保存,选择相应的开发包生成request

    2.Techincal setting里面根据需求维护相关信息。保存并激活

    3.table maintenance generator中也需要维护。

    填写如下讯息:(&NC&一般选择。Funtion group可以自己建立,一般z开头的4码)

    然后是下面的一些维护信息,根据需求自己添加即可

    填写无误后点击左上角类似‘新建按钮’的符号,进行保存,这样,一个新的表就维护好了,可以用SM30

    批量修改或添加删除了。

  • 相关阅读:
    事务
    一、python 基础之基础语法
    二、python 中五种常用的数据类型
    三、python函数详解
    四、 面向对象(一)
    五、面向对象(二)——继承与重写
    六、异常处理、日志打印、文件操作
    scrapy(一):基础用法
    # scrapy(二):get请求
    scrapy(三):post请求
  • 原文地址:https://www.cnblogs.com/huangjianisgood/p/2735473.html
Copyright © 2011-2022 走看看