我也是abap新手,这部分内容是为新手准备的。目前对数据字典的理解可能还很浅显。
进入数据字典的Tcode(事务代码):SE11。
用过关系数据库的都知道表和字段的概念,一个表通常由很多个字段组成,一个字段就是表中的一列,字段的类型就决定了这一列数据的类型和取值范围。
SAP系统里面,最主要的几个概念:表/结构(Table/Structure)、数据元素(Data Element)、域(Domain)、类型(Type)。表通常由字段构成,字段由数据元素构成,数据元素可以指定使用某个域,而域又使用了某种类型。与其他编程语言一样,SAP里面的基本类型(TYPE)也有整型、字符型、浮点型和字符串类型等。
为什么定义域和数据元素,我的理解是为了重用。域是对TYPE的一种封装,一个域包含使用什么类型以及使用这种类型的长度,可以说域是细化了的TYPE,是一个有长度限制的TYPE。
例如,经常用20个字符来存放描述信息,就可以定义一个域,域名为:TEXT20,短文本:描述信息,类型:char,长度:20。那么以后无论是对一个物料的描述,还是对一个成本中心的描述,都可以使用这个域来定义字段。
例如MENG13,这个域通常用来做数量,其基本类型是QUAN,13是这个域的长度。库存的数量或者采购数量等需要使用长度为13(其中包含三位小数位)的浮点数时,都采用MENG13这个域,而不是每次都指定用QUAN,然后再指定长度为13。
数据元素则是对域的一个封装,在域的基础上加上了语义描述。比如,TEXT20这个域在很多个场合都要使用,在FI模块可能用来描述某个成本中心的名称,在MM模块可能用来描述一个供应商的名字。为了区分一个域在不同场合下使用的特定含义,附加了域的含义之后,就编程了数据元素。因此在定义数据元素的时候,要指定使用哪个域,以及对这个域的短文本、中文本、长文本的描述。
SAP里面定义表就是要指定字段名,以及该字段使用哪个数据元素。真正在数据库中存在的,可以存放数据的表叫透明表(transparent table,有时竟然被叫做转账表)。
定义结构(structure)跟定义表类型,只是结构中不存放数据,通常用来作为工作区。
目前为止我还没有定义过视图,感觉SAP里面的视图应该和数据库中视图的概念差不多。
但有时候,创建一个表,定义表中的一个字段时还要指明参考表和参考字段,这个我现在还没弄明白。比如在MSEG这个表中的ERFMG字段,它的参考字段是MSEG中的ERFME字段。
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/9946518/viewspace-419044/ ,如需转载,请注明出处,否则将追究法律责任。