X-Git-Url: https://delta.frontaccounting.com/gitweb/?a=blobdiff_plain;f=gl%2Finquiry%2Fgl_account_inquiry.php;h=bc755e14d5d871dc5695dcfae18768825372e64a;hb=6bcd87642330092910f5d6977845a76ac59350ac;hp=132d23cce9cbecd8a5e63b45600a2a6ae31cfae6;hpb=4d4371fb200bb27fd6b680ebd2d1aaa450a0be7e;p=fa-stable.git diff --git a/gl/inquiry/gl_account_inquiry.php b/gl/inquiry/gl_account_inquiry.php index 132d23cc..bc755e14 100644 --- a/gl/inquiry/gl_account_inquiry.php +++ b/gl/inquiry/gl_account_inquiry.php @@ -9,11 +9,13 @@ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the License here . ***********************************************************************/ -$page_security = 8; -$path_to_root="../.."; +$page_security = 'SA_GLTRANSVIEW'; +$path_to_root = "../.."; include_once($path_to_root . "/includes/session.inc"); +include($path_to_root . "/includes/db_pager.inc"); +include_once($path_to_root . "/admin/db/fiscalyears_db.inc"); include_once($path_to_root . "/includes/date_functions.inc"); include_once($path_to_root . "/includes/ui.inc"); include_once($path_to_root . "/includes/data_checks.inc"); @@ -22,12 +24,12 @@ include_once($path_to_root . "/gl/includes/gl_db.inc"); $js = ''; set_focus('account'); -if ($use_popup_windows) +if ($SysPrefs->use_popup_windows) $js .= get_js_open_window(800, 500); -if ($use_date_picker) +if (user_use_date_picker()) $js .= get_js_date_picker(); -page(_("General Ledger Account Inquiry"), false, false, '', $js); +page(_($help_context = "General Ledger Inquiry"), false, false, '', $js); //---------------------------------------------------------------------------------------------------- // Ajax updates @@ -47,34 +49,46 @@ if (isset($_GET["Dimension"])) $_POST["Dimension"] = $_GET["Dimension"]; if (isset($_GET["Dimension2"])) $_POST["Dimension2"] = $_GET["Dimension2"]; +if (isset($_GET["amount_min"])) + $_POST["amount_min"] = $_GET["amount_min"]; +if (isset($_GET["amount_max"])) + $_POST["amount_max"] = $_GET["amount_max"]; + +if (!isset($_POST["amount_min"])) + $_POST["amount_min"] = price_format(0); +if (!isset($_POST["amount_max"])) + $_POST["amount_max"] = price_format(0); //---------------------------------------------------------------------------------------------------- function gl_inquiry_controls() { - global $table_style2; - $dim = get_company_pref('use_dimension'); start_form(); - //start_table($table_style2); - start_table("class='tablestyle_noborder'"); + start_table(TABLESTYLE_NOBORDER); start_row(); - - gl_all_accounts_list_cells(_("Account:"), 'account', null); - - date_cells(_("from:"), 'TransFromDate', '', null, -30); + gl_all_accounts_list_cells(_("Account:"), 'account', null, false, false, _("All Accounts")); + date_cells(_("from:"), 'TransFromDate', '', null, -user_transaction_days()); date_cells(_("to:"), 'TransToDate'); - submit_cells('Show',_("Show"),'','', 'default'); - end_row(); + end_table(); + start_table(TABLESTYLE_NOBORDER); + start_row(); if ($dim >= 1) - dimensions_list_row(_("Dimension")." 1", 'Dimension', null, true, " ", false, 1); + dimensions_list_cells(_("Dimension")." 1:", 'Dimension', null, true, " ", false, 1); if ($dim > 1) - dimensions_list_row(_("Dimension")." 2", 'Dimension2', null, true, " ", false, 2); + dimensions_list_cells(_("Dimension")." 2:", 'Dimension2', null, true, " ", false, 2); + + ref_cells(_("Memo:"), 'Memo', '',null, _('Enter memo fragment or leave empty')); + small_amount_cells(_("Amount min:"), 'amount_min', null, " "); + small_amount_cells(_("Amount max:"), 'amount_max', null, " "); + submit_cells('Show',_("Show"),'','', 'default'); + end_row(); end_table(); + echo '
'; end_form(); } @@ -82,11 +96,12 @@ function gl_inquiry_controls() function show_results() { - global $path_to_root, $table_style; + global $path_to_root, $systypes_array; + + if (!isset($_POST["account"])) + $_POST["account"] = null; - if (!isset($_POST["account"]) || $_POST["account"] == "") - return; - $act_name = get_gl_account_name($_POST["account"]); + $act_name = $_POST["account"] ? get_gl_account_name($_POST["account"]) : ""; $dim = get_company_pref('use_dimension'); /*Now get the transactions */ @@ -95,43 +110,64 @@ function show_results() if (!isset($_POST['Dimension2'])) $_POST['Dimension2'] = 0; $result = get_gl_transactions($_POST['TransFromDate'], $_POST['TransToDate'], -1, - $_POST["account"], $_POST['Dimension'], $_POST['Dimension2']); - - $colspan = ($dim == 2 ? "6" : ($dim == 1 ? "5" : "4")); - div_start('trans_tbl'); - //echo "\nDimension =". $_POST['Dimension']; - display_heading($_POST["account"]. "   ".$act_name); - - start_table($table_style); + $_POST["account"], $_POST['Dimension'], $_POST['Dimension2'], null, + input_num('amount_min'), input_num('amount_max'), null, null, $_POST['Memo']); + + $colspan = ($dim == 2 ? "7" : ($dim == 1 ? "6" : "5")); + + if ($_POST["account"] != null) + display_heading($_POST["account"]. "   ".$act_name); + + // Only show balances if an account is specified AND we're not filtering by amounts + $show_balances = $_POST["account"] != null && + input_num("amount_min") == 0 && + input_num("amount_max") == 0; + + start_table(TABLESTYLE); + + $first_cols = array(_("Type"), _("#"), _("Reference"), _("Date")); + + if ($_POST["account"] == null) + $account_col = array(_("Account")); + else + $account_col = array(); + if ($dim == 2) - $th = array(_("Type"), _("#"), _("Date"), _("Dimension")." 1", _("Dimension")." 2", - _("Person/Item"), _("Debit"), _("Credit"), _("Balance"), _("Memo")); - else if ($dim == 1) - $th = array(_("Type"), _("#"), _("Date"), _("Dimension"), - _("Person/Item"), _("Debit"), _("Credit"), _("Balance"), _("Memo")); + $dim_cols = array(_("Dimension")." 1", _("Dimension")." 2"); + elseif ($dim == 1) + $dim_cols = array(_("Dimension")); else - $th = array(_("Type"), _("#"), _("Date"), - _("Person/Item"), _("Debit"), _("Credit"), _("Balance"), _("Memo")); + $dim_cols = array(); + + if ($show_balances) + $remaining_cols = array(_("Person/Item"), _("Debit"), _("Credit"), _("Balance"), _("Memo"), ""); + else + $remaining_cols = array(_("Person/Item"), _("Debit"), _("Credit"), _("Memo"), ""); + + $th = array_merge($first_cols, $account_col, $dim_cols, $remaining_cols); + table_header($th); - if (is_account_balancesheet($_POST["account"])) + if ($_POST["account"] != null && is_account_balancesheet($_POST["account"])) $begin = ""; else { - $begin = begin_fiscalyear(); + $begin = get_fiscalyear_begin_for_date($_POST['TransFromDate']); if (date1_greater_date2($begin, $_POST['TransFromDate'])) $begin = $_POST['TransFromDate']; $begin = add_days($begin, -1); } - $bfw = get_gl_balance_from_to($begin, $_POST['TransFromDate'], $_POST["account"], $_POST['Dimension'], $_POST['Dimension2']); - - start_row("class='inquirybg'"); - label_cell(""._("Opening Balance")." - ".$_POST['TransFromDate']."", "colspan=$colspan"); - display_debit_or_credit_cells($bfw); - label_cell(""); - label_cell(""); - end_row(); - //$running_total =0; + $bfw = 0; + if ($show_balances) { + $bfw = get_gl_balance_from_to($begin, $_POST['TransFromDate'], $_POST["account"], $_POST['Dimension'], $_POST['Dimension2']); + start_row("class='inquirybg'"); + label_cell(""._("Opening Balance")." - ".$_POST['TransFromDate']."", "colspan=$colspan"); + display_debit_or_credit_cells($bfw, true); + label_cell(""); + label_cell(""); + end_row(); + } + $running_total = $bfw; $j = 1; $k = 0; //row colour counter @@ -145,17 +181,29 @@ function show_results() $trandate = sql2date($myrow["tran_date"]); - label_cell(systypes::name($myrow["type"])); + label_cell($systypes_array[$myrow["type"]]); label_cell(get_gl_view_str($myrow["type"], $myrow["type_no"], $myrow["type_no"], true)); + label_cell(get_trans_view_str($myrow["type"],$myrow["type_no"],$myrow['reference'])); label_cell($trandate); + + if ($_POST["account"] == null) + label_cell($myrow["account"] . ' ' . get_gl_account_name($myrow["account"])); + if ($dim >= 1) label_cell(get_dimension_string($myrow['dimension_id'], true)); if ($dim > 1) label_cell(get_dimension_string($myrow['dimension2_id'], true)); - label_cell(payment_person_types::person_name($myrow["person_type_id"],$myrow["person_id"])); + label_cell(payment_person_name($myrow["person_type_id"],$myrow["person_id"])); display_debit_or_credit_cells($myrow["amount"]); - amount_cell($running_total); + if ($show_balances) + amount_cell($running_total); + if ($myrow['memo_'] == "") + $myrow['memo_'] = get_comments_string($myrow['type'], $myrow['type_no']); label_cell($myrow['memo_']); + if ($myrow["type"] == ST_JOURNAL) + echo "" . trans_editor_link( $myrow["type"], $myrow["type_no"]) . ""; + else + label_cell(""); end_row(); $j++; @@ -167,27 +215,33 @@ function show_results() } //end of while loop - start_row("class='inquirybg'"); - label_cell("" . _("Ending Balance") ." - ".$_POST['TransToDate']. "", "colspan=$colspan"); - display_debit_or_credit_cells($running_total); - label_cell(""); - label_cell(""); - end_row(); + if ($show_balances) { + start_row("class='inquirybg'"); + label_cell("" . _("Ending Balance") ." - ".$_POST['TransToDate']. "", "colspan=$colspan"); + display_debit_or_credit_cells($running_total, true); + label_cell(""); + label_cell(""); + end_row(); + } end_table(2); if (db_num_rows($result) == 0) - display_note(_("No general ledger transactions have been created for this account on the selected dates."), 0, 1); - div_end(); + display_note(_("No general ledger transactions have been created for the specified criteria."), 0, 1); + } //---------------------------------------------------------------------------------------------------- gl_inquiry_controls(); -show_results(); +div_start('trans_tbl'); + +if (get_post('Show') || get_post('account')) + show_results(); + +div_end(); //---------------------------------------------------------------------------------------------------- end_page(); -?>