[转] 【SAP Table】

  transparent table透明表, pooled table and cluster table簇表. 对于透明表是和DB层的physical table对应的.
  
  对于后俩者,是不对应到DB表的. 比如TBSL就是一个pooled table, 你在DB层找不到此表.
  
  然后多个cluster(pooled) tables组成一个table cluster和table pool . table cluster和table pool是DB层的一个物理表.
  
  为什么要这样呢?我想一个原因可能是速度问题, 我想在存取数据方面,table cluster 可能比table pool要快些,还是那个老问题,就是ABAP dict的数据操作语句是如何转换到DB能认识的语句的, 我study过,但是没什么结果.
  
  记得BSEG吧?当然作为一个cluster table它在DB层不存在, 但是它亲魑猼able cluster :RFBLG的一部分的, 另一个典型的pooled table : 比如posting key OB41设置其实是将数据write to pooled table TBSL, TBSL同样在DB层看不到,但是它是做为table pool ATAB(DB的一个physical 表), RFBLG 和ATAB都有一个字段save data是binaray save的, 所以我想SAP是将经常用到的表(比如bseg)弄到table cluster中, 而配置表ATAB使用频率相对低点,就搞table pool, 但是有理由相信他们速度肯定比存取transparent table要快得多,. 至于底层的技术可能要问真正的ABAP高手了.
  
  我测试过将ATAB delete那个二进制字段,然后在create, 结果posting key不能用了, 比如从RFBLG将BELNR(FI doc no)那条记录删除, OK, FB03再也看不到此doc的line item了, 就是说会计凭证的line item data是binary save在vardata那个field中的.............
  
  pooled table只是才sap dict(se11)才能看到的, 在DB层是没有的, 简单得说,大概是为了加块速度或其他原因吧, 多个pooled table组成一个table pool (就象TBSL-posting keys table),SE16 check ATAB(有个字段是tabname)你会发现有很多pool table组成了它.
  
  另一个case是BSEG和RFBLG,可是RFBLG倒是没有说明你BSEG就在RFBLG中, 但是你可看到BSEG的BELNR(FI doc no).
  
  这样理解吧, 一般ATAB是多是配置表(Pooled table),所以SAP需要告诉你table name
  而RFBLG偏重内容, 比如你在RFBLG delete 一个BELNR, (有个VARDATA恐怕就是将BSEG的内容保存在此), SE16:BSEG就看不到它了, 我想当你check BSEG内容时实际上从DB曾是将RFBLG根据一定规则将内容display出来.

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/99072/viewspace-541605/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/99072/viewspace-541605/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值