一些人在写开发功能说明书的时候不知道如何去找屏幕字段对应的透明表,下面我来介绍一个比较有效的方法:
首先简单介绍一下概念:
在SAP中的表的种类有以下三种:Tranparent table,Pools,Cluster table。
透明表
每个透明表在数据库中有一个相应的物理表。物理表的名称和数据字典中的逻辑表定义的名称一致。事物中处理的数据存贮在透明表中。可以通过数据库直接查询,abap人员也希望能了解这个表的名字。
存贮表
存储表可以用来存贮控制数据(例如:屏幕顺序,程序参数或临时数据)。几个存
储表可以组合成一个表库。该表库和数据库中的一物理表库相一致。它包含了各组
合库分派给它的所有记录。
簇表
连续的文本如文档之类可以存贮在簇表中。几个簇表可以组合成一个表簇。对这种表类型,不同表中的几个逻辑行组合到一物理记录。这可以实现一对象接一对象地存贮或访问,访问簇中的表的一个前提是,至少关键字的一部分必须相符合。几个簇表存贮在数据库中一个相应的表里。
创建视图结构
活动期间生成视图的结构。该结构在运行时间环境作为接口使用。 通常不显示在ABAP/4 词典中。
【表】
在R/3中有三种表类型:
透明表格
共享表格
簇表
透明表格:
透明表格与数据库中的表一一对应,有相同的表名,字段数,字段名ABAP 词典中透明表的定义相对数据库是独立的,定义的表与数据库中的表有相同的结构。当表被激活时,数据库中的物理表存储在ABAP 词典中。
共享表格:
共享表格与数据库中的表是多对一的关系,表名不同,字段数不同,字段名不同。共享表是SAP的一个特有构思。在数据库中,所有共享表格被存储在一个表中,该表叫 ‘表池(Table pool)’。SAP 用共享表格存储系统数据。
簇表:
簇表与共享表格类似。也是多对一的关系。多数簇表存储在一个叫 Table cluster的表中﹐当一些表有共用的PK,或数据被同步访问时,使用簇表。
簇表与透明表的差异在于是针对一组表来处理的,从单个表去理解与透明表没有差异,但是多个表组成簇表,它们在物理上对主键只存储一遍,故对簇表的关联查询可以极大提高访问速度。
A physical table definition is created in the database for the table definition stored in the ABAP Dictionary for transparent tables when the table is activated. The table definition is translated from the ABAP Dictionary to a definition of the particular database.
On the other hand, pooled tables and cluster tables are not created in the database. The data of these tables is stored in the corresponding table pool or table cluster. It is not necessary to create indexes and technical settings for pooled and cluster tables.
【结构】
结构在数据库不存在数据记录。结构用于在程序之间或程序与屏幕之间的接口定义。写过程序的人应该会比较容易理解,结构就是事先定义好的一组数据格式的集合,当系统从数据库中查询出数据时,就可以把这些数据按照结构所要求的格式转存入结构中。这个存贮只是基于内存或缓存级别,不会永久存储。
附加结构
附加结构定义字段的子集,该字段属于其他表格或结构,但是在修正管理中作为单独的对象。这实际上是结构字段对于其他结构或表的引用。
其实通俗的说,Cluster Table就是把一堆数据按一定规则以序列形式存放在某一个“特别大”的“字段”里,将来再按照这个特定规则来读取。
提高性能,节省空间,捎带加强安全性,这就是Cluster Table的用途。
在界面中查找表的方法之一是F1->技术信息->数据元素->所用处理清单
下面通过实例来举例描述:
进入TCode:pa30,选择一个人,如下图:
选择其中一个字段,press F1,
然后选择Technical Infomation:
,
然后选择所用处理清单:
点击后会出现一个列表,即可看到有哪些结构和表对此数据元素进行了引用,您可以通过描述字段看到他的含义,如果你上一屏幕选择的条件不是很多的话,这里应该会很少。基本很快就可以找到您要的透明表了。