X-Git-Url: https://delta.frontaccounting.com/gitweb/?a=blobdiff_plain;f=gl%2Finquiry%2Fgl_trial_balance.php;h=f14d833a6fc66d69fd689d002f16f2b386778f02;hb=4e6c60dfc8ab630d72010941b00f65b9659fe0b3;hp=0b08c69d14ef9737fd133c66545415013d33aabb;hpb=2868af36843011d5f96da63e0ddeea05039a7bf5;p=fa-stable.git diff --git a/gl/inquiry/gl_trial_balance.php b/gl/inquiry/gl_trial_balance.php index 0b08c69d..f14d833a 100644 --- a/gl/inquiry/gl_trial_balance.php +++ b/gl/inquiry/gl_trial_balance.php @@ -1,12 +1,12 @@ . ***********************************************************************/ $page_security = 'SA_GLANALYTIC'; @@ -22,20 +22,18 @@ include_once($path_to_root . "/includes/data_checks.inc"); include_once($path_to_root . "/gl/includes/gl_db.inc"); $js = ""; -if ($use_date_picker) +if (user_use_date_picker()) $js = get_js_date_picker(); page(_($help_context = "Trial Balance"), false, false, "", $js); $k = 0; $pdeb = $pcre = $cdeb = $ccre = $tdeb = $tcre = $pbal = $cbal = $tbal = 0; -$cls_pdeb = $cls_pcre = $cls_cdeb = $cls_ccre = $cls_tdeb = $cls_tcre = $cls_pbal = $cls_cbal = $cls_tbal = 0; -$grp_pdeb = $grp_pcre = $grp_cdeb = $grp_ccre = $grp_tdeb = $grp_tcre = $grp_pbal = $grp_cbal = $grp_tbal = 0; //---------------------------------------------------------------------------------------------------- // Ajax updates // -if (get_post('Show')) +if (get_post('Show')) { $Ajax->activate('balance_tbl'); } @@ -48,7 +46,13 @@ function gl_inquiry_controls() start_table(TABLESTYLE_NOBORDER); - date_cells(_("From:"), 'TransFromDate', '', null, -30); + $date = today(); + if (!isset($_POST['TransToDate'])) + $_POST['TransToDate'] = end_month($date); + if (!isset($_POST['TransFromDate'])) + $_POST['TransFromDate'] = add_days(end_month($date), -user_transaction_days()); + start_row(); + date_cells(_("From:"), 'TransFromDate'); date_cells(_("To:"), 'TransToDate'); if ($dim >= 1) dimensions_list_cells(_("Dimension")." 1:", 'Dimension', null, true, " ", false, 1); @@ -56,8 +60,9 @@ function gl_inquiry_controls() dimensions_list_cells(_("Dimension")." 2:", 'Dimension2', null, true, " ", false, 2); check_cells(_("No zero values"), 'NoZero', null); check_cells(_("Only balances"), 'Balance', null); - + check_cells(_("Group totals only"), 'GroupTotalOnly', null); submit_cells('Show',_("Show"),'','', 'default'); + end_row(); end_table(); end_form(); } @@ -66,67 +71,95 @@ function gl_inquiry_controls() function display_trial_balance($type, $typename) { - global $path_to_root; - - global $k, $pdeb, $pcre, $cdeb, $ccre, $tdeb, $tcre, $pbal, $cbal, $tbal; - $printtitle = 0; //Flag for printing type name + global $path_to_root, $SysPrefs, + $k, $pdeb, $pcre, $cdeb, $ccre, $tdeb, $tcre, $pbal, $cbal, $tbal; + + $printtitle = 0; //Flag for printing type name $k = 0; - //$accounts = get_gl_accounts(); //Get Accounts directly under this group/type - $accounts = get_gl_accounts(null, null, $type); - - $pdeb = $pcre = $cdeb = $ccre = $tdeb = $tcre = $pbal = $cbal = $tbal = 0; - $begin = begin_fiscalyear(); + $accounts = get_gl_accounts(null, null, $type); + + $begin = get_fiscalyear_begin_for_date($_POST['TransFromDate']); if (date1_greater_date2($begin, $_POST['TransFromDate'])) $begin = $_POST['TransFromDate']; $begin = add_days($begin, -1); - + + $Apdeb=$pdeb; + $Apcre=$pcre; + $Acdeb=$cdeb; + $Accre=$ccre; + $Atdeb=$tdeb; + $Atcre=$tcre; + $Apbal=$pbal; + $Acbal=$cbal; + $Atbal=$tbal; + while ($account = db_fetch($accounts)) { - //Print Type Title if it has atleast one non-zero account + //Print Type Title if it has atleast one non-zero account if (!$printtitle) - { - start_row("class='inquirybg' style='font-weight:bold'"); - label_cell("Group - ".$type ." - ".$typename, "colspan=8"); - end_row(); - $printtitle = 1; - } - + { + if (!check_value('GroupTotalOnly')) + { + start_row("class='inquirybg' style='font-weight:bold'"); + label_cell(_("Group")." - ".$type ." - ".$typename, "colspan=8"); + end_row(); + } + $printtitle = 1; + } + + // FA doesn't really clear the closed year, therefore the brought forward balance includes all the transactions from the past, even though the balance is null. + // If we want to remove the balanced part for the past years, this option removes the common part from from the prev and tot figures. + if (@$SysPrefs->clear_trial_balance_opening) + { + $open = get_balance($account["account_code"], $_POST['Dimension'], $_POST['Dimension2'], $begin, $begin, false, true); + $offset = min($open['debit'], $open['credit']); + } else + $offset = 0; + $prev = get_balance($account["account_code"], $_POST['Dimension'], $_POST['Dimension2'], $begin, $_POST['TransFromDate'], false, false); $curr = get_balance($account["account_code"], $_POST['Dimension'], $_POST['Dimension2'], $_POST['TransFromDate'], $_POST['TransToDate'], true, true); $tot = get_balance($account["account_code"], $_POST['Dimension'], $_POST['Dimension2'], $begin, $_POST['TransToDate'], false, true); if (check_value("NoZero") && !$prev['balance'] && !$curr['balance'] && !$tot['balance']) continue; - alt_table_row_color($k); + if (!check_value('GroupTotalOnly')) + { + alt_table_row_color($k); - $url = "" . $account["account_code"] . ""; + $url = "" . $account["account_code"] . ""; - label_cell($url); - label_cell($account["account_name"]); + label_cell($url); + label_cell($account["account_name"]); + } if (check_value('Balance')) { - display_debit_or_credit_cells($prev['balance']); - display_debit_or_credit_cells($curr['balance']); - display_debit_or_credit_cells($tot['balance']); - + if (!check_value('GroupTotalOnly')) + { + display_debit_or_credit_cells($prev['balance']); + display_debit_or_credit_cells($curr['balance']); + display_debit_or_credit_cells($tot['balance']); + } } else { - amount_cell($prev['debit']); - amount_cell($prev['credit']); - amount_cell($curr['debit']); - amount_cell($curr['credit']); - amount_cell($tot['debit']); - amount_cell($tot['credit']); + if (!check_value('GroupTotalOnly')) + { + amount_cell($prev['debit']-$offset); + amount_cell($prev['credit']-$offset); + amount_cell($curr['debit']); + amount_cell($curr['credit']); + amount_cell($tot['debit']-$offset); + amount_cell($tot['credit']-$offset); + } $pdeb += $prev['debit']; $pcre += $prev['credit']; $cdeb += $curr['debit']; $ccre += $curr['credit']; $tdeb += $tot['debit']; $tcre += $tot['credit']; - } + } $pbal += $prev['balance']; $cbal += $curr['balance']; $tbal += $tot['balance']; @@ -141,12 +174,37 @@ function display_trial_balance($type, $typename) if (!$printtitle) { start_row("class='inquirybg' style='font-weight:bold'"); - label_cell("Group - ".$type ." - ".$typename, "colspan=8"); - end_row(); - $printtitle = 1; + label_cell(_("Group")." - ".$type ." - ".$typename, "colspan=8"); + end_row(); + $printtitle = 1; + } display_trial_balance($accounttype["id"], $accounttype["name"].' ('.$typename.')'); } + + start_row("class='inquirybg' style='font-weight:bold'"); + if (!check_value('GroupTotalOnly')) + label_cell(_("Total") ." - ".$typename, "colspan=2"); + else + label_cell(" - ".$typename, "colspan=2"); + + + if (!check_value('Balance')) + { + amount_cell($pdeb-$Apdeb ); + amount_cell($pcre-$Apcre); + amount_cell($cdeb-$Acdeb ); + amount_cell($ccre-$Accre ); + amount_cell($tdeb-$Atdeb ); + amount_cell($tcre-$Atcre); + } + else + { + display_debit_or_credit_cells($pbal-$Apbal); + display_debit_or_credit_cells($cbal-$Acbal ); + display_debit_or_credit_cells($tbal-$Atbal); + } + end_row(); } //---------------------------------------------------------------------------------------------------- @@ -161,8 +219,8 @@ if (isset($_POST['TransFromDate'])) display_error(_("The from date cannot be bigger than the fiscal year end.")); set_focus('TransFromDate'); return; - } -} + } +} div_start('balance_tbl'); if (!isset($_POST['Dimension'])) $_POST['Dimension'] = 0; @@ -192,7 +250,7 @@ $classresult = get_account_classes(false); while ($class = db_fetch($classresult)) { start_row("class='inquirybg' style='font-weight:bold'"); - label_cell("Class - ".$class['cid'] ." - ".$class['class_name'], "colspan=8"); + label_cell(_("Class")." - ".$class['cid'] ." - ".$class['class_name'], "colspan=8"); end_row(); //Get Account groups/types under this group/type with no parents @@ -203,36 +261,31 @@ while ($class = db_fetch($classresult)) } } - //$prev = get_balance(null, $begin, $_POST['TransFromDate'], false, false); - //$curr = get_balance(null, $_POST['TransFromDate'], $_POST['TransToDate'], true, true); - //$tot = get_balance(null, $begin, $_POST['TransToDate'], false, true); - if (!check_value('Balance')) - { - start_row("class='inquirybg' style='font-weight:bold'"); - label_cell(_("Total") ." - ".$_POST['TransToDate'], "colspan=2"); - amount_cell($pdeb); - amount_cell($pcre); - amount_cell($cdeb); - amount_cell($ccre); - amount_cell($tdeb); - amount_cell($tcre); - end_row(); - } +if (!check_value('Balance')) +{ start_row("class='inquirybg' style='font-weight:bold'"); - label_cell(_("Ending Balance") ." - ".$_POST['TransToDate'], "colspan=2"); - display_debit_or_credit_cells($pbal); - display_debit_or_credit_cells($cbal); - display_debit_or_credit_cells($tbal); + label_cell(_("Total") ." - ".$_POST['TransToDate'], "colspan=2"); + amount_cell($pdeb); + amount_cell($pcre); + amount_cell($cdeb); + amount_cell($ccre); + amount_cell($tdeb); + amount_cell($tcre); end_row(); - - end_table(1); - if (($pbal = round2($pbal, user_price_dec())) != 0) - //display_warning(_("The Opening Balance is not in balance, probably due to a non closed Previous Fiscalyear.")); - div_end(); +} +start_row("class='inquirybg' style='font-weight:bold'"); +label_cell(_("Ending Balance") ." - ".$_POST['TransToDate'], "colspan=2"); +display_debit_or_credit_cells($pbal); +display_debit_or_credit_cells($cbal); +display_debit_or_credit_cells($tbal); +end_row(); + +end_table(1); +if (($pbal = round2($pbal, user_price_dec())) != 0 && $_POST['Dimension'] == 0 && $_POST['Dimension2'] == 0) + display_warning(_("The Opening Balance is not in balance, probably due to a non closed Previous Fiscalyear.")); +div_end(); //---------------------------------------------------------------------------------------------------- end_page(); -?> -