REPORT TESTREP.
* Include type pool SSCR
TYPE-POOLS SSCR.
* Define the object to be passed to the RESTRICTION parameter
DATA RESTRICT TYPE SSCR_RESTRICT.
* Auxiliary objects for filling RESTRICT
DATA OPT_LIST TYPE SSCR_OPT_LIST.
DATA ASS TYPE SSCR_ASS.
* Define the selection screen objects
* First block: 3 SELECT-OPTIONS
SELECTION-SCREEN BEGIN OF BLOCK BLOCK_0 WITH FRAME TITLE TEXT-BL0.
SELECT-OPTIONS SEL_0_0 FOR SY-TVAR0.
SELECT-OPTIONS SEL_0_1 FOR SY-TVAR1.
SELECT-OPTIONS SEL_0_2 FOR SY-TVAR2.
SELECT-OPTIONS SEL_0_3 FOR SY-TVAR3.
SELECTION-SCREEN END OF BLOCK BLOCK_0.
* Second block: 2 SELECT-OPTIONS
SELECTION-SCREEN BEGIN OF BLOCK BLOCK_1 WITH FRAME TITLE TEXT-BL1.
SELECT-OPTIONS SEL_1_0 FOR SY-SUBRC.
SELECT-OPTIONS SEL_1_1 FOR SY-REPID.
SELECTION-SCREEN END OF BLOCK BLOCK_1.
INITIALIZATION.
* Define the option list
* ALL: All options allowed
MOVE 'ALL' TO OPT_LIST-NAME.
MOVE 'X' TO: OPT_LIST-OPTIONS-BT,
OPT_LIST-OPTIONS-CP,
OPT_LIST-OPTIONS-EQ,
OPT_LIST-OPTIONS-GE,
OPT_LIST-OPTIONS-GT,
OPT_LIST-OPTIONS-LE,
OPT_LIST-OPTIONS-LT,
OPT_LIST-OPTIONS-NB,
OPT_LIST-OPTIONS-NE,
OPT_LIST-OPTIONS-NP.
APPEND OPT_LIST TO RESTRICT-OPT_LIST_TAB.
NOPATTERN: CP and NP not allowed
CLEAR OPT_LIST.
MOVE 'NOPATTERN' TO OPT_LIST-NAME.
MOVE 'X' TO: OPT_LIST-OPTIONS-BT,
OPT_LIST-OPTIONS-EQ,
OPT_LIST-OPTIONS-GE,
OPT_LIST-OPTIONS-GT,
OPT_LIST-OPTIONS-LE,
OPT_LIST-OPTIONS-LT,
OPT_LIST-OPTIONS-NB,
OPT_LIST-OPTIONS-NE.
APPEND OPT_LIST TO RESTRICT-OPT_LIST_TAB.
NOINTERVLS: BT and NB not allowed
CLEAR OPT_LIST.
MOVE 'NOINTERVLS' TO OPT_LIST-NAME.
MOVE 'X' TO: OPT_LIST-OPTIONS-CP,
OPT_LIST-OPTIONS-EQ,
OPT_LIST-OPTIONS-GE,
OPT_LIST-OPTIONS-GT,
OPT_LIST-OPTIONS-LE,
OPT_LIST-OPTIONS-LT,
OPT_LIST-OPTIONS-NE,
OPT_LIST-OPTIONS-NP.
APPEND OPT_LIST TO RESTRICT-OPT_LIST_TAB.
* EQ_AND_CP: only EQ and CP allowed
CLEAR OPT_LIST.
MOVE 'EQ_AND_CP' TO OPT_LIST-NAME.
MOVE 'X' TO: OPT_LIST-OPTIONS-CP,
OPT_LIST-OPTIONS-EQ.
APPEND OPT_LIST TO RESTRICT-OPT_LIST_TAB.
* JUST_EQ: Only EQ allowed
CLEAR OPT_LIST.
MOVE 'JUST_EQ' TO OPT_LIST-NAME.
MOVE 'X' TO OPT_LIST-OPTIONS-EQ.
APPEND OPT_LIST TO RESTRICT-OPT_LIST_TAB.
* Assign selection screen objects to option list and sign
* KIND = 'A': applies to all SELECT-OPTIONS
MOVE: 'A' TO ASS-KIND,
'*' TO ASS-SG_MAIN,
'NOPATTERN' TO ASS-OP_MAIN,
'NOINTERVLS' TO ASS-OP_ADDY.
APPEND ASS TO RESTRICT-ASS_TAB.
* KIND = 'B': applies to all SELECT-OPTIONS in block BLOCK_0,
* that is, SEL_0_0, SEL_0_1, SEL_0_2
CLEAR ASS.
MOVE: 'B' TO ASS-KIND,
'BLOCK_0' TO ASS-NAME,
'I' TO ASS-SG_MAIN,
'*' TO ASS-SG_ADDY,
'NOINTERVLS' TO ASS-OP_MAIN.
APPEND ASS TO RESTRICT-ASS_TAB.
* KIND = 'S': applies to SELECT-OPTION SEL-0-2
CLEAR ASS.
MOVE: 'S' TO ASS-KIND,
'SEL_0_2' TO ASS-NAME,
'I' TO ASS-SG_MAIN,
'*' TO ASS-SG_ADDY,
'EQ_AND_CP' TO ASS-OP_MAIN,
'ALL' TO ASS-OP_ADDY.
APPEND ASS TO RESTRICT-ASS_TAB.
* KIND = 'S': Applies to SELECT-OPTION SEL_0_3
CLEAR ASS.
MOVE: 'S' TO ASS-KIND,
'SEL_0_3' TO ASS-NAME,
'I' TO ASS-SG_MAIN,
'N' TO ASS-SG_ADDY,
'JUST_EQ' TO ASS-OP_MAIN.
APPEND ASS TO RESTRICT-ASS_TAB.
* Call function module
CALL FUNCTION 'SELECT_OPTIONS_RESTRICT'
EXPORTING
RESTRICTION = RESTRICT
* DB = ' '
EXCEPTIONS
TOO_LATE = 1
REPEATED = 2
NOT_DURING_SUBMIT = 3
DB_CALL_AFTER_REPORT_CALL = 4
SELOPT_WITHOUT_OPTIONS = 5
SELOPT_WITHOUT_SIGNS = 6
INVALID_SIGN = 7
REPORT_CALL_AFTER_DB_ERROR = 8
EMPTY_OPTION_LIST = 9
INVALID_KIND = 10
REPEATED_KIND_A = 11
OTHERS = 12.
* Exception handling
IF SY-SUBRC NE 0.
...
ENDIF.
...
START-OF-SELECTION.
...
分享到:
相关推荐
iOS 修改反注入标识__RESTRICT为其它值,同时具有注入功能
ldidY
**PyPI 官网下载 | django_simple_ip_restrict-1.0.32-py3.8.egg** PyPI(Python Package Index)是Python社区官方的软件包仓库,提供了大量可重复使用的Python模块和库。在给定的资源中,我们下载的是一个名为`...
"relax.m"、"interpolate.m"和"restrict.m"分别对应松弛、插值和限制的具体实现。通过这些函数,我们可以看到多重网格法的每个步骤是如何在实际编程中被实现和调用的。理解这些核心操作对于掌握和应用多重网格法至关...
资源分类:Python库 所属语言:Python 资源全名:django_simple_ip_restrict-1.0.39-py3.8.egg 资源来源:官方 安装方法:https://lanzao.blog.csdn.net/article/details/101784059
pg_restrict是一个扩展,用于限制上的某些SQL命令。 它介绍了类似于超级用户的主角色概念。 甚至超级用户也可以禁止删除数据库和角色(如果不是主角色)。 要求 PostgreSQL 9.3+ 编译安装 该扩展在PostgreSQL上受...
#Auto_restrict 3.3 ##(以下为英文版本)(至少是可怜的一个;-) 3.1 3.3 一个简单的脚本可以包含在页面中或php脚本中以保护访问。 必须在保护游戏之前或在页面中尽可能早地包含此脚本。 ## 职能: 在首次...
资源分类:Python库 所属语言:Python 资源全名:django_simple_ip_restrict-1.0.39.tar.gz 资源来源:官方 安装方法:https://lanzao.blog.csdn.net/article/details/101784059
DROP (DATABASE|SCHEMA) [IF EXISTS] database_name [RESTRICT|CASCADE]; 例如,下面的查询用于删除数据库。假设要删除的数据库名称为 userdb。 hive> DROP DATABASE IF EXISTS userdb; 以下是使用 CASCADE 查询...
`restrict`关键字是C语言中的一个类型修饰符,首次出现在C99标准中,其主要目的是帮助编译器进行更有效的代码优化。这个关键字用于指针声明,以表明通过该指针访问的内存区域不会通过其他指针同时访问,即指针是访问...
标题“0001-media-uvc-restrict-urb_num-no-less-than-UVC_URBS.zip”涉及的是一个针对媒体(Media)通用即插即用(UVC,Universal Video Class)设备的补丁文件,用于限制URB(USB请求块)的数量不小于UVC_URBS的...
本文主要探讨了数据库的三种特殊状态:RESTRICT、QUIESCE和SUSPEND,它们在不同场景下有着不同的作用和应用。我们将深入理解这三种状态,并结合实际应用场景进行详细解析。 1. RESTRICT状态: RESTRICT状态通常用于...
<select ng-model="selectedItem" ng-options="item.name for item in items"></select> ``` 在这个例子中,`items`数组是数据源,`selectedItem`是选择项在模型中的绑定值。 然而,为了实现自定义Select组件,我们...
A-PDF Restrict Remover.exe 可以破解pdf文件的密码的软件。
调通sina33m下的ap6181版本 大文实验室/大文哥 壹捌陆捌零陆捌捌陆捌贰 ...完成时间:2017/7/7 18:11 版本:V1.0 SDK:Android6.0.1 开发板:SC3817R ...1、关闭“设置”中的“蓝牙”选项: R:\wyb\ap6181_sina33m_sc...
NoStorageRestrict_0.5.0_5.apk
硬件实现控制edm_restrict_access的方法可以参考示意图,而软件实现控制edm_restrict_access的例子则涉及到具体的指令编程。 此外,EDM还提供了一种debug access indication(调试访问指示)机制,通过增加一个额外...