APP下载

SAP技术TABLE CONTROL和ALV的对比分析

2016-08-11王磊雷亮

大科技 2016年10期
关键词:字段控件界面

王磊雷亮

(1.中国海洋石油总公司 100010 2.中国人民解放军装备学院 101416)

SAP技术TABLE CONTROL和ALV的对比分析

王磊1雷亮2

(1.中国海洋石油总公司 100010 2.中国人民解放军装备学院 101416)

ALV(ABAP LIST VIEWER)和TABLE CONTROL作为SAP提供的两种不同的展示数据的方式,各自具有不同的特点和应用场景。但在具体的选用和如何取舍方面,一直困扰着ABAP开发和功能顾问,本文力求通过通俗的语言分析其功能特点和比较它们的优缺点,希望能直观给从业人员提供一定的技术支持。

SAP 技术;ABAP;TABLE CONTROL;ALV

SAP是全球企业管理软件与技术解决方案的领导者,SAP ECC系统以其稳定性高、集成性好、功能强大和可定制化程度高等特点,受到企业界,尤其是国际大型企业的青睐,得到广泛的应用。ABAP作为其独有的编程语言,受到众多程序开发人员和SAP功能顾问的追捧,本文就其使用率高又有些相似的两种技术ALV(ABAP LIST VIEWER)和TABLE CONTROL进行浅显的对比分析。供相关从业人员和企业需求人员参考。

1 ALV的特点和不足

ALV是SAP中的一种报表展示形式,可实现标准化、简单化开发系统中的表单,给用户提供统一的表单格式。ALV本身的一些排序、合计等预设功能,使ALV报表输出具有很好的可读性和功能性。作为一种广泛应用的报表技术,ALV具有以下特点:

1.1 字段属性控制灵活

使用字段目录来控制界面中字段顺序、对齐方式、颜色等属性具有很高的灵活性。也可以按需求在界面展示时使用方法SET_FRONTEND_FIELDCATALOG进行动态设置。

1.2 界面布局控制便捷

ALV提供的标准功能可直接进行显示布局调整,不同的布局可以被保存下来,可以通过选择布局来显示保存的样式。与字段目录结合,可实现灵活便捷的界面调整。

1.3 预设功能使用方便

ALV菜单中预设的排序、过滤等功能可以直接使用,不需要再做专门开发。如果用户有特定需要,也支持在原有功能上添加新功能,也可以屏蔽不常用的预设功能。

1.4 支持事件监听和响应

当用户用鼠标点击某个单元格时,程序可以捕获这些事件。对应的控制逻辑可在用户触发这些事件时做出响应。如实现数据修改完成后对数据格式进行校验的功能。

虽然ALV得到了广泛应用,但也还存在着一些不足:

1.4.1 程序代码量大

很多功能的实现都不能通过设置属性等方式实现。在事件的控制中,要有类定义、事件注册和响应等多个部分,需要具有面向对象设计思想和继承或重写类的能力。

1.4.2 不便于交互

ALV适合报表的展示,但在数据输入方面不够便利。输入数据时不够流利,有时还需要编写相应的代码才能将输入的数据进行保存。

2 TABLE CONTROL的特点和不足

TABLE CONTROL是SAP应用中最重要的对象之一,业务单据的输入、基础数据的输入等都使用TABLE CONTROL控件,它对数据修改更加简单。这种方式对用户来说也更加熟悉。

TABLE CONTROL具有如下几方面特点:

2.1 数据输入方便快捷

具有屏幕控件特有的记忆输入功能,让用户在遇到大量相似的数据需要手动输入时,可以通过屏幕记忆的历史数据来进行选择,极大的提高了输入的效率和流畅性。

2.2 自动适应屏幕大小

当用户改变窗口大小时,TABLE CONTROL的大小会随窗口大小自动调整。用户可以通过拖动滚动条在小屏幕内完成操作。用户可同时打开两个操作界面,在输入数据时左右对比,进一步减小失误率。

2.3 创建方式灵活

SAP系统提供了创建TABLE CONTROL的向导。可以根据提示选择要输出的字段和按钮等。创建完成以后,还可以更改列的属性或是增删列。同时系统也提供手动创建的方式。两种方式的结合使得开发更为灵活。

2.4 字段属性设置方便

对于列的很多属性,比如参考字段等可以直接在属性列表里进行维护。想要隐藏某些字段,只需将输出字段属性取消,就能很方便的在展示结果中取消展示该字段。

2.5 错误定位迅速

在数据的校验方面,可以通过GET CURSOR FIELD和SET CURSOR FIELD方式设置光标所在位置,发生错误时直接将光标定位到出错条目所在位置,让错误信息更容易进行排查。

2.6 程序执行效率高

执行取数逻辑相同只有界面显示不同的程序,TABLE CONTROL展示方式的速度约是ALV展示方式的2.4倍。TABLE CONTROL主要是在屏幕的交互和刷新上节约了大量的时间,从而减少了用户的等待时间。

TABLE CONTROL的不足之处:

2.6.1 不便于进行事件监听

没有提供与之相对应的类,不能进行事件的监听,只能够在逻辑流中的PBO、PAI等事件块中做一定控制。在需要复杂的事件处理时显得不够方便。

2.6.2 不适合进行动态展示

在进行界面展示时要展示的字段事先已经确定,可以通过代码将不需要的字段进行隐藏,但它不能随意的增加新的字段,只能对原有字段或预留出的字段进行调整。

表1 TABLE CONTROL与ALV对比总结

3 总结

TABLE CONTROL作为屏幕类的控件,在数据修改等方面具有明显的优势。同时也能很好的与其他屏幕控件进行衔接,适应能力更强。在需要输入项目较多处,较为实用。如果将这部分程序的展示界面使用TBALE CONTROL进行替换,将会极大的提高录入速度,从而提高工作效率。但TABLE CONTROL相比ALV技术也有不足,在灵活性上,ALV比TABLE CONTROL更有优势,能够对展示的结果做更多的控制,也能够更好的实现对事件的支持,也便于程序封装。在报表的展示方面,继续使用ALV技术,会达到更好的效果。

[1][韩]金圣俊,著,张钟淑,译.SAPABAP开发从入门到精通.机械工业出版社,2013.

[2]黄 佳.SAP程序设计.机械工业出版社,2005.

[3]唐俊华.工程师突击-SAPABAP实用程序开发攻略.机械工业出版社,2014.

[4]温涛.SAPABAP程序设计基础教程.大连理工大学出版社,2011.

TH878

A

1004-7344(2016)10-0276-02

2016-3-15

猜你喜欢

字段控件界面
图书馆中文图书编目外包数据质量控制分析
国企党委前置研究的“四个界面”
关于.net控件数组的探讨
基于FANUC PICTURE的虚拟轴坐标显示界面开发方法研究
人机交互界面发展趋势研究
手机界面中图形符号的发展趋向
CNMARC304字段和314字段责任附注方式解析
ASP.NET服务器端验证控件的使用
无正题名文献著录方法评述
关于CNMARC的3--字段改革的必要性与可行性研究