ImageVerifierCode 换一换
格式:DOCX , 页数:28 ,大小:41.15KB ,
资源ID:4107187      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/4107187.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(sapabap使用选择屏幕.docx)为本站会员(b****4)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

sapabap使用选择屏幕.docx

1、sapabap使用选择屏幕第二章 使用选择屏 幕概览内容选择屏幕是 报表程序的 一部分,您 可以设计选 择屏幕以便 交互输入字 段值和选择 标准。在报 表程序启动 之后,用户 在该屏幕中 输入值。关 于选择屏幕 概念的详细 信息,参见关于选择屏 幕与逻辑数 据库之间关 系的简要介 绍,参见在 ABAP/4 程序中,可 以使用下列 语句设计选 择屏幕:_ PARAMETERS, 为变量定义 输入字段_ SELECT-OPTIONS, 为选择标准 定义输入字 段_ SELECTION-SCREEN, 格式化选择 屏幕下列主题讨 论选择屏幕是 什么?正如您从 声明数据 (页 31) 部分所知道 的,

2、您可以 给内部变量 分配初始值 。但是,不 象 C 语言有 GETC, FORTRAN 语言有 READ, 或者 BASIC 语言有 INPUT, ABAP/4 没有关键字 可以允许您 在程序流的 任何一点上 交互地输入 值。要创建交互 式的 ABAP/4 程序,必须 使用在编写 ABAP/4事务 (页 Error! Not a valid link.). 中描述的对 话编程方法 。这意味着 您必须创建 事务、编写 ABAP/4 模块存储程 序,并用屏 幕绘制器和 菜单绘制器 设计屏幕( 参见文档 ABAP/4 工作台工具 (页 Error! Not a valid link.) )。通过选择

3、屏 幕,ABAP/4 还为报表程 序提供了一 个交互元素 。您可以定 义选择屏幕 而不必影响 对话编程所 要求的所有 细节。例如 ,您可以用 简单语句创 建字段、复 选框或单选 按钮,并设 计屏幕布局 。系统自动 为您处理屏 幕绘制器的 实际任务。总是在报表 程序启动后 直接处理选 择屏幕(参 见 通过事件控制 ABAP/4 程序流 (页 Error! Not a valid link.) )。用户可 以在该屏幕 中输入字段 值和选择标 准。对于每 个报表程序 ,输入值集 可以按变体 (参见 使用变式预设置选择 (页 Error! Not a valid link.) )创建和存 储。选择屏

4、幕上的文本 可以按依赖 于语言的文 字摘要(参 见 选择文本 (页 54) )进行维护 。选择屏幕的 主要目的是 使用户能够 控制报表程 序的数据库 选择。如果 报表程序是 用 SUBMIT 语句(参见调用报表 (页 Error! Not a valid link.) )从另一个 ABAP/4 程序中启动 的,则选择 屏幕对象还 起到数据接 口的作用,通过在报表 程序中定义 的选择屏幕 ,您可以使 用户能够_ 通过 PARAMETERS 语句给变量 分配值_ 通过 SELECT-OPTIONS 语句确定选 择标准逻辑数据库 程序通常也 包括 PARAMETERS 和 SELECT-OPTION

5、S 语句(参见 逻辑数据库 的特征和_ 护 (页 Error! Not a valid link.) )。如果您 写通过报表 属性与逻辑 数据库相连 接的报表程 序,报表选 择屏幕将自 动包括相应 的输入字段 。您应该尽可 能广泛地使 用逻辑数据 库提供的选 择标准。只 有当它们不 能满足您的 需要时才在 您的程序中 使用 PARAMETERS 或 SELECT-OPTIONS 语句。由这 些语句定义 的输入字段 将在报表选 择屏幕上作 为逻辑数据 库的附加选 择标准出现 (示例参见 避免将选择 标准传递到 逻辑数据库 (页 224) )选择屏幕与 逻辑数据库每个报表程 序都与一个 逻辑数据库

6、 相链接,该 逻辑数据库 决定选择屏 幕的格式。 如果在程序 属性中没有 指定逻辑数 据库,系统 将使用标准 数据库,该 数据库格式 化选择屏幕 ,但是不读 取任何数据 。选择屏幕包 含逻辑数据 库选择和在 报表程序中 定义的选择 。为逻辑数 据库选择显 示的输入字 段取决于您 在程序中用 TABLES 语句声明的 数据库表。 标准数据库 的选择屏幕 只包含在报 表程序中定 义的选择。 关于逻辑数 据库选择的 详细信息, 参见 逻辑数据库 的特征和_ 护 (页 Error! Not a valid link.) 。逻辑数据库 F1S 被附加到下 列报表程序 。F1S 的结构是:假设下列报 表程

