6 include_once($path_to_root . "/includes/session.inc");
8 include_once($path_to_root . "/includes/date_functions.inc");
9 include_once($path_to_root . "/includes/ui.inc");
10 include_once($path_to_root . "/includes/data_checks.inc");
12 include_once($path_to_root . "/gl/includes/gl_db.inc");
16 $js = get_js_date_picker();
18 page(_("Trial Balance"), false, false, "", $js);
20 //----------------------------------------------------------------------------------------------------
23 function gl_inquiry_controls()
27 start_table("class='tablestyle_noborder'");
29 date_cells(_("From:"), 'TransFromDate', null, -30);
30 date_cells(_("To:"), 'TransToDate');
31 check_cells(_("No zero values"), 'NoZero', null);
33 submit_cells('Show',_("Show"));
38 //----------------------------------------------------------------------------------------------------
40 function get_balance($account, $from, $to, $from_incl=true, $to_incl=true) {
42 $sql = "SELECT SUM(amount) As TransactionSum FROM ".TB_PREF."gl_trans
43 WHERE account='$account'";
47 $from_date = date2sql($from);
49 $sql .= " AND tran_date >= '$from_date'";
51 $sql .= " AND tran_date > '$from_date'";
56 $to_date = date2sql($to);
58 $sql .= " AND tran_date <= '$to_date' ";
60 $sql .= " AND tran_date < '$to_date' ";
63 $result = db_query($sql,"No general ledger accounts were returned");
65 $row = db_fetch_row($result);
69 //----------------------------------------------------------------------------------------------------
71 function display_trial_balance()
73 global $table_style, $path_to_root;
75 start_table($table_style);
77 <td rowspan=2 class='tableheader'>" . _("Account") . "</td>
78 <td rowspan=2 class='tableheader'>" . _("Account Name") . "</td>
79 <td colspan=2 class='tableheader'>" . _("Brought Forward") . "</td>
80 <td colspan=2 class='tableheader'>" . _("This Period") . "</td>
81 <td colspan=2 class='tableheader'>" . _("Balance") . "</td>
83 <td class='tableheader'>" . _("Debit") . "</td>
84 <td class='tableheader'>" . _("Credit") . "</td>
85 <td class='tableheader'>" . _("Debit") . "</td>
86 <td class='tableheader'>" . _("Credit") . "</td>
87 <td class='tableheader'>" . _("Debit") . "</td>
88 <td class='tableheader'>" . _("Credit") . "</td>
95 $accounts = get_gl_accounts();
97 while ($account = db_fetch($accounts))
99 if (is_account_balancesheet($account["account_code"]))
103 $begin = begin_fiscalyear();
104 if ($_POST['TransFromDate'] < $begin)
105 $begin = $_POST['TransFromDate'];
106 $begin = add_days($begin, -1);
108 $prev_balance = get_balance($account["account_code"], $begin, $_POST['TransFromDate'], false, false);
110 $curr_balance = get_balance($account["account_code"], $_POST['TransFromDate'], $_POST['TransToDate']);
111 if (check_value("NoZero") && !$prev_balance && !$curr_balance)
113 alt_table_row_color($k);
115 $url = "<a href='$path_to_root/gl/inquiry/gl_account_inquiry.php?" . SID . "TransFromDate=" . $_POST["TransFromDate"] . "&TransToDate=" . $_POST["TransToDate"] . "&account=" . $account["account_code"] . "'>" . $account["account_code"] . "</a>";
118 label_cell($account["account_name"]);
120 display_debit_or_credit_cells($prev_balance);
121 display_debit_or_credit_cells($curr_balance);
122 display_debit_or_credit_cells($prev_balance + $curr_balance);
130 //----------------------------------------------------------------------------------------------------
132 gl_inquiry_controls();
134 display_trial_balance();
136 //----------------------------------------------------------------------------------------------------