选择屏幕是用户使用报表等大多数程序的第一步,选择屏幕的显示、操作非常丰富,看似简单,但是若不加以统一,一个项目中的程序将会是五花八门。为了改进用户体验,我在写程序的第一部,规范了选择屏幕的定义,设想如下,并且通过Check List检查各个可能出现的问题,斟酌中。大家有什么好的意见请留言。
    如下图所示:报表选择屏幕规范如下,只有一个F8 Execute按钮和一个Information按钮,这两个按钮都是自动的,F8按钮执行报表,Information按钮打开的是程序的文档。因此同时要求,程序员开发程序的时候为程序创建文档,文档内容有业务顾问协助完成。
    选择条件按块区分,按重要程度依次向下排列,复杂的选择屏幕可在此基础上分类后放在块中,依次摆放在选择屏幕上。
    可参照以下图示:必填选择条件放在最上面,可选放在下面,或分类放在下面。

一组业务含义的Checkbox或Radiobutton要放在一行。     数据量很小的如10个以内的字段,且是单值输入的话可以使用dropdown list输入。

所有字段都必须有Search Help,尽量使用标准的,标准若不能满足,则自建Search Help。  如果报表有比较高的Performance要求,或本身逻辑复杂,性能较低,应增加部分额外的限制,如单据日期等缩小取数范围。 Authority Check,涉及到权限的字段应在选择屏幕上作为一个条件,在选择屏幕中检查权限给予提示信息。 Selection Screen Check List

Checklist

ABAP程序在线文档是否完备?

选择条件字段文本在相应的语言环境下是否正确?

选择条件字段必填、非必填设定是否合理?

选择条件是否按照重要程度、分类分块显示?

选择条件自上而下的排列顺序是否按重要程度排列?

Parameters和Select-option的选用是否合理?

SELECT-OPTIONS的NO-EXTENSION, NO INTERVALS设定是否合理?

选择条件字段是否设定了合理的MEMORY ID?

选择条件字段是否设定了合理的默认值?

选择条件是否会引起某些性能问题?

一组业务功能的CHECKBOX或RADIOBUTTON是否排成一行?

是否有Parameters字段可以设置为LISTBOX?

是否每个字段都有合适的Search Help?

选择条件的有效性是否进行了必要的检查?

涉及到权限检查的字段是否作为选择条件了?

所有的权限检查逻辑是否都在AT SELECITON-SCREEN完成了?

ABAP选择屏幕建议相关推荐

  1. ABAP选择屏幕的例子

    下面是一个典型的选择屏幕的典型例子. 1.设置选择屏幕参数. ***begin(end) of block使用屏幕元素逻辑块. SELECTION-SCREEN BEGIN OF BLOCK BK1 ...

  2. ABAP 选择屏幕标题和ALV标题的修改

    1.Selection Screen(选择屏幕)标题的修改. 然后生成选屏界面的标题,如图: 若是需要修改该标题,可按以下两步进行操作: (1)在ABAP编辑器页面,选择"转到"- ...

  3. abap选择屏幕上的button

    1.背景:近期在看sap的一些abapDemo,看了一个比較好用的功能.分享一下.希望对用到的兄弟有帮助,主要功能是:在选择屏幕上弹出一个小窗体.放一些button在上面,触发不同button,会处理 ...

  4. ABAP 选择屏幕上添加按钮,按钮上添加文字和图片

    TABLES: sscrfields. TYPE-POOLS:slis,ole2. TYPE-POOLS icon. * 选择屏幕 SELECTION-SCREEN SKIP 1. SELECTION ...

  5. abap 选择屏幕事件AT SELECTION-SCREEN

    AT SELECTION-SCREEN (1).其实就像一个FORM,所以在这个事件里声明的变量都是局部变量. (2).根据SY-UCOMM这个系统变量可以判断用户的命令 (3).在这个事件里响应的是 ...

  6. ABAP选择屏幕下拉框

    导语:好久没有写选择屏幕了,下面分享一个选择屏幕下拉框的实现,用户认为在选择屏幕上的搜索帮助不太友好,希望做一个下拉框来选. 一.直接引用标准值 第一种是最基础的,直接依靠表字段的搜索帮助等系统自带的 ...

  7. abap选择屏幕工具栏按钮问题

    选择屏幕的工具栏按钮?听上去好像就是SE80创建report的时候,新增加一个GUI状态嘛,对不对?其实不是的. 我们先看一个普通的report程序 不就是这样嘛? 我们运行这个report看看 点击 ...

  8. ABAP选择屏幕:动态选择屏幕

    导语:在做ALV报表的时候,碰见过用 RADIOBUTTON区分不同页签,或者是区分不同的选择屏幕字段的需求,这里简单的说一下,如何通过RADIOBUTTON来实现动态选择屏幕. 关键元素: 1. M ...

  9. ABAP选择屏幕权限控制

    输入选择条件,回车进行权限的检查. AT SELECTION-SCREEN. IF SY -UCOMM  =  'ONLI' .      PERFORM AUTHORITY_CHECK . ENDI ...

最新文章

  1. MySQL手机统计信息_MySQL统计信息
  2. wps 模拟分析 规划求解_入行十年,我是如何解决模流分析准确性问题的
  3. C++二维数组做形参
  4. 疑似小米11系列旗舰跑分曝光:骁龙875性能突破天际
  5. Goods:查询某个用户的购物车条目以及添加购物车条目
  6. error installing service: 拒绝访问。 (5)_CentOS7x86_64安装Tomcat8.5手册
  7. FP Growth算法简介+实例
  8. 手机上怎么安装Java的软件游戏
  9. 数控车计算机软件编程的重要性,数控车床有多少人软件编程?
  10. 自己实验安装MPlay-没有安装成功。。且么参考
  11. Proxmox(PVE) Web 控制面板添加登录二步验证(TFA)
  12. 服务器上线运行正常但不能上网,网线是好的,插笔记本正常上网,插在服务器上却不能上网的解决方法...
  13. IDEA添加oracle数据库时不显示数据表
  14. MOOS例程HelloWorld-详细注释
  15. preall点云粗对齐作为matlab函数,pca和普氏分析法都有函数,主成分也有函数
  16. CIL----公共中间语言
  17. 使用SOLIDWORKS验证光线模拟
  18. 会计准则中计算机软件费用摊销,财务软件累计摊销完的账务处理
  19. python存数据库、c++读数据库_如何从C中读取python pickle数据库/文件?
  20. 计算机毕业设计Node.js+Vue基于Java的校园交友平台(程序+源码+LW+部署)

热门文章

  1. adas--智能驾驶辅助系统
  2. PostgreSQL SQL 语言:数据定义
  3. 如何跟程序员谈一场没有Bug的恋爱
  4. SublimeText设置在浏览器打开 快捷键
  5. 天融信TOS系统命令行下查看资源使用情况
  6. Objective-C之run loop详解
  7. JS获取URL中GET的参数
  8. ChartDirector Python创建建多层甘特图的代码
  9. 2010年11月23日学习内容总结
  10. 如何让以特定字符串结尾的所有站点都被加入到Local Intranet Zone中?