转载:http://www.baidusap.com/abap/others/2849

在SAP开发中,某段代码运行可能需要满足某个条件,通常解决办法有两种:一种是在代码中写死限制条件,此种方式当限制条件变化时需要修改代码;另一种办法则是自定义数据表,将限制条件值保存在表中,当程序运行时,可以直接从表中读取条件值作为控制条件,这样比较灵活,就像Java开发中的属性配置文件一样,但我们不需要手动创建这样的参数表,SAP已为我们提供了这样的工具,可以通过该工具更灵活地将数据维护到一个层次结构。

数据集必须参考某个数据库表的具体某个字段,一般参考某一字段建立一个相关的数据集,称为基本组,也可以将多个基本组合并到一个单维集,多个单维集则可以分配到同一个多重组中来实现统一管理。

参考VBAK-AUART字段

可以维护多个值,值还可以是范围、公式、变量:

另外,还可以配置下级数据集:

配置完后,可以查看层次结构:

数据集实际上是保存在表SETLEAF中,以集的名称及行号作为关键字,字段SETNAME为集的名称,LINEID即为行号,上面配置的数据集在表中如下:

数据集与数据集之单的关系存储在 SETNOD 表中:

通过ABAP程序,可以将信中所维护的值读取到RANGE类型的内表中,作为查询条件:

 
1
2
3
4
5
6
7
8
9
10
11
TABLES: vbak.
ranges:lt_auart for vbak-auart OCCURS 0.
 
select valsign valoption valfrom valto
    INTO table lt_auart
    from setleaf
WHERE setname LIKE 'ZD_AUART'.
 
  LOOP AT lt_auart .
    WRITE:/ lt_auart-sign , lt_auart-option ,lt_auart-low    ,lt_auart-high   .
  ENDLOOP.

运行结果:

也可以使用函数G_SET_GET_ID_FROM_NAME和G_SET_FETCH取值

 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
REPORT ZTEST_GS1.
 
DATA: w_setid LIKE sethier-setid,
      int_vlaues TYPE STANDARD TABLE OF rgsbv.
 
CALL FUNCTION 'G_SET_GET_ID_FROM_NAME'
  EXPORTING
    shortname = 'ZD_AUART'       "Set Name
  IMPORTING
    new_setid = w_setid
  EXCEPTIONS
    OTHERS    = 1.
 
IF sy-subrc NE 0.
  WRITE 'Invalid Set'.
ENDIF.
 
CALL FUNCTION 'G_SET_FETCH'
  EXPORTING
    setnr           = w_setid
  TABLES
    set_lines_basic = int_vlaues
  EXCEPTIONS
    OTHERS          = 1.

以上。

SAP-参数(条件表)配置教程–GS01/GS02/GS03的更多相关文章

  1. 【FICO系列】SAP 参数(条件表)灵活配置GS01/GS02/GS03

      公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[FICO系列]SAP 参数(条件表)灵活配 ...

  2. 参数(条件表)灵活配置GS01/GS02/GS03

    声明:原创作品,转载时请注明文章来自SAP师太技术博客( 博/客/园www.cnblogs.com):www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将 ...

  3. ASP.NET Aries 高级开发教程:Excel导入之单表配置(上)

    前言: 随着ASP.NET Aries的普及,刚好也有点闲空,赶紧把Excel导入功能的教程补上. Excel导入功能,分为四篇:单表配置(上).多表高级配置(中).配置规则(下).代码编写(番外篇) ...

  4. SD-定义定价用途的条件表(Condition Table)

    https://www.fenginfo.com/815.html 条件表(Condition Table)是SAP条件技术体系中最基础的数据源,它们是一群特定的数据表,表名是以特定字母开头 + 三位 ...

  5. SAP字段与表的对应关系

    SAP字段与表的对应关系   MASTER DATA-主数据 Customer Master KNA1                         Customer Basic Data KNB1 ...

  6. ProxySQL 常见表配置

    ProxySQL 常见表配置 [root@mgr1 opt]# rpm -ivh proxysql-1.4.14-1.1.el6.x86_64.rpm warning: proxysql-1.4.14 ...

  7. IIS反向代理配置教程(最终完整版本)

    IIS代理配置教程 插件下载:https://download.csdn.net/download/song_yan_/11996489 一.安装反向代理插件 1.rewrite插件安装 (1) 双击 ...

  8. Java代码生成器多表配置优化,增加自定义实体功能

    目录 前言 多表配置优化 自定义实体 杂谈 结语 前言   最近利用零碎的时间对代码生成器做了进一步更新:优化多表配置模块,增加自定义实体功能,美化单表和多表配置的UI界面,修复用户反馈的若干bug, ...

  9. VMware Workstation虚拟机中的Linux通过NAT模式共享上网配置教程

    VMware Workstation虚拟机中的Linux通过NAT模式共享上网配置教程 在VMware Workstation虚拟机下面,Linux虚机要上网,一般是桥接模式,但我自己的电脑上网的环境 ...

随机推荐

  1. 【BIGEMAP一键离线地图服务】

    地址:http://www.bigemap.com/offlinemaps/ 首页 离线地图 代码示例 项目案例 开发文档 关于我们     [BIGEMAP一键离线服务] 1.快速搭建离线地图服务2 ...

  2. linux系统执行.exe文件

    首先要了解一下Wine: Wine (“Wine Is Not an Emulator” 的首字母缩写)是一个能够在多种 POSIX-compliant 操作系统(诸如 Linux,Mac OSX 及 ...

  3. Linux的桌面虚拟化技术KVM(四)——虚拟机镜像格式对比与转换

    Linux的桌面虚拟化技术KVM(一)——新建KVM虚拟机 Linux的桌面虚拟化技术KVM(二)——远程桌面管理 Linux的桌面虚拟化技术KVM(三)——KVM虚拟机克隆和快照 (1).常用镜像格 ...

  4. nginx调优(一)

    (1).隐藏nginx版本号 隐藏版本号可以有效避免黑客根据nginx版本信息,查找对应漏洞进行攻击. 下载nginx源码包(http://nginx.org/en/download.html)并上传 ...

  5. 如何固定table表格宽度,样式不受容器影响

    之前有篇关于LODOP打印超文本表格,两个样式相同的表格,出现错位的情况.该博文地址:LODOP打印表格错位的几种情况该文试验了两种现象,第一种浏览器页面显示错位,打印预览也错位,第二种浏览器页面表格 ...

  6. anywhere随启随用的静态文件服务器

    手机移动端调试,也可以使用anywhere anywhere -p 8080  指定端口 anywhere -s 保持浏览器关闭 anywhere -h localhost -p 8080 通过主机名 ...

  7. Github克隆代码慢问题解决办法

    参考:https://blog.csdn.net/stone8761/article/details/79072148 https://blog.csdn.net/github_37847975/ar ...

  8. Cas(05)——修改Cas Server的其它配置

    修改Cas Server的其它配置 目录 1.1      修改host.name 1.2      修改SSO Session的超时策略 1.3      修改允许管理service的角色 1.4  ...

  9. 微信小程序 之页面跳转

    wxml: <view><button bindtap="abc" >跳转</button></view> js: abc: (e) ...

  10. 图解JavaScript闭包面试题

    由于最近在学习关于闭包相关的知识,并且闭包这个知识点让我有点搞不太清楚其具体的定义,所以在网上也查阅了很多大佬的讲解和对闭包的一个定义. 最后感觉还是MDN上的说法感觉比较好理解一些,对闭包还是不太理 ...