健康一贴灵,专注医药行业管理信息化

SAP簇表(cluster table)BSEG使用方法

1、BSEG可以拆分成6张表
BSAS+BSIS+BSAK+BSIK+BSAD+BSID = BSEG
2、6张表说明
cleared(已清帐) opened(未清帐)
BSAS BSIS GL documents 总账
BSAK BSIK AP documents 供应商
BSAD BSID AR documents 客户

3、表关系
BSEG主要通过“公司代码”、“凭证号”、“会计年度”、“行号”和这六张表关联。
BKPF 是财务凭证抬头,BSEG 是财务凭证行项目。在财务凭证记账的时候,数据被插入BKPF 和 BSEG,如果有必要,数据同时插入以上六张表中的一个未清表。

做清帐的时候,数据从六张表中的一个未清表删除,同时插入对应的已清表。一般情况下一笔业务产生的凭证都是未清的,那么:如果该业务行是客户相关的,则被记录到BSID;如果该业务行是供应商相关的,则被记录到BSIK;无论和客户相关还是和供应商相关,都是和总帐相关,所以也会有记录到BSIS;但是如果这笔业务被清帐了,则相应的记录会从BSI*转移到BSA*

一般情况下:应收账款、预收账款、其他应收款、应收汇票等科目既和客户相关,又和未清项管理的总帐科目相关;应付账款、预付账款、其他应付款、应付汇票等科目既和供应商相关,又和未清项管理的总帐科目相关;
其他总帐科目一般不启用未清项管理,所以记录一般都放在BSIS中。

4、BSEG特点:
BSEG本身是一个 Cluster Table(簇表),BSEG就是由上述的六大表的集成,当要读取”BSEG”Table时就等于去读取那六个表,这样你可以想像它读起来会就多慢。对於簇表或Pool Table,都是SAP系统本身在使用的,因此簇表本身是不存在资料库实体的,虽然是可以在ABAP使用,不过还是有一些限制:
不能使用select distinct or group by语法
不能使用Native SQL
不能使用specify field names after the order by clause
不能在建立次索引
查询时一定要用KEY FIELD


拓展HANA平台数据库表设计思想:

HANA是列式的内存存储,所以取数的性能已经不是问题了,所以也不需要像传统ECC那样需要这么多表做缓存了,例如基于HANA平台开发的最新产品 Simple Finance就将财务相关的表大幅缩减只剩BKPF、BSEG了,为了传统代码能走新HANA平台运行,所有被砍掉的表都用同名的VIEW来替代了
————————————————
版权声明:本文为CSDN博主「SAP剑客」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/zhongguomao/article/details/75727876

posted @ 2021-09-08 09:00  一贴灵  阅读(1960)  评论(0)    收藏  举报
学以致用,效率第一