QUERY

    SAP为没有编程基础的用户提供了两种简单的报表制作工具,用户可以根据自己的需要生成简单的查询报表。但是实际上它们跟ABAP开发报表没有实质的区别,也是基于代码的,只是系统在你操作的基础上已经自动为你生成了代码。同时在SAP QUERY中还允许添加ABAP代码,当存在附加表和附加字段时尤其重要。总的来说,作为查询工具他们已经相当完善,足以满足用户一般的查询和统计了。

 

要全面的理解QUERY,首先看一下QUICKVIWER事务代码:SQVI

1、 Quick Viewer所生成的报表是用户自定义的报表,只能由此用户自己使用、维护;

2、 Quick Viewer只能使用存于数据库内的数据,不能进行计算(除小计、累计);

3、 提供与SAP内部工具如EIS,ABC,ALV及外部工具如Word,Excel借口;

4、 无须也无法利用用户组、Functional area统一管理;

5、 无法传输。

比较而言,QUERY就比较完善了,可是做起来也比较麻烦一点:

1、 生成用户组

SAP菜单→工具→ABAP工作台→实用程序→SAP查询→用户组

T-Code:SQ03

2、 创建Functional area(功能区)

SAP菜单→工具→ABAP工作台→实用程序→SAP查询→信息集

T-Code:SQ02

3、 创建SAP Query

SAP菜单→工具→ABAP工作台→实用程序→SAP查询→查询

T-Code:SQ01

 

标准区域与全局区域:

 

标准区域(Standard Area):建立在标准区的查询往往用以满足特定用户的特定需求,因此属于Client独立(client-specific)的查询。这些查询不会连接到SAP工作台组织器(Workbench Organizer)上。

全局区域(Global Area):建立在全局区域的查询是为整个系统开发的,因此属于Client交叉(cross-client)的查询。这些查询会在SAP 工作台组织器(Workbench Organizer)上注册,可以利用正常的流程传输到其他系统中。

它们的区别是:

1、 标准区域是Client相关的,全局区域是Client无关的;

(1)在标准区域中编辑的Query,在其他Client看不到

(2)全局区域是Client无关,编辑后其他Client也可以看到,但只能在开发Client

 

 

QUERY创建过程:

1)创建功能区,也就是所谓的信息集,T_CODESQ02:

QUERY
指定连接的基础表

QUERY


点对勾,继续添加需要连接的表

QUERY

设置字段

QUERY

我选择的全部字段

QUERY

如果在“字段组缺省值”选择中,你选择的是“包括关键字段”或者“创建空字段组”则在这个界面上,我们可以把需要的字段拖到右边的文件夹里。右边文件夹里的字段就是我们做QUERY所能用的字段。双击字段可以修改该字段的属性等。

 

选择完字段后,点击QUERY  按钮信息集就生成了。(上图中工具条上的连接按钮是转到表连接的界面的,”附加”按钮是增加附加表和附加字段的,附加里可以写代码。)

 

创建用户组,并分配用户和功能区,T_CODESQ03:

 

QUERY

QUERY

点击保存后分配用户


QUERY


分配信息集
QUERY

 

 

QUERY

选中需要的信息集,点保存

QUERY

创建SAP QUERY,T_CODE为SQ01:

在新建QUERY之前,选择菜单栏上的“环境”——>“查询区域”与“编辑”——>“其它用户组”依次设置QUERY的区域与用户组,设置完后开始QUERY的新建:

QUERY

QUERY

然后创建新QUERY



QUERY


QUERY

QUERY

 

按下一步QUERY  选择字段组和字段

QUERY
别忘了翻页按钮,每个组的需要的字段都选择上
QUERY

进行字段设置

QUERY

选择需要显示在字段

QUERY


 点击保存,创建完成,点执行测试:

QUERY

执行即可

http://blog.sina.com.cn/sapliumeng
原文地址:https://www.cnblogs.com/senlinmu110/p/3802282.html