转自:https://blog.csdn.net/rfb0204421/article/details/7760697
应收、应付、收款、付款等单据都可以生成ERP的日记帐,那么这些模块的关系是如何关联的呢,我们将会解决这个问题。
各个模块与总帐模块的关系,主要是通过子分类帐来进行关联的。
下面的SQL就是总帐与子分类帐的关联关系:
SELECT *
FROM gl_je_headers jh
,gl_je_lines jl
,gl_import_references gir
,xla_ae_lines xal
,xla_ae_headers xah
,xla.xla_transaction_entities xte
WHERE jh.je_header_id = jl.je_header_id
AND jl.je_header_id = gir.je_header_id
AND jl.je_line_num = gir.je_line_num
AND gir.gl_sl_link_id = xal.gl_sl_link_id
AND gir.gl_sl_link_table = xal.gl_sl_link_table
AND xal.applicaiton_id = xah.applicaiton_id
AND xal.ae_header_id = xah.ae_header_id
AND xah.applicaiton_id = xte.application_id
AND xah.entity_id = xte.entity_id
AND xah.entity_code = :p1
AND xah.source_id_int_1 = :p2
其中,:p1代表类型,:p2代表ID值。比如,如果要示应付发票与总帐的关系,那么:p1值为'AP_INVOICES’,:p2值为AP_INVOICES_ALL的ID值。
具体的关联关系,可能查看表xla_entity_id_mappings。
注意:
通过上面的SQL,可能查询出重复的代码,这主要是因为在xla_ae_lines行里,可能有一些废弃的行。如何判断xla_ae_lines里的行是否被废弃了呢:在xla_ae_lines表里有一个字段:displayed_line_number,如果这个值小于0,那么就说明这个行被废弃了。所以在使用上面的SQL时,最好添加上条件:xla.displayed_line_number > 0。
在表xla_ae_headers里有一个字段gl_transfer_status_code,如果这个字段的值为Y,那说明这个子分类帐已经过账,当需要判断是否过账的时候,可以判断这个字段的值。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。