ABAP 视图

视图:视图支持几核查询一个或多个表里存在的数据的功能。在ABAP数据字典中激活视图会在数据库中生产次视图,访问此数据库视图需要用数据库接口进行访问。只是查询必要的表和字段不需要查询没必要的字段,因此可以最小化接口。视图和表一样,可以在ABAP程序的SELECT语句中使用。数据库视图在ABAP数据字典中定义后激活,则会自动在数据库中生成。但在ABAP数据字典中变更数据库视图,则这些变更事项不会直接影响数据库中的视图,视图不是拥有数据的对象,因此要删除之前的视图后重新生成ABAP数据字典中定义的新视图。利用视图访问数据库表资料时可以使用OPEN SQL或者NATIVE SQL两种方法。OPEN SQL通过数据库接口被译成数据库依存的NATIVE SQL。

Maintenance status是定义视图只读属性或者读/写属性的功能。若数据库视图由两个以上的表构成,则此时他只能实现读取功能。

1.SAP的视图的类型

SAP的视图的类型有五种:(SE11 create views

ABAP 视图_第1张图片

Database views 数据库视图:和数据库的视图形同,连接条件是必须自定义.

Projection views:保护视图(就是图上的投影视图):用于屏蔽一些字段(一般用于保护数据时使用).

Help views帮助视图:该类视图可以用搜索帮助的"selection method"中使用,参与连接表必须存在外键.

ABAP 视图_第2张图片

Maintenance views维护视图:允许你进行对几个表的数据进行修改,参与连接表必须存在外键,他们的连接条件是不能自定义的;

Append Views附加视图:这种视图主要用于增强。

在四种类型视图只有Database views是通过inner join来建立,其他类型的视图使用的outer join 语句建立的。

 

2、对于Help视图和Maintenance视图的一些限制

对于用于定义Help视图和Maintenance视图的第二层表必须和主表有N:1的关系,其他加入的第三层表又的和第二层表有N:1的关系。

 

3、各种视图允许的操作

如果database视图和Protection视图能进行select操作,其他视图不能进行查询;

对于多表连接的database视图,只能进行读操作;

如果database视图是单个表,则可以插入纪录;

如果database视图含有表的所有关键字,则可以修改;

对其他三种视图都可以进行插入和修改操作,具体参见maintance status的设置。

 

4、相关TCODE

SE11

PS:我们在创建sapVIEW时必须把mandt加入View Field,否则会把所有client中的数据都读取出来

SAP的视图有4种,数据库视图、维护视图、投影视图和帮助视图。

数据库视图通过inner join的方式把若干个数据库表连接起来,可以类似的作为一个数据库表在ABAP里使用。

维护视图是通过outer join的方式把数据表连接起来,可以作为维护表格内容的一种方式,很多配置都是通过维护视图实现的;

投影视图有点类型数据库视图,但是是通过outer join的方式,可以隐藏一些字段内容。

帮助视图用于创建ABAP的搜索帮助。

 

你可能感兴趣的:(ABAP,乱乱记)