BSEG和BSIS、BSAS、BSID、BSAD、BSIK、BSAK
六個表的關係
1、數據關係:
BSAS+BSIS+BSAK+BSIK+BSAD+BSID = BSEG
2、六個表說明:
cleared |
opened |
|
BSAS |
BSIS |
==>all GL documents |
BSAK |
BSIK |
==>all AP documents |
BSAD |
BSID |
==>all AR documents |
BSAS:總帳明細(已清帳)總賬
BSIS:總帳明細(未清帳)總賬
BSAD:應收明細(已清帳)客戶
BSID:應收明細(未清帳)客戶
BSAK:應付明細(已清帳)供應商
BSIK:應付明細(未清帳)供應商
3、表關係:
BSEG主要通過“憑證號”“會計年度”“行號”和這六張表關聯
BUKRS ( Company code )
BELNR ( Document No )
GJAHR ( Fiscal Year )
BUZEI ( Line Item )
BKPF 是財務憑證擡頭,BSEG 是財務憑證行項目。在財務憑證記賬的時候,數據被插入 BKPF 和 BSEG,如果有必要,數據同時插入以上六張表中的一個未清表。
做清帳的時候,數據從六張表中的一個未清表刪除,同時插入對應的已清表。一般情況下一筆業務產生的憑證都是未清的,那麼:如果該業務行是客戶相關的,則被記錄到BSID;如果該業務行是供應商相關的,則被記錄到BSIK;無論和客戶相關還是和供應商相關,都是和總帳相關,所以也會有記錄到BSIS;但是如果這筆業務被清帳了,則相應的記錄會從BSI*轉移到BSA*
一般情況下:應收賬款、預收賬款、其他應收款、應收匯票等科目既和客戶相關,又和未清項管理的總帳科目相關;應付賬款、預付賬款、其他應付款、應付匯票等科目既和供應商相關,又和未清項管理的總帳科目相關;
其他總帳科目一般不啓用未清項管理,所以記錄一般都放在BSIS中。
4、BSEG特點:
BSEG本身是一個 Cluster Table(簇表),BSEG就是由上述的六大表的集成,當要讀取”BSEG”Table時就等於去讀取那六個表,這樣你可以想像它讀起來會就多慢。對於簇表或Pool Table,都是SAP系統本身在使用的,因此簇表本身是不存在資料庫實體的,雖然是可以在ABAP使用,不過還是有一些限制:
1.不能使用select distinct or group by語法
2.不能使用Native SQL
3.不能使用specify field names after the order by clause
4.不能在建立次索引
5.查詢時一定要用KEY FIELD