ITPUB??ì3
新一届的微软MVP评选已经开始,欢迎各位推荐!
ITPUB论坛 » ERP二次开发 » 总帐分类帐报表的开发方法

标题: 总帐分类帐报表的开发方法
离线 Arrayzzf407
初级会员



精华贴数 0
个人空间 0
技术积分 94 (17338)
社区积分 0 (65476)
注册日期 2002-9-16
论坛徽章:0
      
      

发表于 2003-9-24 14:48 
总帐分类帐报表的开发方法

开发总帐分类帐报表,如果仅仅是要在总帐中处理,分析gl_je_lines,gl_je_headers,gl_balances 就可以搞定了,但我的一个客户要求从总帐中追述到各个业务模块中,例如应付的凭证,接收动作产生的分录,这应该要访问表gl_import_references .好烦的,那位大侠做过类似的工作,交流一下,我头已经发混了.


只看该作者    顶部
离线 player012
高级会员



精华贴数 2
个人空间 0
技术积分 2305 (686)
社区积分 10 (10657)
注册日期 2003-3-19
论坛徽章:3
会员2007贡献徽章会员2006贡献徽章授权会员   
      

发表于 2003-10-17 16:36 
我原来做帐龄表的时候追溯过

不知道你的具体问题是什么?


只看该作者    顶部
离线 anew_1999
初级会员


精华贴数 0
个人空间 0
技术积分 32 (37756)
社区积分 147 (2805)
注册日期 2002-8-7
论坛徽章:0
      
      

发表于 2003-10-22 17:48 
不知道有没有帮助,这是我的一段代码,追述结算号,单据序列

被封掉的是追述来源于inv的,因为速度实在太慢就没有用了,不知道对你有没有用。
          -- Comment  2003/03/06 start
