X-Git-Url: https://delta.frontaccounting.com/gitweb/?a=blobdiff_plain;f=gl%2Fgl_budget.php;h=6c2ad64b3fc66b6e05833fcf1554957bb78f5ef1;hb=7e6e0807990447d2977b970c3a0fd28dc9250194;hp=988e6026cb36c5c0f3ba86ba7ed8cd72a3304e2f;hpb=37f4a02e0f4bea58e5b2097d583bf9395ffc515f;p=fa-stable.git diff --git a/gl/gl_budget.php b/gl/gl_budget.php index 988e6026..6c2ad64b 100644 --- a/gl/gl_budget.php +++ b/gl/gl_budget.php @@ -1,111 +1,76 @@ . +***********************************************************************/ +$page_security = 'SA_BUDGETENTRY'; +$path_to_root = ".."; +include_once($path_to_root . "/includes/session.inc"); + +add_js_file('budget.js'); + +page(_($help_context = "Budget Entry")); + +include_once($path_to_root . "/includes/ui.inc"); +include_once($path_to_root . "/gl/includes/gl_db.inc"); include_once($path_to_root . "/includes/data_checks.inc"); +include_once($path_to_root . "/admin/db/fiscalyears_db.inc"); -check_db_has_gl_account_groups(_("There are no account groups defined. Please define at least one account group before entering accounts.")); - -//------------------------------------------------------------------------------------- - -function exists_gl_budget($date_, $account, $dimension, $dimension2) -{ - $sql = "SELECT account FROM ".TB_PREF."budget_trans WHERE account='$account' AND tran_date='$date_' AND - dimension_id=$dimension AND dimension2_id=$dimension2"; - $result = db_query($sql, "Cannot retreive a gl transaction"); - - return (db_num_rows($result) > 0); -} -function add_update_gl_budget_trans($date_, $account, $dimension, $dimension2, $amount) -{ - $date = date2sql($date_); - - if (exists_gl_budget($date, $account, $dimension, $dimension2)) - $sql = "UPDATE ".TB_PREF."budget_trans SET amount=$amount WHERE account='$account' AND - dimension_id=$dimension AND dimension2_id=$dimension2 AND tran_date='$date'"; - else - $sql = "INSERT INTO ".TB_PREF."budget_trans (tran_date, - account, dimension_id, dimension2_id, amount) VALUES ('$date', - '$account', $dimension, $dimension2, $amount)"; - - db_query($sql, "The GL budget transaction could not be saved"); -} - -function delete_gl_budget_trans($date_, $account, $dimension, $dimension2) -{ - $date = date2sql($date_); - - $sql = "DELETE FROM ".TB_PREF."budget_trans WHERE account='$account' AND - dimension_id=$dimension AND dimension2_id=$dimension2 AND tran_date='$date'"; - db_query($sql, "The GL budget transaction could not be deleted"); -} - -function get_only_budget_trans_from_to($from_date, $to_date, $account, $dimension=0, $dimension2=0) -{ - - $from = date2sql($from_date); - $to = date2sql($to_date); - - $sql = "SELECT SUM(amount) FROM ".TB_PREF."budget_trans - WHERE account='$account' AND tran_date >= '$from' AND tran_date <= '$to' - AND dimension_id = $dimension AND dimension2_id = $dimension2"; - $result = db_query($sql,"No budget accounts were returned"); - - $row = db_fetch_row($result); - return $row[0]; -} +check_db_has_gl_account_groups(_("There are no account groups defined. Please define at least one account group before entering accounts.")); //------------------------------------------------------------------------------------- -if (isset($_POST['add']) || isset($_POST['delete'])) +if (isset($_POST['add']) || isset($_POST['delete'])) { begin_transaction(); - + for ($i = 0, $da = $_POST['begin']; date1_greater_date2($_POST['end'], $da); $i++) { if (isset($_POST['add'])) - add_update_gl_budget_trans($da, $_POST['account'], $_POST['dim1'], $_POST['dim2'], $_POST['amount'.$i]); - else + add_update_gl_budget_trans($da, $_POST['account'], $_POST['dim1'], $_POST['dim2'], input_num('amount'.$i)); + else delete_gl_budget_trans($da, $_POST['account'], $_POST['dim1'], $_POST['dim2']); $da = add_months($da, 1); } commit_transaction(); - + if (isset($_POST['add'])) display_notification_centered(_("The Budget has been saved.")); - else + else display_notification_centered(_("The Budget has been deleted.")); - - //meta_forward($_SERVER['PHP_SELF']); -} + + $Ajax->activate('budget_tbl'); +} +if (isset($_POST['submit']) || isset($_POST['update'])) + $Ajax->activate('budget_tbl'); //------------------------------------------------------------------------------------- start_form(); -if (db_has_gl_accounts()) +if (db_has_gl_accounts()) { $dim = get_company_pref('use_dimension'); - start_table($table_style2); + start_table(TABLESTYLE2); fiscalyears_list_row(_("Fiscal Year:"), 'fyear', null); gl_all_accounts_list_row(_("Account Code:"), 'account', null); - if (!isset($_POST['dim1'])) - $_POST['dim1'] = 0; - if (!isset($_POST['dim2'])) - $_POST['dim2'] = 0; + if (!isset($_POST['dim1'])) + $_POST['dim1'] = 0; + if (!isset($_POST['dim2'])) + $_POST['dim2'] = 0; if ($dim == 2) { dimensions_list_row(_("Dimension")." 1", 'dim1', $_POST['dim1'], true, null, false, 1); dimensions_list_row(_("Dimension")." 2", 'dim2', $_POST['dim2'], true, null, false, 2); } - else if ($dim == 1) + elseif ($dim == 1) { dimensions_list_row(_("Dimension"), 'dim1', $_POST['dim1'], true, null, false, 1); hidden('dim2', 0); @@ -115,44 +80,43 @@ if (db_has_gl_accounts()) hidden('dim1', 0); hidden('dim2', 0); } - submit_row('submit', _("Get")); + submit_row('submit', _("Get"), true, '', '', true); end_table(1); - start_table($table_style2); - $showdims = (($dim == 1 && $_POST['dim1'] == 0) || + div_start('budget_tbl'); + start_table(TABLESTYLE2); + $showdims = (($dim == 1 && $_POST['dim1'] == 0) || ($dim == 2 && $_POST['dim1'] == 0 && $_POST['dim2'] == 0)); - if ($showdims) + if ($showdims) $th = array(_("Period"), _("Amount"), _("Dim. incl."), _("Last Year")); - else + else $th = array(_("Period"), _("Amount"), _("Last Year")); - table_header($th); + table_header($th); $year = $_POST['fyear']; - $sql = "SELECT * FROM ".TB_PREF."fiscal_year WHERE id=$year"; - - $result = db_query($sql, "could not get current fiscal year"); - - $fyear = db_fetch($result); - $begin = sql2date($fyear['begin']); - $end = sql2date($fyear['end']); - hidden('begin', $begin); - hidden('end', $end); + if (get_post('update') == '') { + $fyear = get_fiscalyear($year); + $_POST['begin'] = sql2date($fyear['begin']); + $_POST['end'] = sql2date($fyear['end']); + } + hidden('begin'); + hidden('end'); $total = $btotal = $ltotal = 0; - for ($i = 0, $date_ = $begin; date1_greater_date2($end, $date_); $i++) + for ($i = 0, $date_ = $_POST['begin']; date1_greater_date2($_POST['end'], $date_); $i++) { start_row(); - $_POST['amount'.$i] = get_only_budget_trans_from_to($date_, $date_, $_POST['account'], $_POST['dim1'], $_POST['dim2']); - - label_cell($date_); - if (!isset($_POST['amount'.$i])) - $_POST['amount'.$i] = "0"; - text_cells(null, 'amount'.$i, null, 15); + if (get_post('update') == '') + $_POST['amount'.$i] = number_format2(get_only_budget_trans_from_to( + $date_, $date_, $_POST['account'], $_POST['dim1'], $_POST['dim2']), 0); + + label_cell($date_); + amount_cells(null, 'amount'.$i, null, 15, null, 0); if ($showdims) { $d = get_budget_trans_from_to($date_, $date_, $_POST['account'], $_POST['dim1'], $_POST['dim2']); label_cell(number_format2($d, 0), "nowrap align=right"); $btotal += $d; - } + } $lamount = get_gl_trans_from_to(add_years($date_, -1), add_years(end_month($date_), -1), $_POST['account'], $_POST['dim1'], $_POST['dim2']); - $total += $_POST['amount'.$i]; + $total += input_num('amount'.$i); $ltotal += $lamount; label_cell(number_format2($lamount, 0), "nowrap align=right"); $date_ = add_months($date_, 1); @@ -160,17 +124,18 @@ if (db_has_gl_accounts()) } start_row(); label_cell(""._("Total").""); - label_cell("".number_format2($total, 0).""); + label_cell(number_format2($total, 0), 'align=right style="font-weight:bold"', 'Total'); if ($showdims) label_cell("".number_format2($btotal, 0)."", "nowrap align=right"); label_cell("".number_format2($ltotal, 0)."", "nowrap align=right"); end_row(); end_table(1); - submit_center_first('add', _("Save")); - submit_center_last('delete', _("Delete")); -} + div_end(); + submit_center_first('update', _("Update"), '', null); + submit('add', _("Save"), true, '', 'default'); + submit_center_last('delete', _("Delete"), '', true); +} end_form(); - + end_page(); - -?> +