X-Git-Url: https://delta.frontaccounting.com/gitweb/?a=blobdiff_plain;f=dimensions%2Finquiry%2Fsearch_dimensions.php;h=6d23976fb9cb008a7f4c0de8dd0b99d399aca266;hb=92516cf782e07af078fab627e35c75c822702ab2;hp=4a446c14f11f2575699efa169a16b258c8e5dca6;hpb=55064417d04c3f0edd3c92ee94cc33c354c1b352;p=fa-stable.git diff --git a/dimensions/inquiry/search_dimensions.php b/dimensions/inquiry/search_dimensions.php index 4a446c14..6d23976f 100644 --- a/dimensions/inquiry/search_dimensions.php +++ b/dimensions/inquiry/search_dimensions.php @@ -1,27 +1,60 @@ . +***********************************************************************/ +$page_security = 'SA_DIMTRANSVIEW'; $path_to_root="../.."; +include($path_to_root . "/includes/db_pager.inc"); include_once($path_to_root . "/includes/session.inc"); include_once($path_to_root . "/includes/date_functions.inc"); include_once($path_to_root . "/includes/ui.inc"); $js = ""; -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(); -if (isset($_GET['outstanding_only']) && $_GET['outstanding_only']) +if (isset($_GET['outstanding_only']) && $_GET['outstanding_only']) { $outstanding_only = 1; - page(_("Search Outstanding Dimensionss"), false, false, "", $js); -} -else + page(_($help_context = "Search Outstanding Dimensions"), false, false, "", $js); +} +else { $outstanding_only = 0; - page(_("Search Dimensions"), false, false, "", $js); + page(_($help_context = "Search Dimensions"), false, false, "", $js); +} +//----------------------------------------------------------------------------------- +// Ajax updates +// +if (get_post('SearchOrders')) +{ + $Ajax->activate('dim_table'); +} elseif (get_post('_OrderNumber_changed')) +{ + $disable = get_post('OrderNumber') !== ''; + + $Ajax->addDisable(true, 'FromDate', $disable); + $Ajax->addDisable(true, 'ToDate', $disable); + $Ajax->addDisable(true, 'type_', $disable); + $Ajax->addDisable(true, 'OverdueOnly', $disable); + $Ajax->addDisable(true, 'OpenOnly', $disable); + + if ($disable) { + set_focus('OrderNumber'); + } else + set_focus('type_'); + + $Ajax->activate('dim_table'); } //-------------------------------------------------------------------------------------- @@ -31,138 +64,85 @@ if (isset($_GET["stock_id"])) //-------------------------------------------------------------------------------------- -start_form(false, true, $_SERVER['PHP_SELF'] ."?outstanding_only=" . $outstanding_only . SID); +start_form(false, false, $_SERVER['PHP_SELF'] ."?outstanding_only=$outstanding_only"); -start_table("class='tablestyle_noborder'"); +start_table(TABLESTYLE_NOBORDER); start_row(); -ref_cells(_("Reference:"), 'OrderNumber', null); +ref_cells(_("Reference:"), 'OrderNumber', '',null, '', true); -number_list_cells(_("Type"), 'type_', null, 0, 2); -date_cells(_("From:"), 'FromDate', null, 0, 0, -5); +number_list_cells(_("Type"), 'type_', null, 1, 2, _("All")); +date_cells(_("From:"), 'FromDate', '', null, 0, 0, -5); date_cells(_("To:"), 'ToDate'); check_cells( _("Only Overdue:"), 'OverdueOnly', null); -if (!$outstanding_only) +if (!$outstanding_only) { check_cells( _("Only Open:"), 'OpenOnly', null); -} +} else $_POST['OpenOnly'] = 1; -submit_cells('SearchOrders', _("Search")); +submit_cells('SearchOrders', _("Search"), '', '', 'default'); end_row(); end_table(); -end_form(); - $dim = get_company_pref('use_dimension'); -$sql = "SELECT * FROM ".TB_PREF."dimensions WHERE id > 0"; - -if ($dim == 1) - $sql .= " AND type_=1"; - -if (isset($_POST['OpenOnly'])) +function view_link($row) { - $sql .= " AND closed=0"; + return get_dimensions_trans_view_str(ST_DIMENSION, $row["id"]); } -if (isset($_POST['type_']) && ($_POST['type_'] > 0)) +function sum_dimension($row) { - $sql .= " AND type_=" . $_POST['type_']; + return get_dimension_balance($row['id'], $_POST['FromDate'], $_POST['ToDate']); } -if (isset($_POST['OrderNumber']) && $_POST['OrderNumber'] != "") +function is_closed($row) { - $sql .= " AND reference LIKE '%". $_POST['OrderNumber'] . "%'"; + return $row['closed'] ? _('Yes') : _('No'); } -if (isset($_POST['OverdueOnly'])) +function is_overdue($row) { - $today = date2sql(Today()); - - $sql .= " AND due_date < '$today' "; + return date_diff2(Today(), sql2date($row["due_date"]), "d") > 0; } -$sql .= " AND date_ >= '" . date2sql($_POST['FromDate']) . "' - AND date_ <= '" . date2sql($_POST['ToDate']) . "'"; - -$sql .= " ORDER BY due_date"; - -$result = db_query($sql,"could not query dimensions"); - -start_table("$table_style width=80%"); - -if (!$outstanding_only) - $th = array(_("#"), _("Reference"), _("Name"), _("Type"), _("Date"), - _("Due Date"), _("Closed"), _("Balance")); -else - $th = array(_("#"), _("Reference"), _("Name"), _("Type"), _("Date"), - _("Due Date"), _("Balance")); -table_header($th); -$j = 1; -$k = 0; - -while ($myrow = db_fetch($result)) +function edit_link($row) { - $sql = "SELECT SUM(amount) FROM ".TB_PREF."gl_trans WHERE tran_date >= '" . - date2sql($_POST['FromDate']) . "' AND - tran_date <= '" . date2sql($_POST['ToDate']) . "' AND dimension_id = " . - $myrow['id']; - $res = db_query($sql, "Transactions could not be calculated"); - $row = db_fetch_row($res); - - if ($k == 1) - { - $row_text = "class='oddrow'"; - $k = 0; - } - else - { - $row_text = "class='evenrow'"; - $k++; - } - - // check if it's an overdue work order - if (date_diff(Today(), sql2date($myrow["due_date"]), "d") > 0) - { - $row_text = "class='overduebg'"; - } - - start_row($row_text); - - $mpage = $path_to_root . "/dimensions/dimension_entry.php?" . SID . "trans_no=" . $myrow["id"]; - - label_cell(get_dimensions_trans_view_str(systypes::dimension(), $myrow["id"])); - label_cell(get_dimensions_trans_view_str(systypes::dimension(), $myrow["id"], $myrow["reference"])); - label_cell($myrow["name"]); - label_cell($myrow["type_"]); - label_cell(sql2date($myrow["date_"])); - label_cell(sql2date($myrow["due_date"])); - if (!$outstanding_only) - label_cell(($myrow["closed"] ? _("Yes") : _("No"))); - amount_cell($row[0]); - if ($myrow["closed"] == 0) - label_cell("" . _("Edit") . ""); - end_row(); - - $j++; - If ($j == 12) - { - $j = 1; - table_header($th); - } - //end of page full new headings if + return pager_link(_("Edit"), + "/dimensions/dimension_entry.php?trans_no=" . $row["id"], ICON_EDIT); +} + +$sql = get_sql_for_search_dimensions($dim, $_POST['FromDate'], $_POST['ToDate'], + $_POST['OrderNumber'], $_POST['type_'], check_value('OpenOnly'), check_value('OverdueOnly')); + +$cols = array( + _("#") => array('fun'=>'view_link'), + _("Reference"), + _("Name"), + _("Type"), + _("Date") =>'date', + _("Due Date") => array('name'=>'due_date', 'type'=>'date', 'ord'=>'asc'), + _("Closed") => array('fun'=>'is_closed'), + _("Balance") => array('type'=>'amount', 'insert'=>true, 'fun'=>'sum_dimension'), + array('insert'=>true, 'fun'=>'edit_link') +); + +if ($outstanding_only) { + $cols[_("Closed")] = 'skip'; } -//end of while loop -end_table(1); +$table =& new_db_pager('dim_tbl', $sql, $cols); +$table->set_marker('is_overdue', _("Marked dimensions are overdue.")); + +$table->width = "80%"; -//--------------------------------------------------------------------------------- +display_db_pager($table); +end_form(); end_page(); -?>