DataFix_接收清算帐户
===================
Issue 1 DataFix_RCV_Clearing_Account_Change_For_CAN
===================
现象
现象1:加拿大公司的总帐日记帐界面:接收清算帐户,日记帐不平,无法过帐。如下图:
现象2:加拿大库存组织上CC1上的,清算帐户的公司段设置错误,应该设置成801,实际设置成了801,如下图:
事实1: ORG_ID=801是美国公司,ORG_ID=802是加拿大公司,加拿大只有一个库存组织:CC1
事实2: 加拿大采购模块的相关凭证已经Transfer到总帐日记帐(已经完成日记帐导入,但尚未过帐)
事实3:加拿大和美国使用不同的帐套。
事实4:子模块到总帐是汇总传的,目前在总帐看到两笔出错的不能过帐的日记帐存在此问题。Journal_head_id 分别是:25418 ,25337 事实5:此前曾发生过CC1库存组织接收选项上的接收帐户设置错误的情况。也是错误的设置成801
事实6:接收帐户与清算帐户的科目是一样的。
事实7:接收选项上的Clearing Account在11.5.10开始出现,在11.5.9版本上没有。
事实8:加拿大启用了多币种,美元为本位币,加元帐套为报告帐套,帐套ID分别为1002(USD) 和 1003(CAD)
分析:
受影响的业务:
1) 当采购组织与接收组织不一致时,会使用到此帐户。
2) 使用Drop-Ship,其接收帐户使用的也是Clearing Account. 而加拿大使用的全部是Drop-Ship.
解决方法:
1) 在后台更改CC1采购接收组织的Clearing Account 的公司段为:802 ;
2) 更改子模块(采购模块和库存模块)的所有错误的凭证
3) 更改总帐中(接口和日记帐)所有错误的凭证
4) 如果存在相关汇总帐户,再更新相关汇总帐户。
分析SQL:
1 获取801.1244010000.000000.000.00000000 的CCID Select code_combination_id From gl_code_combinations Where segment1 = '801' And segment2 = '1244010000' And segment3 = '000000' And segment4 = '000' And segment5 = '00000000' #返回:1051 2获取802.1244010000.000000.000.00000000 的CCID Select code_combination_id From gl_code_combinations Where segment1 = '802' And segment2 = '1244010000' And segment3 = '000000' And segment4 = '000' And segment5 = '00000000' #返回:2316 获取 科目= '1244010000' 的所有帐户 Select code_combination_id From gl_code_combinations And segment2 = '1244010000' #返回: 2316 1051 说明该科目相关的帐户只有两个明细帐户,无汇总帐户。 3 获取加拿大帐套的ID Select set_of_books_id From gl_sets_of_books Where Name = 'GiTi Canada Set of Books' #返回1002 4 获取帐户错误的日记帐头 Select Distinct gl.je_header_id From gl_je_lines gl, gl_je_headers gh Where gl.je_header_id = gh.je_header_id And gh.set_of_books_id = 1002 And gl.code_combination_id = 1051; #返回两笔: 25418 25337 5 获取加拿大OU的org_id Select organization_id from hr_operating_units where Name =’某客户(Canada),LTD. #返回127 6 获取CC1的组织ID Select organization_id From mtl_parameters Where organization_code = 'CC1' #返回:126 6 获取库存模块错误的会计分录的所有事务来源类型 SELECT DISTINCT mta.transaction_source_type_id FROM inv.mtl_transaction_accounts mta WHERE mta.organization_id = 126 AND mta.reference_account = 1051 #返回:1 |
相关检查:
--rcv_accounting_events Select Count(1) From po.rcv_accounting_events a Where a.org_id = 127 And a.debit_account_id = 1051; 返回:18 --rcv_receiving_sub_ledger Select Count(1) From rcv_receiving_sub_ledger a Where a.set_of_books_id = 1002 And a.code_combination_id = 1051; 返回:18 Select Count(1) From rcv_receiving_sub_ledger a Where a.set_of_books_id = 1003 And a.code_combination_id = 1051; 返回:0 -- mtl_transaction_accounts Select Count(1) From inv.mtl_transaction_accounts mta Where mta.organization_id = 126 And mta.reference_account = 1051 And mta.transaction_source_type_id = 1; 返回:18 -- gl_interface Select Count(1) From gl.gl_interface gi Where gi.code_combination_id = 1051 And gi.set_of_books_id = 1002; 返回:0 Select Count(1) From gl.gl_interface gi Where gi.code_combination_id = 1051 And gi.set_of_books_id = 1003; 返回:18 --gl_je_lines Select Distinct gl.je_header_id From gl_je_lines gl, gl_je_headers gh Where gl.je_header_id = gh.je_header_id And gh.set_of_books_id = 1002 And gl.code_combination_id = 1051; 返回: 25337 25418 Select Distinct gl.je_header_id From gl_je_lines gl, gl_je_headers gh Where gl.je_header_id = gh.je_header_id And gh.set_of_books_id = 1003 And gl.code_combination_id = 1051; 返回: 无记录 |
执行更新脚本:
BEGIN -- update rcv_parameters Update po.rcv_parameters p Set p.CLEARING_ACCOUNT_ID = 2316 Where p.organization_id = 126; --update rcv_accounting_events Update po.rcv_accounting_events a Set a.debit_account_id = 2316 Where a.org_id = 127 And a.debit_account_id = 1051; --update rcv_receiving_sub_ledger Update rcv_receiving_sub_ledger a Set a.code_combination_id = 2316 Where a.set_of_books_id = 1002 And a.code_combination_id = 1051; -- Update Inv trnasactions account Update inv.mtl_transaction_accounts mta Set mta.reference_account = 2316 Where mta.organization_id = 126 And mta.reference_account = 1051 And mta.transaction_source_type_id = 1; -- update gl_interface Update gl.gl_interface gi Set gi.code_combination_id = 2316 Where gi.code_combination_id = 1051 And gi.set_of_books_id = 1002; Update gl.gl_interface gi Set gi.code_combination_id = 2316 Where gi.code_combination_id = 1051 And gi.set_of_books_id = 1003; --update gl_je_lines for head 25418 and 25337 Update gl.gl_je_lines a Set a.code_combination_id = 2316 Where a.je_header_id = 25418 And a.code_combination_id = 1051; Update gl.gl_je_lines a Set a.code_combination_id = 2316 Where a.je_header_id = 25337 And a.code_combination_id = 1051; End; |
关于作者:
昵称:Jack.shang 档案信息:jack.shang 一位从技术走向管理,再从管理走向市场的普通行者 联系方式:你可以通过syfvb@hotmail.com联系作者 点击查看Jack.shang发表过的所有文章... 本文永久链接: http://blog.retailsolution.cn/archives/2086 |
对本文的评价:
谢谢老商的工作,帮XX项目解了燃眉之急。
注:此贴研究过程及内容可借鉴,但一般人轻易不要为之,并且遇到Datafix,需要汇报技术总监批准。