" 约定俗成的语法规范 " REPORT 程序中使用INCLUDE 包含代码块,INCLUDE 本身不具备含义,相当于将INCLUDE中的代码放到INCLUDE语句的代码位置 " 一般将类型和变量声明放在TOP中 " 一般把逻辑执行放在FORM中 将PERFORM放到此处 " 最后有序的将事件的逻辑放到后面
INCLUDE ZREPOTOP . INCLUDE ZREPOSCR . INCLUDE ZREPOCLS . INCLUDE ZREPOPAI . INCLUDE ZREPOPBO . INCLUDE ZREPOFORM .
PERFORM DO_SOME . " 调用方法
FORM DO_SOME . " 声明方法 FORM位置可以不分先后顺序 ... " 方法逻辑 ENDFORM . FORM之后,无法再直接编写执行语句
" 结构SCREEN 程序运行后会有自动生成一个内表,包含屏幕所有元素和属性 屏幕有默认的属性(可以只在满足需要的情况变更,其他情况都是默认状态) SCREEN的字段含义 NAME : 元素名称 GROUP1 : 元素所在的组(最多四个) ... REQUIRED : 是否必输 INPUT : 是否可以输入 OUTPUT : 是否可以显示 INVISIBLE : 是否不可见 1 不可见 0 可见 ACTIVE : 是否可用 LOOP AT SCREEN . MODIFY SCREEN . " 一定记得修改屏幕 ENDLOOP .
" 输入事务代码 INITIALIZAION . " 进入程序时初始化执行一次,一般对变量进行赋值或者清空 AT SELECTION-SCREEN OUTPUT . " 处理选择屏幕界面的显示属性 AT SELECTION-SCREEN . " 事件是处理选择界面的输入(PAI-PROCESS AFTER INPUT) AT SELECTION-SCREEN OUTPUT . " 事件是在 AT SELECTION-SCREEN 完成之后开始执行,处理选择界面的显示 "(PBO-PROCESS BEFORE OUTPUT) " 界面输入命令(UCOMM)的时候PBO事件都会触发 START-OF-SELECTION . " 事件是在查询界面点击执行之后开始执行,一般将取数逻辑放到该事件下(查询数据) " 在第一个FORM -ENDFORM 之前且没有声明其他周期的情况下,所有代码默认在START-OF-SELECTION周期下 TOP-OF-PAGE . " 在程序中执行第一个WRITE语句之前执行,分页后的第一行重复一次 END-OF-SELECTION . " 事件是在 START-OF-SELECTION 完成之后开始执行,一般将数据的输出逻辑放到该事件下(查询后)标志着取数逻辑结束,输出逻辑开始