视图:视图支持几核查询一个或多个表里存在的数据的功能。在ABAP数据字典中激活视图会在数据库中生产次视图,访问此数据库视图需要用数据库接口进行访问。只是查询必要的表和字段不需要查询没必要的字段,因此可以最小化接口。视图和表一样,可以在ABAP程序的SELECT语句中使用。数据库视图在ABAP数据字典中定义后激活,则会自动在数据库中生成。但在ABAP数据字典中变更数据库视图,则这些变更事项不会直接影响数据库中的视图,视图不是拥有数据的对象,因此要删除之前的视图后重新生成ABAP数据字典中定义的新视图。利用视图访问数据库表资料时可以使用OPEN SQL或者NATIVE SQL两种方法。OPEN SQL通过数据库接口被译成数据库依存的NATIVE SQL。
Maintenance status是定义视图只读属性或者读/写属性的功能。若数据库视图由两个以上的表构成,则此时他只能实现读取功能。
1.、SAP的视图的类型
SAP的视图的类型有五种:(SE11 create views)
Database views 数据库视图:和数据库的视图形同,连接条件是必须自定义.;
Projection views:保护视图(就是图上的投影视图):用于屏蔽一些字段(一般用于保护数据时使用).;
Help views帮助视图:该类视图可以用搜索帮助的"selection method"中使用,参与连接表必须存在外键.;
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:我们在创建sap的VIEW时必须把mandt加入View Field,否则会把所有client中的数据都读取出来
SAP的视图有4种,数据库视图、维护视图、投影视图和帮助视图。
数据库视图通过inner join的方式把若干个数据库表连接起来,可以类似的作为一个数据库表在ABAP里使用。
维护视图是通过outer join的方式把数据表连接起来,可以作为维护表格内容的一种方式,很多配置都是通过维护视图实现的;
投影视图有点类型数据库视图,但是是通过outer join的方式,可以隐藏一些字段内容。
帮助视图用于创建ABAP的搜索帮助。