7、序:REPORT SAPMZTST.TABLES SPFLI.启动 SAPMZTST 后,选择屏 幕如下所示 :这些是选择 标准的输入 字段和数据 库表 SPFLI 各列的参数 。在逻辑数 据库程序中 编码定义该 屏幕的语句 ( SELECT-OPTIONS 和 PARAMETERS )。现在,假设 下列报表程 序:REPORT SAPMZTST.TABLES SBOOK.启动 SAPMZTST 后,选择屏 幕如下所示 :系统不仅显 示与数据库 表 SBOOK 相连的选择 标准的输入 字段,而且 显示那些与 表 SPFLI 和 SFLIGHT 相连的选择 标准。出现在逻辑 数据库选择 屏幕中的

8、输 入字段通常 是在逻辑数 据库程序中 用 SELECT-OPTIONS 语句(参见 定义选择标 准 (页 217) )定义的。 使用这些语 句来限制对 数据库的访 问,例如通 过 SELECT 语句的WHERE 子句(参见 在 WHERE 子句中使用 选择表 (页 226) )。示例参 见 逻辑数据库 示例 (页 Error! Not a valid link.) 。逻辑数据库 可以提供一 个特征以便 报表用户指 定动态选择 ,这些动态 选择在逻辑 数据库程序 中没有用 SELECT-OPTIONS 语句编码。 如果逻辑数 据库提供动 态选择,用 户通过单击 选择屏幕上 应用工具条 的“用户

9、选 择”访问这 些选择。将 显示新的选 择屏幕或屏 幕,用户可 以在其中选 择为要其指 定选择标准 的数据库字 段。对于逻辑数 据库 F1S,动 态选择的屏 幕可能如下 所示:动态选择通 过使用动态 WHERE 条件限制对 逻辑数据库 程序(参见运行时指_ 行选择的条 件 (页 1122) )对数据库 进行访问。必须在逻辑 数据库程序 中编码动态 选择的可能 性(参见 编辑选择 (页 Error! Not a valid link.) )。如果逻 辑数据库允 许动态选择 (“动态选 择”出现在 应用工具条 中),则可 以使用 ABAP/4 集成开发环 境定义允许 用户在哪些 数据库表和 列上定

10、义动 态选择(选 择视图)。 要找出哪些 数据库表提 供动态选择 ,请选择“ 工具 - ABAP/4 开发工具台 - 开发 - 编程环境 - 逻辑数据库 - 细节 - 动态选择” 。在下一个 屏幕中,您 将看到这些 数据库表名 称的列表。对于逻辑数 据库 F1S,只 有数据库表 SPFLI 提供动态选 择:为变量定义 输入字段如果您想使 报表程序的 用户能在选 择屏幕中输 入变量值, 则必须用 PARAMETERS 语句定义变 量。每个用 PARAMETERS 语句定义的 变量将在选 择屏幕上作 为输入字段 出现。PARAMETERS 语句具有一 些在报表程 序环境中很 重要的变体 。这些变体

11、 在下列主题 中进行解释 :在逻辑数据 库程序中使 用的 PARAMETERS 语句的附加 变体也是有 效的。(参 见关键字文 档和 逻辑数据库 的特征和_ 护 (页 Error! Not a valid link.) )。PARAMETERS 语句基本格 式可以按照用 DATA 语句(参见 DATA 语句 (页 314) )声明字段 的方式用 PARAMETERS 语句声明字 段。用 PARAMETERS 语句声明的 字段称为参 数。通常, 输入字段的 所有参数都 将出现在选 择屏幕上。 系统处理输 入屏幕时, 报表用户在 这些输入字 段中键入的 值将被分配 给相应的参 数。要声明参数 及其

12、数据类 型,请使用 PARAMETERS 语句,如下 所示:语法PARAMETERS () .该语句创建 参数 。附 加项 、 和 与 DATA 语句相同( 参见 DATA 语句的基本格式 (页 314) )。用户启动报 表程序时, 的输入字段 将出现在选 择屏幕中。 您可以如 选择文本 (页 54) 中描述的那 样通过使用 文字摘要来 更改输入字 段左侧的说 明。REPORT SAPMZTST.TABLES SPFLI.PARAMETERS: WORD(10) TYPE C, DATE TYPE D, NUMBER TYPE P DECIMALS 2, CONNECT LIKE SPFLI-

