《SAP ABAP程序设计基础教程第8章选择屏幕与列表屏幕9137.pptx》由会员分享,可在线阅读,更多相关《SAP ABAP程序设计基础教程第8章选择屏幕与列表屏幕9137.pptx(46页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第8章选择屏幕与列表屏幕标准列表屏幕通用操作功能在列表运行期维护列表头编程期间维护列表头文本符号(TextSymbols)的使用机制生成列表屏幕生成列表屏幕生成基础列表屏幕多层详细列表屏幕(DetailsListScreen)的创建过程列表隐藏域(列表隐藏域(Hide)的使用)的使用标准列表屏幕的格式化输出标准列表屏幕的格式化输出使用WRITE、SKIP和ULINE输出语句输出的内容将被系统输出传递到标准列表,标准列表屏幕的格式化输出SKIP:将当前行的输出位置定位到指定的行,主要用法为:SKIP:跳到下一行。SKIPn:在当前光标位置跳过n(n0)行。SKIPTOLINEline:将光标定位
2、在第line行上(line0)ULINE:画横线ULINE.:在当前位置画一道横线ULINEATm(n):在当前行的第m个位置画一个长度为n的横线ULINE/m(n):先用“/”换一行,然后在当前行的第m个位置画一个长度为n的横线。WRITE:向列表屏幕缓冲区(ListBuffer)输出文本,当START-OF-SELECTION事件结束的时候,列表屏幕缓冲区中的内容将集中输出到列表屏幕。WRITE的主要用法是:WRITEAT/().:在指定位置、按指定输出数据对象的值到列表屏幕缓冲区。其中:斜线/表示开始新的一行。是最长为三位数字的数字或变量,表示在屏幕当前行上的第几个位置。是最长为三位数字
3、的数字或变量,表示要输出长度。如果语句中的和是直接的数字,而不是变量,则可以忽略关键字AT。WRITE语句的格式化选项语句的格式化选项对于WRITE语句,还可以使用不同的格式化选项,语法为:WRITE.对所有数据类型的格式化选项:对数字数据类型的格式化选项:对日期数据类型的格式化选项:WRITE语句的格式化输出用用WRITE语句输出符号和图标语句输出符号和图标可以用WRITE语句在屏幕上输出符号和图标,其语法如下:WRITEASSYMBOL.WRITEASICON.用用WRITE语句显示复选框语句显示复选框可以使用WRITE语句向列表屏幕显示复选框,语法如下:WRITEASCHECKBOX.通
4、过语句输入帮助插入通过语句输入帮助插入WRITE语句语句启动输入模式工具-1启动输入模式工具-2启动输入模式工具-3定制WRITE的符号输出-1定制WRITE的符号输出-2定制WRITE的符号输出-3定制WRITE的符号输出-4定制WRITE的符号输出-5设置列表的格式设置列表的格式在ABAP中,缺省的列表的行宽是83个字符,缺省的每页的行数是6万行,可以通过在报表声明语句的后面添加如下子句来改变缺省的报表的行数和列数的设置:REPORTLINE-SIZELINE-COUNT.其中的每页的行数包含了列表头(headings),列表内容,与列表脚注行(footerlines)。如:REPORTz
5、my_list_test_200LINE-SIZE30LINE-COUNT12.就是将报表zmy_list_test_200的列表屏幕的每页行数和每行字段数量分别改成了12和30。可以在ABAP程序中使用:NEW-PAGELINE-SIZELINE-COUNT.语句来覆盖一个列表缓冲区(ListBuffer)的缺省值,如果要恢复成系统的缺省值,可以将和的值设置成0.可以在报表声明语句的后面添加如下所示的子句来屏蔽报表的表头(ListHeaders)和报表的列头(ColumnHeaders):REPORTNOSTANDARDPAGEHEADING.也可以在ABAP程序中使用:NEW-PAGENO
6、-TITLE/WITH-TITLENEW-PAGENO-HEADING/WITH-HEADING来覆盖系统的缺省的设置。可以在程序的TOP-OF-PAGE事件块中用代码生成报表页的表头,这对想在表头中输出某个程序变量的情况尤其有用。在程序中首次遇到WRITE/ULINE/SKIP语句,生成初始的列表缓冲区时,TOP-OF-PAGE事件别触发,如:REPORTzmy_list_test_200NOSTANDARDPAGEHEADING.TOP-OF-PAGE.WRITE:/Thisisalistheaderwhichissetbytheprogram.START-OF-SELECTION.“可以
7、在程序中使用:SETLEFTSCROLL-BOUNDARY.语句来锁定列表左边的由指定个数的字段的数量,这样当列表在横向滚动的时候,这几个字段列将始终显示。选择屏幕选择屏幕的工作流程选择屏幕的功能选择屏幕声明选择屏幕声明选择屏幕单值输入变量的定义与使用多值输入多值输入选择屏幕后期事件处理选择屏幕后期事件处理选择屏幕事件SELECTION-SCREEN中的输入检查与错误消息选择屏幕的设计与调用选择屏幕的封装选择屏幕的封装可以使用语法:SELECTION-SCREENBEGINOFBLOCKWITHFRAMETITLEtitle.SELECTION-SCREENENDOFBLOCK.来创建一个选择
8、屏幕。可选项WITHFRAMETITLEtitle确定选择屏幕是否带有边框,而TITLEtitle选项决定是否在边框上带有文字说明。选择屏幕字段的校验可以为选择屏幕中的单个字段指定校验,采用语法:ATSELECTION-SCREENON.事件块中指定的代码来校验单个字段。也可以为指定的选择屏幕中的某个代码块中的所有字段指定校验,采用:ATSELECTION-SCREENONBLOCK.事件块中指定的代码来校验整个选择屏幕块。创建选择屏幕字段的F1Help和F4HelpF1Help:ATSELECTION-SCREENONHELP-REQUESTFORF4Help:ATSELECTION-SCR
9、EENONVALUE-REQUESTFOR选择屏幕的调用选择屏幕的调用定义一个选择屏幕的语法是:SELECTION-SCREENBEGINOFSCREENTITLEtitleASWindowSELECTION-SCREENENDOFSCREEN.其中为必须指定的四位数字的选择屏幕的编号,ASWindow可选项用于指定该选择屏幕是一个单独显示的模态对话框(ModalDialogBox),TITLEtitle可选项用于指定屏幕的标题。在选择屏幕定义块的内部,可以使用PARAMETERS,SELECT-OPTIONS来定义屏幕变量。调用一个选择屏幕的语法是:CALLSELECTION-SCREENS
10、TARTINGATx1y1ENDINGATx2y2.其中为要被调用的选择屏幕的四位数字编号,STARTING可选项中的(x1,y1)和(x2,y2)分别表示选择屏幕显示的左上角和右下角的(列号,行号)。采用逻辑数据库读取数据在创建报表程序时指定要使用的逻辑数据库用TCodeSE36查看逻辑数据库F1S用逻辑数据库F1S读取数据与采用三个嵌套的SELECT语句的比较逻辑数据库的事件逻辑数据库的事件使用FIS逻辑数据库的报表程序的事件触发顺序一个使用了逻辑数据库F1S的报表程序执行逻辑数据库F1S的事件处理流程逻辑数据库的流程终止逻辑数据库的流程终止STOP语句:语句:结束整个报表的输出,并且触发
11、END-OF-SELECTION事件EXIT语句:语句:退出所有的GET代码块,并且不触发任何的后续事件,直接转向基础列表屏幕输出屏幕显示(BasicListScreen)。因此EXIT的功能用于退出GET事件块,其功能与STOP基本一致,只是它不会触发后续事件。REJECT.语句:语句:中止当前GET事件并转向逻辑数据库同一层的下一个GET事件,即转向数据库中的下一行数据,格式如下:REJECT.如:ifspfli-connid=0017.REJECT.endif.REJECT node_name.语句:语句:中止当前和所有的同一级别节点的所有后续GET事件,执行当前层高层次(即node_name所在那一层)的下一个逻辑数据库GET事件,语法如下:REKECTnode_name.。逻辑数据库表的层次结构中,节点名称node_name是当前GET事件层的高层节点。有条件中止有条件中止GET事件:事件:使用CHECK语句可以有条件地终止GET事件块的处理,之后系统将触发逻辑数据库同一层次上的下一个GET事件,即读取当前表的下一行。