/*          IF upper( v_gl_005_loop.je_source ) = 'INVENTORY' THEN
             IF upper( v_gl_005_loop.je_category ) = 'WIP' THEN
                SELECT  DISTINCT xgv.trx_number_displayed
                      , abs( xgv.trx_quantity )
                INTO    v_ref_number ,n_ref_quantity
                FROM    xla_wip_ael_gl_v xgv
                WHERE   xgv.je_header_id = v_gl_005_loop.je_header_id
                AND     xgv.je_line_num  = v_gl_005_loop.je_line_num ;
             ELSE
                SELECT  DISTINCT xgv.trx_number_displayed
                      , abs( xgv.trx_quantity )
                INTO    v_ref_number ,n_ref_quantity
                FROM    xla_inv_ael_gl_v xgv
                WHERE   xgv.je_header_id = v_gl_005_loop.je_header_id
                AND     xgv.je_line_num  = v_gl_005_loop.je_line_num ;
             END IF ;*/
          -- Comment  2003/03/06 end

          IF upper( v_gl_005_loop.je_source ) = 'PAYABLES' THEN
             IF upper( v_gl_005_loop.je_category ) = 'CROSS CURRENCY' OR
                upper( v_gl_005_loop.je_category ) = 'PAYMENTS' OR
                upper( v_gl_005_loop.je_category ) = 'RECONCILED PAYMENTS' THEN

                SELECT  DISTINCT xgv.trx_number_displayed
                      , xgv.doc_sequence_value
                INTO    v_ref_number ,n_ref_doc_seq_value
                FROM    xla_ap_pay_ael_gl_v xgv
                WHERE   xgv.je_header_id = v_gl_005_loop.je_header_id
                AND     xgv.je_line_num  = v_gl_005_loop.je_line_num ;
             ELSIF upper( v_gl_005_loop.je_category ) = 'PURCHASE INVOICES' THEN
                SELECT  DISTINCT xgv.trx_number_displayed
                      , xgv.trx_quantity
                      , xgv.doc_sequence_value
                INTO    v_ref_number ,n_ref_quantity,n_ref_doc_seq_value
                FROM    xla_ap_inv_ael_gl_v xgv
                WHERE   xgv.je_header_id = v_gl_005_loop.je_header_id
                AND     xgv.je_line_num  = v_gl_005_loop.je_line_num ;
             ELSE
                SELECT  DISTINCT xgv.trx_number_displayed
                      , xgv.doc_sequence_value
                INTO    v_ref_number ,n_ref_doc_seq_value
                FROM    xla_ap_inv_ael_gl_v xgv
                WHERE   xgv.je_header_id = v_gl_005_loop.je_header_id
                AND     xgv.je_line_num  = v_gl_005_loop.je_line_num ;
             END IF ;

          ELSIF upper( v_gl_005_loop.je_source ) = 'PERIODIC INVENTORY' THEN
             IF upper( v_gl_005_loop.je_category ) = 'ACCRUAL' OR
                upper( v_gl_005_loop.je_category ) = 'RECEIVING' THEN

                SELECT  DISTINCT xgv.trx_number_displayed
                INTO    v_ref_number
                FROM    xla_po_ael_gl_pac_v xgv
                WHERE   xgv.je_header_id = v_gl_005_loop.je_header_id
                AND     xgv.je_line_num  = v_gl_005_loop.je_line_num ;
             ELSIF upper( v_gl_005_loop.je_category ) = 'WIP' THEN
                SELECT  DISTINCT xgv.trx_number_displayed
                INTO    v_ref_number
                FROM    xla_wip_ael_gl_pac_v xgv
                WHERE   xgv.je_header_id = v_gl_005_loop.je_header_id
                AND     xgv.je_line_num  = v_gl_005_loop.je_line_num ;
             ELSE
                SELECT  DISTINCT xgv.trx_number_displayed
                INTO    v_ref_number
                FROM    xla_inv_ael_gl_pac_v xgv
                WHERE   xgv.je_header_id = v_gl_005_loop.je_header_id
                AND     xgv.je_line_num  = v_gl_005_loop.je_line_num ;
             END IF ;

          ELSIF upper( v_gl_005_loop.je_source ) = 'PROJECT ACCOUNTING' THEN
             IF upper( v_gl_005_loop.je_category ) = 'REVENUE' THEN
                SELECT  DISTINCT xgv.trx_number_displayed
                INTO    v_ref_number
                FROM    xla_pa_dr_ael_gl_v xgv
                WHERE   xgv.je_header_id = v_gl_005_loop.je_header_id
                AND     xgv.je_line_num  = v_gl_005_loop.je_line_num ;
             ELSE
                SELECT  DISTINCT xgv.trx_number_displayed
                INTO    v_ref_number
                FROM    xla_pa_ei_ael_gl_v xgv
                WHERE   xgv.je_header_id = v_gl_005_loop.je_header_id
                AND     xgv.je_line_num  = v_gl_005_loop.je_line_num ;
             END IF ;

          ELSIF upper( v_gl_005_loop.je_source ) = 'RECEIVABLES' THEN
             IF upper( v_gl_005_loop.je_category ) = 'ADJUSTMENT' THEN
                SELECT  DISTINCT xgv.trx_number_displayed
                      , xgv.doc_sequence_value
                INTO    v_ref_number ,n_ref_doc_seq_value
                FROM    xla_ar_adj_ael_gl_v xgv
                WHERE   xgv.je_header_id = v_gl_005_loop.je_header_id
                AND     xgv.je_line_num  = v_gl_005_loop.je_line_num ;
             ELSIF upper( v_gl_005_loop.je_category ) = 'BANK CHARGES'  OR
                   upper( v_gl_005_loop.je_category ) = 'BANK RECEIPTS' OR
                   upper( v_gl_005_loop.je_category ) = 'CONFIRMATION'  OR
                   upper( v_gl_005_loop.je_category ) = 'REJECTION'     OR
                   upper( v_gl_005_loop.je_category ) = 'REMITTANCE'    OR
                   upper( v_gl_005_loop.je_category ) = 'WRITE-OFF'     THEN

                   SELECT  DISTINCT xgv.trx_number_displayed
                         , xgv.doc_sequence_value
                   INTO    v_ref_number ,n_ref_doc_seq_value
                   FROM    xla_jl_br_ar_bt_ael_gl_v xgv
                   WHERE   xgv.je_header_id = v_gl_005_loop.je_header_id
                   AND     xgv.je_line_num  = v_gl_005_loop.je_line_num ;
             ELSIF upper( v_gl_005_loop.je_category ) = 'CROSS CURRENCY'   OR
                   upper( v_gl_005_loop.je_category ) = 'MISC RECEIPTS'    OR
                   upper( v_gl_005_loop.je_category ) = 'RATE ADJUSTMENTS' OR
                   upper( v_gl_005_loop.je_category ) = 'TRADE RECEIPTS'   THEN

                   SELECT  DISTINCT xgv.trx_number_displayed
                         , xgv.doc_sequence_value
                   INTO    v_ref_number ,n_ref_doc_seq_value
                   FROM    xla_ar_rec_ael_gl_v xgv
                   WHERE   xgv.je_header_id = v_gl_005_loop.je_header_id
                   AND     xgv.je_line_num  = v_gl_005_loop.je_line_num ;
             ELSIF upper( v_gl_005_loop.je_category ) = 'CREDIT MEMOS'   OR
                   upper( v_gl_005_loop.je_category ) = 'DEBIT MEMOS'    OR
                   upper( v_gl_005_loop.je_category ) = 'SALES INVOICES'  THEN

                   SELECT  DISTINCT xgv.trx_number_displayed
                         , xgv.trx_quantity
                         , xgv.doc_sequence_value
                   INTO    v_ref_number ,n_ref_quantity,n_ref_doc_seq_value
                   FROM    xla_ar_inv_ael_gl_v xgv
                   WHERE   xgv.je_header_id = v_gl_005_loop.je_header_id
                   AND     xgv.je_line_num  = v_gl_005_loop.je_line_num ;
             ELSE
                SELECT  DISTINCT xgv.trx_number_displayed
                      , xgv.doc_sequence_value
                INTO    v_ref_number ,n_ref_doc_seq_value
                FROM    xla_ar_inv_ael_gl_v xgv
                WHERE   xgv.je_header_id = v_gl_005_loop.je_header_id
                AND     xgv.je_line_num  = v_gl_005_loop.je_line_num ;
             END IF ;

          ELSIF  upper( v_gl_005_loop.je_source ) = 'PURCHASING' THEN
             SELECT  DISTINCT xgv.trx_number_displayed
             INTO    v_ref_number
             FROM    xla_po_ael_gl_v xgv
             WHERE   xgv.je_header_id = v_gl_005_loop.je_header_id
             AND     xgv.je_line_num  = v_gl_005_loop.je_line_num ;

          ELSIF  ( FND_PROFILE.VALUE('JGZZ_COUNTRY_CODE') = 'CO' ) = TRUE THEN
             SELECT  DISTINCT xgv.trx_number_displayed
             INTO    v_ref_number
             FROM    xla_jl_fa_ael_gl_v xgv
             WHERE   xgv.je_header_id = v_gl_005_loop.je_header_id
             AND     xgv.je_line_num  = v_gl_005_loop.je_line_num ;

          ELSIF  ( FND_PROFILE.VALUE('JGZZ_COUNTRY_CODE') = 'CO' )= FALSE THEN
             SELECT  DISTINCT xgv.trx_number_displayed
             INTO    v_ref_number
             FROM    xla_fa_ael_gl_v xgv
             WHERE   xgv.je_header_id = v_gl_005_loop.je_header_id
             AND     xgv.je_line_num  = v_gl_005_loop.je_line_num ;

          END IF ;


__________________
随缘,随性,随喜
只看该作者    顶部
离线 zzf407
初级会员



精华贴数 0
个人空间 0
技术积分 94 (17338)
社区积分 0 (65476)
注册日期 2002-9-16
论坛徽章:0
      
      

发表于 2003-11-7 23:16 
谢谢,我就是这几个视图解决问题的,但速度是慢,也没有办法了.


只看该作者    顶部
离线 saa
一般会员



精华贴数 0
个人空间 0
技术积分 188 (9916)
社区积分 7 (12682)
注册日期 2002-4-16
论坛徽章:0
      
      

发表于 2003-11-14 13:23 
速度可以提高!

我作过这样的报表!
在METALINK上有相应的文档可以参考!
上去查一下!

上面的那几个VIEW太慢了,
其实就一个GL_JE_LINES这个表就可以去追溯!


__________________
只看该作者    顶部
 
    

相关内容


CopyRight 1999-2006 itpub.net All Right Reserved.
北京皓辰广域网络信息技术有限公司. 版权所有
E-mail:Webmaster@itpub.net
京ICP证:010037号 联系我们 法律顾问