13、CONNID.该示例创建 四个字段, 即字符字段 WORD, 长度为 10 ;日期字段 DATE, 长度为 8 ;组合式数 据字段 NUMBER, 两位小数; 字段 CONNECT, 引用 ABAP/4词 典结构 SPFLI-CONNID。 用户启动报 表 SAPMZTST 时,声明的 四个字段的 输入字段将 出现在选择 屏幕中,如 下所示:例如,您可 以使用参数 控制程序流 ,或者与 SELECT 语句相连接 ,使报表用 户能够决定 数据库访问 的选择标准 (参见 选择即将读取的行 (页 1118) )。TABLES SPLFI.PARAMETERS: LOW LIKE SPFLI-CARR

14、ID, HIGH LIKE SPFLI-CARRID.SELECT * FROM SPLFI WHERE CARRID BETWEEN LOW AND HIGH. .ENDSELECT.在该示例中 ,系统从数 据库表 SPFLI 读入所有行 ,其中字段 CARRID 的内容在界 限LOW 和 HIGH 之间。报表 用户可以在 选择屏幕中 输入 LOW 和 HIGH 字段。如果使用 PARAMETERS 语句定义 WHERE 条件,则必 须在报表程 序中编码所 有可能的选 择选项。对 于复杂选择 ,最好使用 选择标准, 它们存储在 内表中。( 参见 选择标准是 什么? (页 212) )。给参数

15、分配 缺省值要为将显示 在选择屏幕 上的输入字 段分配缺省 值,请使用 PARAMETERS 语句的 DEFAULT 选项。语法 如下:语法PARAMETERS . DEFAULT . 可以是文字 或字段名。 如果指定字 段名,则系 统将按缺省 值处理该字 段的内容。 报表用户可 以在选择屏 幕中更改缺 省值。系统在时间 事件 INITIALIZATION (参见 INITIALIZATION (页 Error! Not a valid link.) )之前将缺 省值传输给 参数。因此 ,对于那些 在用户启动 程序时已经 被填充的字 段,应该使 用字段名而 不是文字作 为字段的缺 省值。例如

16、,这些字段 是系统字段 (参见 系统宓_ 数据韵_ (页 312) )。REPORT SAPMZTST.PARAMETERS: VALUE TYPE I DEFAULT 100, NAME LIKE SY-UNAME DEFAULT SY-UNAME, DATE LIKE SY-DATUM DEFAULT 19950627.如果报表用 户名为 FRED, 选择屏幕如 下所示:请注意,字 段 DATE 的缺省值在 选择屏幕中 按用户主记 录中的格式 出现。禁止参数显 示要禁止在选 择屏幕中显 示参数,请 使用 PARAMETERS 语句的 NO-DISPLAY 选项。语法 如下:语法PARAME

17、TERS . NO-DISPLAY . 创建参数, 并通过 DEFAULT 选项在时间 事件 INITIALIZATION (参见 INITIALIZATION (页 Error! Not a valid link.) )中内部赋 值,或者, 如果报表是 用 SUBMIT 启动的,则 由调用程序 进行外部赋 值。如果想只在 某种条件下 才显示参数 ,例如,根 据报表用户 在选择屏幕 的其它输入 字段中输入 的值决定是 否显示参数 ,则请您不 要使用 NO-DISPLAY 选项。如果 使用了这个 选项,参数 就不是选择 屏幕的元素 ,而且您也 不能用 MODIFY SCREEN 语句(参见 给修

18、改组分 配参数 (页 211) )使它可见 。要使参数成 为选择屏幕 的隐藏元素 ,请不带 NO-DISPLAY 选项声明该 参数,并通 过使用 MODIFY SCREEN 语句禁止显 示它。允许参数接 受大小写要允许用户 用大写或小 写字母输入 参数值,请 使用 PARAMETERS 语句的 LOWER CASE 选项。语法 如下:语法PARAMETERS . LOWER CASE . 如果没有 LOWER CASE 选项,系统 将所有输入 值更改为大 写。如果使用 LIKE 选项从 ABAP/4 词典中引用 字段,参数 将接受 ABAP/4 字段的所有 属性。不能 更改这些属 性,也不能

