ORACLE BEER WOLF

»¶Ó­À´µ½ORACLE BEER WOLF>>¡¡¡¡ | Ê×Ò³ ×ÊÔ´ÖÐÐÄ | PL/SQL | ORACLE EBS | LIFE | Ò»°ã·ÖÀà | ITPUBÂÛ̳

¼ÆËãTrial BalanceµÄз½·¨

·¢±íÈË:wolfyuan | ·¢±íʱ¼ä: 2006ÄêÊ®¶þÔÂ04ÈÕ, 19:53

(ǰÇé¼ò½é:GLÄ£¿éÖÐgl_je_lines±íÖÐÿһÌõjournal_line¶¼»áÓÐaccounted_drÓëaccounted_crÁ½¸öÀ¸Î»,±íʾ¸ÃÌõline·¢ÉúµÄ½è·½½ð¶îÓë´û·½½ð¶î; ÔÚgl_balances±íÖÐÿһÌõ¼Ç¼¶¼»á´æ´¢Ò»¸öaccountÔÚijһÀúÊ·»á¼ÆÆÚ¼äµÄÆÚ³õ½è·½ÀúÊ··¢Éú×ܶîbegin_balance_dr, ÆÚ³õ´û·½ÀúÊ··¢Éú×ܶîbegin_balance_cr.)

×î½üÔÚtuningÒ»ÕÅTrial Balance by DateµÄ±¨±í.ÐèÇóÊÇÕâÑùµÄ:

Óû§ÊäÈëÁ½¸öÈÕÆÚstart_date, end_date, ±¨±íÕÒ³öij¸öSOBÏÂÔÚÕâ¶Îʱ¼äÄÚËùÓÐaccountµÄÆðʼÓà¶îbeginning_balance, ½è·½·¢Éú¶îdr_amount, ´û·½·¢Éú¶îcr_amount, ×Ü·¢Éú¶î(½è-´û)net_change, ½áÄ©Óà¶îending_balance.

Ô­À´±¨±íÊÇÕâÑù¼ÆËãµÄ(ºìɫΪ¼ÆËã½á¹ûÀ¸Î»).

1) Ê×ÏÈ,¶Ôÿһ¸öaccount,µ÷ÓÃÒ»¸öº¯Êý¼ÆËã³östart_dateµÄbeginning_balance.

¼ÆËã·½·¨:

ÕÒ³östart_dateËùÔÚµÄperiod_name,¸ù¾Ýperiod_name´Ógl_balances±íÖÐÕÒ³öÕâ¸öaccountµÄbegin_balance_dr, begin_balance_cr.¶þÕßÏà¼õ,µÃ³ö¸ÃaccountÔÚ¸ÃperiodµÄÆÚ³õÓà¶î.period_beginning_balance

È»ºóµ½gl_je_lines±íÖÐ,ÕÒµ½Õâ¸öaccount´Ó¸ÃÆÚ¼äµÚÒ»Ììµ½start_date-1Ëù·¢ÉúµÄËùÓнè´û¶î.sum(accounted_dr) => period_bydate_dr,

sum(accounted_cr) => period_bydate_cr.¶þÕßÏà¼õ,µÃ³ö¸ÃaccountÔÚ¸ÃÆÚ¼äÄÚʵ¼Ê·¢Éú¶î:period_net_change.

×îºó, period_beginning_balance + period_net_change, µÃ³ö¸ÃÌìµÄbeginning_balance.

2) ´Ógl_je_lines±íÖÐ,sum´Óstart_dateµ½end_date¸Ãaccount·¢ÉúµÄËùÓнè´û¶î.

sum(accounted_dr) => dr_amount ,sum(accounted_cr) => cr_amount

dr_mount ¨C cr_mount => net_change.

3) Beginning_balance + net_change = ending_balance

