说明查询的参数如何转换为 EXECQUERY 命令文本。 本主题使用自定义 SAP 查询的示例,ZQUERY_TST_NEW。
在 SAP GUI 中打开查询
执行以下步骤,在 SAP 中打开查询。 此处提供的步骤适用于ZQUERY_TST_NEW查询,特定于 SAP 版本。
运行事务 SQ01。
在“ 用户组中的查询 ”页中,单击“ 快速查看器”。
在 “快速查看器 ”页的“ 快速视图 ”文本框中,键入
ZQUERY_TST_NEW,然后单击“ 显示”。在“ 快速查看器 ”页中,单击“ 选择字段 ”选项卡列出查询中的所有参数。
下图显示了查询定义中的所有参数。
单击执行。 以下页面正在显示。
单击黄色箭头以定义每个参数。 可以定义特定的允许/不可允许的值,也可以定义允许/不可允许的值范围。 必须根据每个参数的 SAP GUI 中配置的值指定 EXECQUERY 语法。
下一部分提供了有关如何在 SAP GUI 中定义值以及如何将这些值转换为 EXECQUERY 语法的说明。
构建 EXECQUERY 语法
让我们根据查询定义中定义的参数值来了解 EXECQUERY 语法的外观。 为了了解这一点,我们将展示为第一个参数( 两位数数字)配置的值如何转换为 ZQUERY_TST_NEW 查询的示例。
首先,假设 “单个值” 选项卡中的数值(带有绿色点)的定义如以下截图所示:
注释
单击 两位数数字 参数的黄色箭头后,将显示此对话框。
在这种情况下,EXECQUERY 语法如下所示:
EXECQUERY ZQUERY_TST_NEW @USERGROUP='mygroup', @P1 = '2', @P1 = '3', @P1 = '5'
对于同一查询,除了在单个值选项卡(带有绿色点)的值外,还可以在单个值选项卡(带有红色点)的值定义为如下:
在这种情况下,EXECQUERY 语法如下所示:
EXECQUERY ZQUERY_TST_NEW @USERGROUP='mygroup', @P1 = '2', @P1 = '3', @P1 = '5', NOT @P1 = '6', NOT @P1 = '8'
现在,如果将值添加到 “范围 ”选项卡(带有绿点),如以下屏幕截图所示:
的参数值范围
EXECQUERY 语法如下所示:
EXECQUERY ZQUERY_TST_NEW @USERGROUP='mygroup', @P1 = '2', @P1 = '3', @P1 = '5', NOT @P1 = '6', NOT @P1 = '8', @P1 BETWEEN '2' and '5'
同样,如果将值添加到 “范围 ”选项卡(带红点),如以下屏幕截图所示:
EXECQUERY 语法如下所示:
EXECQUERY ZQUERY_TST_NEW @USERGROUP='mygroup', @P1 = '2', @P1 = '3', @P1 = '5', NOT @P1 = '6', NOT @P1 = '8', @P1 BETWEEN '2' and '5', NOT @P1 BETWEEN '6' AND '8'
为简单和理解,本主题只讨论第一个参数,两位数。 可以使用类似的方法来确定为其他参数定义的值如何转换为 EXECQUERY 语法。