19、使用 LOWER CASE 选项。必须 在 ABAP/4 词典中定义 是否可以输 入大写或小 写值。REPORT SAPMZTST.PARAMETERS: FIELD1(10), FIELD2(10) LOWER CASE.WRITE: FIELD1, FIELD2.假设选择屏 幕上有下列 输入值:输出如下所 示:UPPER lowerFIELD1 的内容变为 大写。制作需要的 输入字段的 参数要制作需要 的输入字段 的参数,请 使用 PARAMETERS 语句的 OBLIGATORY 选项。语法 如下:语法PARAMETERS . OBLIGATORY . 使用该选项 时,在参数 的输入字段

20、 上将出现一 个问号。用 户如果不在 选择屏幕的 这个字段上 输入值,程 序就无法继 续执行。REPORT SAPMZTST.PARAMETERS FIELD(10) OBLIGATORY.最终的选择 屏幕如下所 示:在选择屏幕 上创建复选 框要为参数输 入定义复选 框,请使用 PARAMETERS 语句的 AS CHECKBOX 选项。语法 如下:语法PARAMETERS . AS CHECKBOX . 参数 按长度为 1 的类型 C 创建。在这 种情况下, 不允许使用 附加选项 TYPE 和 LIKE。 的有效值是 和X 。这些值在 用户单击选 择屏幕上的 复选框时赋 给参数。PARAME

21、TERS: A AS CHECKBOX, B AS CHECKBOX DEFAULT X.在该示例中 ,两个复选 框出现在选 择屏幕的左 侧,它们的 右侧出现字 段的名称。 复选框 B 具有缺省值 X。当用户单击 这些复选框 时,值X 和 将分配给 相应的参数 。如果使用 PARAMETERS 语句的 LIKE 选项参阅 ABAP/4 词典的字段 ,该字段类 型为 CHAR, 长度为 1,允许的 值是X 和 (在字段 的域中定义 ,参见文档 ABAP/4 词典 (页 Error! Not a valid link.) ),则该参 数将自动作 为复选框出 现在选择屏 幕上。在选择屏幕 上创建单选

22、 按钮组要为参数输 入定义单选 按钮组,请 使用 PARAMETERS 语句的 RADIOBUTTON GROUP 选项。语法 如下:语法PARAMETERS . RADIOBUTTON GROUP . 参数 按类型 C,长度 1 创建,并分 配到组 。 字符串 的最大长度 是 4。允许使 用附加的 LIKE 选项,但是 必须参阅类 型为C、长 度为 1 的字段。必须为每个 组分配至少 两个参数。 每个组中只 有一个参数 可以用 DEFAULT 选项分配的 缺省值。该 值必须是 X。当用户单击 选择屏幕中 的单选按钮 时,相应的 参数被激活 (分配值 X),同 时同组的其 它参数被设 为非活动

23、的 (赋值 )。PARAMETERS: R1 RADIOBUTTON GROUP RAD1, R2 RADIOBUTTON GROUP RAD1 DEFAULT X, R3 RADIOBUTTON GROUP RAD1, S1 RADIOBUTTON GROUP RAD2, S2 RADIOBUTTON GROUP RAD2, S3 RADIOBUTTON GROUP RAD2 DEFAULT X.在该示例中 ,R1、R2 和 R3 形成一个单 选按钮组, 而 S1、S2 和 S3 形成另一个 组。在选择 屏幕中,当 其它按钮非 活动时 R2 和 S3 被激活。如果没有使 用 DEFAULT

24、选项,每个 组的第一个 参数(即 R1 和 S1 )将被激活 并分配值 X。从 SAP 内存中使用 缺省值PARAMETERS 语句的 MEMORY-ID 选项允许您 从全局 SAP 内存( SPA/GPA 参数)使用 缺省值。语 法如下:语法PARAMETERS . MEMORY ID . 使用该选项 时,以名称 存储在全局 用户相关的 SAP 内存中的值 将作为 的缺省值出 现在选择屏 幕上。 最长 3 个字符,并 且不能用引 号封闭。可以使用全 局 SAP 内存在程序 间传递保留 在事务限制 以外的值。 用户在整个 终端进程期 间都可利用 该内存,并 且所有并行 进程使用相 同的内存。