ÒòΪÐèÒª¶Ôgl_je_linesÕâÒ»¿Ö²ÀµÄ±í×ösum¶¯×÷,ËùÒÔËæ×ÅÊäÈëstart_dateÓëend_dateÖ®¼äʱ¼ä¶ÎµÄ¼Ó´ó,ÕâÕű¨±íµÄ¿Ö²ÀϵÊýÖ¸ÊýÉÏÉý.

ÔÚ¶Ô±¨±íµÄSQLÕÛÌÚÁËÊýÌìÒÔºó,ͻȻÏëµ½Ò»¸öÎÊÌâ,¾ÍÊÇÔÚGLÄ£¿éÖÐ,¶ÔÓÚËùÓеÄÀúÊ·»á¼ÆÆÚ¼ä, gl_je_linesÖÐÔÚ¸ÃÆÚ¼ä·¢ÉúµÄ½è´û¶î,ÒÔ¼°ÀúÊ··¢ÉúµÄ×ܵĽè´û¶î,¶¼»ásumµ½gl_balancesÕâÕűíÀïÃæ.,Ò²¾ÍÊÇ˵, ÎÒÃÇÉÏÃæËù×öµÄsum¶¯×÷,ÆäʵºÜ´ó²¿·ÖGLÔçÒѾ­ÎªÎÒÃÇ×öºÃÁË.

ÀýÈç˵ÎÒÃÇÒªÇó´Ó2006-4-5 µ½ 2006-8-5Ö®¼äij¸ösobµÄbeginning_balance, dr_amount, cr_amount, net_change, ending_balance.

°´ÕÕÉÏÃæµÄ˵·¨,¼ÙÈô2006-4-5ËùÔÚ»á¼ÆÆÚ¼äµÚÒ»ÌìÊÇ2006-4-1, 2006-8-5ËùÔÚ»á¼ÆÆÚ¼äµÚÒ»ÌìÊÇ2006-8-1.

ÎÒÃǵÄbegin_balanceÒÀÈ»°´ÕÕµÚÒ»ÖÖ·½·¨»ñÈ¡.

dr_amountµÄÈ¡µÃ,ÎÒÃÇ¿ÉÒÔʹÓÃ2006-8-6µÄbeginning_dr ¼õÈ¥ 2006-4-5µÄbeginning_dr,

cr_amountÒ²¿ÉÒÔÓÃͬÑùµÄ·½·¨È¡µÃ.

¶øÁ½¸öbeginning_drµÄÈ¡µÃ,ÎÒÃÇÔÚ·½·¨Ò»µÄµÚÒ»²½ÆäʵÒѾ­È¡µÃ,Ö»ÊÇËüûÓÐʹÓÃ:

Begin_balance_dr + period_bydate_dr = beginning_dr

Begin_balance_cr + period_bydate_cr = beginning_cr

Ò²¾ÍÊÇ˵ÎÒÃÇÀûÓ÷½·¨Ò»µÄµÚÒ»²½·Ö±ðÈ¡µÃstart_dateÓëend_dateµÄbegin_drÓëbegin_cr.

ÀûÓÃÕâ4¸öÊýÖµ¾Í¿ÉÒÔÆ´µÄÎÒÃÇËùÐèÒªµÄËùÓÐÀ¸Î»ÖµÁË.

ÇóµÃend_dateµÄÁ½¸öÊýÖµ×÷Ϊending_dr, ending_cr.

Beginning_balance = beginning_dr ¨C beginning_cr

Dr_amount = ending_dr ¨C beginning_dr

Cr_amount = ending_cr ¨C beginning_cr

Net_change = dr_amnount ¨C cr_amount

Ending_balance = ending_dr ¨C ending_cr

°´ÕÕÕâÖÖ·½·¨,ÎÒÃÇsumµÄ֪ʶ2006-4-1µ½2006-4-5ÒÔ¼°2006-8-1µ½2006-8-5ÕâÁ½¸öÐ¡Çø¼äµÄjournal,¶øÃ»ÓÐÏñ·½·¨Ò»Ò»ÑùsumËùÓеÄ.


Valid XHTML 1.0 Strict and CSS. Powered by pLog
Design by Blog.lvwo.com