FavoriteLoading
0

数据字典-创建表(Table)

[隐藏]

1, 表类型

SAP Table类型有几种类型:Transparent Table、Pooled Table、Cluster Table、Internal Table

  • Transparent Table:透明表,透明表是一对一的表,同时存在于Dictionary 和Database中, 且具有完全相同的结构,有相同的名称,相同数量的字段,相同的字段名;如若你创建一个自定义透明表的同时,完全相同的一个表将会被创建在Database中。Transparent Table用来存储应用数据,而 Pooled table 和C luster table用来存储系统数据。
  • Table Pool

Table Pool是数据库中的一个Table,它存储的是Pooled Table。R/3用Table Pool存储大量的(数十到数千个)小Table(每个只有10-100行)。Table Pool减少了同时打开多个小Table所需要的数据库资源。Pooled Table被SAP主要用于存储定制数据。

2016-08-29_13-30-07

2016-08-29_13-32-40

  • Cluster Table和Table Cluster

Cluster Table类似于Pooled Table。它们用来存储少数几个(大约2-10个)非常大的Table。这几个表有相同的主键,需要同时访问它们。Table Cluster包含的Table比Table Pool少的多。与Table Pool不同,Table Cluster中的每个Table有相同的主键,多个不同的Table中有相同主键的行组成Table Cluster中的一行。Cluster table减少了读数据库的次数,从而提高了性能。

2016-08-29_13-36-04

著名的BSEG表就是簇表,注意,簇表不能在SQL中用join。

2016-08-29_13-37-05

  • 内表(internal table)

内表,在ABAP Program中的临时创建存储空间的数据表,包括有5种类型:Standard Table,Sorted Table,Index Table,Hashed Table, Any Table ( Generic type , Rarely used )

2, 创建透明表(Transparent table)

tcode:SE11, 选择database table,输入表名(Z或Y开头),点击create按钮,如下:

2016-08-29_13-49-05

Transparent Table 界面包括5个标签选项卡:Attribute、Delivery and Maintenance、Fields、Entry help/check、Currency/Quantity Fields

Attribute选项卡

与 Domain 的 Properties 和 Data Element 的 Attribute 一致,显示创建人、创建日期、归属开发包、语言版本等基本信息

Delivery and Maintenance选项卡:如下输入

2016-08-29_14-27-30

1) Delivery Class:表示该表的传递类型;通过搜索帮助看到以下几类类型:

2016-08-29_14-28-33

2) Data Browser/Table View Maint.:用于确认该表数据是否允许通过表维护工具直接使用;

展开选项,有三项可以选择,依次是: 有权限的维护、允许维护、不允许维护;本例选择Display/Mainenace Allowed

2016-08-29_14-29-16

Fields选项卡:显示Transparent Table维护的主要字段属性;包括:

 

  • Fields:表字段名称,同一表中的字段名称不能重复;
  • Key:主键,如若勾选,则表示该字段为主键,表中数据不允许重复,支持2个以上字段作为表主键;
  • Init:是否为空,如若勾选,在新增数据时,该字段不能为空;
  • Field Type:字段类型,为R/3系统中定义的Data Element,输入后,系统会带出相关的属性;
  • Data Type:数据类型,如若参照Domain定义的Data Element会带出相应的预定义数据类型,也可以通过字典维护器中的 “Predefined Type“按钮,

--->创建domain 创建element

如下输入字段,主键,字段类型等信息,

2016-08-29_14-32-27

激活时会跳到技术设置页面(Technical Settings),或直接点击‘技术设置’按钮跳转

2016-08-29_14-38-05

技术设置界面

2016-08-29_14-44-40

1) Data Class:设置表在数据库中的物理存储空间,以便分类与维护,默认分为几类:

2016-08-29_14-39-17

2) Size Categories:按实际需求定义表的空间大小,以大小分为以下9种:

2016-08-29_14-40-03

3) Buffering 和 Buffering Type:定义表的缓存空间,设置缓存空间有利于提高表的检索效率,但是同样也会加大服务器的资源损耗。

一般不建议使用缓存,如若要提高检索效率,可以通过设置表索引。

4) Log data changes:此复选框设置是否会记录表数据变动情况,此功能对存储空间损耗较大,如无特殊情况不推荐使用。

Entry help/check 选项卡:数据参考关联表、Search Help、外键、Domain等属性信息;

因 SAP 使用的是关系数据库,很多主要字段可同时分布在不同表中;为了保证这些关键字段的准确性,必须要求这些字段以某个主表的数据为参考标准,以防止用户在数据修改或新增时出错。该选项卡中的内容信息,均为系统保留类型,在输入Field Type之后,将自动显示。

本例子不涉及。具体可参照标准表TVEP

2016-08-29_14-47-43

Currency/Quantity Fields 选项卡:货币/数量字段维护

数据表中有一些特殊单位,如货币、计量单位等。与它们相关的数据也是直接从关联表中获取。当创建完数量字段后,都要根据通过手工维护输入参考的货币或计量单位。数据类型为QUAN表示的是数量,CURR表示的金额,如果这两个字段不和度量单位进行关联的话,字段本身的准确性就有问题,比如身高1米8,如果单位为CM的话,这数值为180,如果单位为M的话,则数值为1.8,因此必须要设置这个关联,否则无法激活。

本例子中的身高(Height)体重(Weight)这两个字段需要设置,我们这里选择一个系统表AUSP相应的字段ATAWE进行参照,参照的字段必须要是数据元素为单位的字段。如下图:

2016-08-29_14-58-46

设置完保存激活。

以上。