X-Git-Url: https://delta.frontaccounting.com/gitweb/?a=blobdiff_plain;f=manufacturing%2Fsearch_work_orders.php;h=1c407b6487eb81087249a0dcd10bdcd2280db564;hb=df660a601cabb0afe7f3246884f16207b9a0c314;hp=dd1813437c7faeaad21f106a4abc2d62e0259853;hpb=e48b0ca77a0e8066433b91781ac5d7d690e79d88;p=fa-stable.git
diff --git a/manufacturing/search_work_orders.php b/manufacturing/search_work_orders.php
index dd181343..1c407b64 100644
--- a/manufacturing/search_work_orders.php
+++ b/manufacturing/search_work_orders.php
@@ -1,24 +1,34 @@
.
+***********************************************************************/
+$page_security = 'SA_MANUFTRANSVIEW';
+$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 . "/manufacturing/includes/manufacturing_ui.inc");
$js = "";
-if ($use_popup_windows)
+if ($SysPrefs->use_popup_windows)
$js .= get_js_open_window(800, 500);
if (isset($_GET['outstanding_only']) && ($_GET['outstanding_only'] == true))
{
// curently outstanding simply means not closed
$outstanding_only = 1;
- page(_("Search Outstanding Work Orders"), false, false, "", $js);
+ page(_($help_context = "Search Outstanding Work Orders"), false, false, "", $js);
}
else
{
$outstanding_only = 0;
- page(_("Search Work Orders"), false, false, "", $js);
+ page(_($help_context = "Search Work Orders"), false, false, "", $js);
}
//-----------------------------------------------------------------------------------
// Ajax updates
@@ -36,10 +46,8 @@ if (get_post('SearchOrders'))
$Ajax->addDisable(true, 'SelectedStockItem', $disable);
if ($disable) {
-// $Ajax->addFocus(true, 'OrderNumber');
set_focus('OrderNumber');
} else
-// $Ajax->addFocus(true, 'StockLocation');
set_focus('StockLocation');
$Ajax->activate('orders_tbl');
@@ -52,14 +60,20 @@ if (isset($_GET["stock_id"]))
//--------------------------------------------------------------------------------------
-start_form(false, false, $_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(_("#:"), 'OrderId', '',null, '', true);
ref_cells(_("Reference:"), 'OrderNumber', '',null, '', true);
locations_list_cells(_("at Location:"), 'StockLocation', null, true);
+end_row();
+end_table();
+start_table(TABLESTYLE_NOBORDER);
+start_row();
+
check_cells( _("Only Overdue:"), 'OverdueOnly', null);
if ($outstanding_only==0)
@@ -67,127 +81,101 @@ if ($outstanding_only==0)
stock_manufactured_items_list_cells(_("for item:"), 'SelectedStockItem', null, true);
-submit_cells('SearchOrders', _("Search"),'',_('Select documents'), true);
+submit_cells('SearchOrders', _("Search"),'',_('Select documents'), 'default');
end_row();
end_table();
-end_form();
-
-$sql = "SELECT ".TB_PREF."workorders.*, ".TB_PREF."stock_master.description,".TB_PREF."locations.location_name
- FROM ".TB_PREF."workorders,".TB_PREF."stock_master,".TB_PREF."locations
- WHERE ".TB_PREF."stock_master.stock_id=".TB_PREF."workorders.stock_id AND
- ".TB_PREF."locations.loc_code=".TB_PREF."workorders.loc_code ";
-
-if (check_value('OpenOnly') || $outstanding_only != 0)
+//-----------------------------------------------------------------------------
+function check_overdue($row)
{
- $sql .= " AND ".TB_PREF."workorders.closed=0 ";
+ return (!$row["closed"]
+ && date_diff2(Today(), sql2date($row["required_by"]), "d") > 0);
}
-if (isset($_POST['StockLocation']) && $_POST['StockLocation'] != $all_items)
+function view_link($dummy, $order_no)
{
- $sql .= "AND ".TB_PREF."workorders.loc_code='" . $_POST['StockLocation'] . "' ";
+ return get_trans_view_str(ST_WORKORDER, $order_no);
}
-if (isset($_POST['OrderNumber']) && $_POST['OrderNumber'] != "")
+function view_stock($row)
{
- $sql .= "AND ".TB_PREF."workorders.wo_ref LIKE '%". $_POST['OrderNumber'] . "%'";
+ return view_stock_status($row["stock_id"], $row["description"], false);
}
-if (isset($_POST['SelectedStockItem']) && $_POST['SelectedStockItem'] != $all_items)
+function wo_type_name($dummy, $type)
{
- $sql .= "AND ".TB_PREF."workorders.stock_id='". $_POST['SelectedStockItem'] . "'";
+ global $wo_types_array;
+
+ return $wo_types_array[$type];
}
-if (check_value('OverdueOnly'))
+function edit_link($row)
{
- $Today = date2sql(Today());
-
- $sql .= "AND ".TB_PREF."workorders.required_by < '$Today' ";
+ return $row['closed'] ? ''._('Closed').'' :
+ trans_editor_link(ST_WORKORDER, $row["id"]);
}
-$sql .= " ORDER BY ".TB_PREF."workorders.required_by";
-
-$result = db_query($sql,"No orders were returned");
-
-div_start('orders_tbl');
-start_table("$table_style width=80%");
-$th = array(_("#"), _("Reference"), _("Type"), _("Location"), _("Item"),
- _("Required"), _("Manufactured"), _("Date"), _("Required By"),
- '', '', '', '', '');
-table_header($th);
+function release_link($row)
+{
+ return $row["closed"] ? '' :
+ ($row["released"]==0 ?
+ pager_link(_('Release'),
+ "/manufacturing/work_order_release.php?trans_no=" . $row["id"])
+ :
+ pager_link(_('Issue'),
+ "/manufacturing/work_order_issue.php?trans_no=" .$row["id"]));
+}
-$j = 1;
-$k = 0;
+function produce_link($row)
+{
+ return $row["closed"] || !$row["released"] ? '' :
+ pager_link(_('Produce'),
+ "/manufacturing/work_order_add_finished.php?trans_no=" .$row["id"]);
+}
-while ($myrow = db_fetch($result))
+function costs_link($row)
{
+ return $row["closed"] || !$row["released"] ? '' :
+ pager_link(_('Costs'),
+ "/manufacturing/work_order_costs.php?trans_no=" .$row["id"]);
+}
+function view_gl_link($row)
+{
+ return get_gl_view_str(ST_WORKORDER, $row['id']);
+}
- // check if it's an overdue work order
- if (!$myrow["closed"] && date_diff(Today(), sql2date($myrow["required_by"]), "d") > 0)
- {
- start_row("class='overduebg'");
- }
- else
- alt_table_row_color($k);
-
- $dec = get_qty_dec($myrow["stock_id"]);
- label_cell(get_trans_view_str(systypes::work_order(), $myrow["id"]));
- label_cell(get_trans_view_str(systypes::work_order(), $myrow["id"], $myrow["wo_ref"]));
- label_cell(wo_types::name($myrow["type"]));
- label_cell($myrow["location_name"]);
- view_stock_status_cell($myrow["stock_id"], $myrow["description"]);
- qty_cell($myrow["units_reqd"], false, $dec);
- qty_cell($myrow["units_issued"], false, $dec);
- label_cell(sql2date($myrow["date_"]));
- label_cell(sql2date($myrow["required_by"]));
-
- $l1 = $l2 = $l3 = $l4 = '';
- if ($myrow["closed"] == 0)
- {
- $modify_page = $path_to_root . "/manufacturing/work_order_entry.php?" . SID . "trans_no=" . $myrow["id"];
- $l1 = ""._('Edit').'';
- if ($myrow["released"] == 0)
- {
- $release_page = $path_to_root . "/manufacturing/work_order_release.php?" . SID . "trans_no=" . $myrow["id"];
- $l2 = ""._('Release').'';
- }
- else
- {
- $issue = $path_to_root . "/manufacturing/work_order_issue.php?" . SID . "trans_no=" .$myrow["id"];
- $add_finished = $path_to_root . "/manufacturing/work_order_add_finished.php?" . SID . "trans_no=" .$myrow["id"];
- $costs = $path_to_root . "/gl/gl_payment.php?NewPayment=1&PayType=" . payment_person_types::WorkOrder(). "&PayPerson=" .$myrow["id"];
- $l2 = "" . _("Issue") . "";
- $l3 = "" . _("Produce") . "";
- $l4 = "" . _("Costs") . "";
- }
- }
- else
- {
- $l1 = ""._('Closed')."";
- }
- label_cell($l1);
- label_cell($l2);
- label_cell($l3);
- label_cell($l4);
- label_cell(get_gl_view_str(systypes::work_order(), $myrow["id"]));
-
- end_row();
-
- $j++;
- If ($j == 12)
- {
- $j = 1;
- table_header($th);
- }
- //end of page full new headings if
+function dec_amount($row, $amount)
+{
+ return number_format2($amount, $row['decimals']);
}
-//end of while loop
-end_table(1);
-div_end();
-//---------------------------------------------------------------------------------
+$sql = get_sql_for_work_orders($outstanding_only, get_post('SelectedStockItem'), get_post('StockLocation'),
+ get_post('OrderId'), get_post('OrderNumber'), check_value('OverdueOnly'));
+
+$cols = array(
+ _("#") => array('fun'=>'view_link', 'ord'=>''),
+ _("Reference"), // viewlink 2 ?
+ _("Type") => array('fun'=>'wo_type_name'),
+ _("Location"),
+ _("Item") => array('fun'=>'view_stock', 'ord'=>''),
+ _("Required") => array('fun'=>'dec_amount', 'align'=>'right'),
+ _("Manufactured") => array('fun'=>'dec_amount', 'align'=>'right'),
+ _("Date") => array('name'=>'date_', 'type'=>'date', 'ord'=>'desc'),
+ _("Required By") => array('type'=>'date', 'ord'=>''),
+ array('insert'=>true, 'fun'=> 'edit_link'),
+ array('insert'=>true, 'fun'=> 'release_link'),
+ array('insert'=>true, 'fun'=> 'costs_link'),
+ array('insert'=>true, 'fun'=> 'produce_link'),
+ array('insert'=>true, 'fun'=> 'view_gl_link')
+);
+
+$table =& new_db_pager('orders_tbl', $sql, $cols);
+$table->set_marker('check_overdue', _("Marked orders are overdue."));
+
+$table->width = "90%";
+
+display_db_pager($table);
+end_form();
end_page();
-
-?>