25、因此 SAP 内存包含的 内容要比局 限于事务的 ABAP/4 内存(参见 ABAP/4 内存中的数 据簇 (页 121) )更广泛。参数可以按 用户在名为 的用户主记 录中的说明 进行设置。 关于 SAP 内存的详细 信息,参阅 SET/GET PARAMETER 的关键字文 档和 在程序间传递数据 (页 Error! Not a valid link.) 。下列报表以 “HK”为 名称在全局 SAP 内存中存储 值:REPORT SAPMZTS1.SET PARAMETER ID HK FIELD Test Parameter.该值在下列 报表中作为 参数 TEST 的缺省值使 用:PRO

26、GRAM SAPMZTS2. PARAMETERS TEST(16) MEMORY ID HK.SAPMZTS2 的选择屏幕 如下所示:给参数分配 匹配代码对 象要给参数分 配匹配代码 对象,请使 用 PARAMETERS 语句的 MATCHCODE OBJECT 选项。语法 如下:语法PARAMETERS . MATCHCODE OBJECT . 匹配代码对 象 的名称必须 是 4 字符的变量 名,并且不 能用引号封 闭。如果使用该 选项,则可 能的条目按 钮将在参数 的输入字段 之后出现。 用户按下该 按钮时,其 结果是为执 行输入字段 的匹配代码 选择。关于 匹配代码的 详细信息, 参阅

27、文档 ABAP/4 词典 (页 Error! Not a valid link.) 。PARAMETERS CONN(10) MATCHCODE OBJECT SPFL.单击可能的 条目按钮后 ,在选择屏 幕上将出现 下列对话框 :匹配代码对 象 SPFL 用于查找航 班号。通过 在字段上安 置光标,输 入值并选择 “返回”, 用户将获得 与输入值相 匹配的航班 号列表,例 如,特定承 运方的所有 航班。给修改组分 配参数要将参数分 配给修改组 (该参数可 用于随后的 屏幕修改) ,请使用 PARAMTERS 语句的 MODIF ID 选项,如下 所示:语法PARAMETERS . MODIF

28、 ID . 修改组 的名称必须 是不带引号 的 3 字符变量名 。MODIF ID 选项总是把 分配到内表 SCREEN 的 SCREEN-GROUP1 列。在 AT SELECTION-SCREEN OUTPUT 事件(参见选择屏幕的 PBO (页 Error! Not a valid link.) )中,分配 给修改组的 参数可以用 LOOP AT SCREEN/MODIFY SCREEN 语句按整个 组进行处理 。有关修改组 和内表 SCREEN 的详细信息 ,参见 LOOP AT SCREEN 的关键字文 档或文档工作台工具 (页 Error! Not a valid link.).

29、中有关屏幕 修改的部分 。PARAMETERS: TEST1(10) MODIF ID SC1, TEST2(10) MODIF ID SC2, TEST3(10) MODIF ID SC1, TEST4(10) MODIF ID SC2.AT SELECTION-SCREEN OUTPUT.LOOP AT SCREEN. IF SCREEN-GROUP1 = SC1. SCREEN-INTENSIFIED = 1. MODIFY SCREEN. CONTINUE. ENDIF. IF SCREEN-GROUP1 = SC2. SCREEN-INTENSIFIED = 0. MODIFY SC

30、REEN. ENDIF.ENDLOOP.在 PARAMETERS 语句中,参 数 TEST1 和 TEST3 被分配给组 SC1,而 TEST2 和 TEST4 被分配给组 SC2。在 AT SELECTION-SCREEN OUTPUT 事件中,按 照 GROUP1 字段的内容 ,内表 SCREEN 的字段 INTENSIFIED 被设置为 1 或 0。在选择 屏幕中,TEST1 和 TEST3 所在行被设 置为高亮度 ,而 TEST2 和 TEST4 则不是,如 下所示:使用选择标 准在 ABAP/4中 ,选择标准 存储在特殊 内表中,以 方便设置数 据库访问条 件。每个选 择标准通常 分配到数据 库表的特定 列。可以用 SELECT-OPTIONS 语句定义选 择标准。如果在报表 程序中用 SELECT-OPTIONS 语句定义了 选择标准, 系统将在报 表选择屏幕 中自动创建 输入字段。 这样,用户 可以为访问 相关的数据 库表输入条 件。选择标准是 什么?要使报表用 户能够在选 择屏幕中输 入对数据库 访问的限制 ,您可以使 用选择标准 。它们提供 方便的方式 以限制程序 从数据库表 到某个子集 对数据进行 访问

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1