function display_bom_items($selected_parent) { global $table_style; $result = get_bom($selected_parent); start_table("{$table_style} width=60%"); $th = array(tr("Code"), tr("Description"), tr("Location"), tr("Work Centre"), tr("Quantity"), tr("Units"), '', ''); table_header($th); $k = 0; while ($myrow = db_fetch($result)) { alt_table_row_color($k); label_cell($myrow["component"]); label_cell($myrow["description"]); label_cell($myrow["location_name"]); label_cell($myrow["WorkCentreDescription"]); label_cell(qty_format($myrow["quantity"])); label_cell($myrow["units"]); edit_link_cell(SID . "NewItem={$selected_parent}&selected_component=" . $myrow["id"]); delete_link_cell(SID . "delete=" . $myrow["id"] . "&stock_id=" . $_POST['stock_id']); end_row(); } //END WHILE LIST LOOP end_table(); }
function display_bom_items($selected_parent) { $result = get_bom($selected_parent); div_start('bom'); start_table(TABLESTYLE, "width=60%"); $th = array(_("Code"), _("Description"), _("Location"), _("Work Centre"), _("Quantity"), _("Units"), '', ''); table_header($th); $k = 0; while ($myrow = db_fetch($result)) { alt_table_row_color($k); label_cell($myrow["component"]); label_cell($myrow["description"]); label_cell($myrow["location_name"]); label_cell($myrow["WorkCentreDescription"]); qty_cell($myrow["quantity"], false, get_qty_dec($myrow["component"])); label_cell($myrow["units"]); edit_button_cell("Edit" . $myrow['id'], _("Edit")); delete_button_cell("Delete" . $myrow['id'], _("Delete")); end_row(); } //END WHILE LIST LOOP end_table(); div_end(); }
case OUTPUT_CSV: $filename .= '.csv'; $content_type = "text/csv; charset=" . get_csv_charset(); break; default: require_once "functions_ical.inc"; $filename .= '.ics'; $content_type = "application/ics; charset=" . get_charset() . "; name=\"{$filename}\""; break; } if (!$cli_mode) { header("Content-Type: {$content_type}"); header("Content-Disposition: attachment; filename=\"{$filename}\""); } if ($output_format == OUTPUT_CSV && $csv_bom) { echo get_bom(get_csv_charset()); } } // Upper part: The form. if ($output_form) { echo "<div class=\"screenonly\">\n"; echo "<form class=\"form_general\" id=\"report_form\" method=\"get\" action=\"report.php\">\n"; echo "<fieldset>\n"; echo "<legend>" . get_vocab("report_on") . "</legend>\n"; // Do the search criteria fieldset $search_var_keys = array('from_day', 'from_month', 'from_year', 'to_day', 'to_month', 'to_year', 'areamatch', 'roommatch', 'typematch', 'namematch', 'descrmatch', 'creatormatch', 'match_private', 'match_confirmed', 'match_approved', 'custom_fields'); $search_vars = array(); foreach ($search_var_keys as $var) { $search_vars[$var] = ${$var}; } generate_search_criteria($search_vars);
function can_process() { global $selected_id, $SysPrefs, $Refs; if (!isset($selected_id)) { if (!$Refs->is_valid($_POST['wo_ref'])) { display_error(_("You must enter a reference.")); set_focus('wo_ref'); return false; } if (!is_new_reference($_POST['wo_ref'], ST_WORKORDER)) { display_error(_("The entered reference is already in use.")); set_focus('wo_ref'); return false; } } if (!check_num('quantity', 0)) { display_error(_("The quantity entered is invalid or less than zero.")); set_focus('quantity'); return false; } if (!is_date($_POST['date_'])) { display_error(_("The date entered is in an invalid format.")); set_focus('date_'); return false; } elseif (!is_date_in_fiscalyear($_POST['date_'])) { display_error(_("The entered date is not in fiscal year.")); set_focus('date_'); return false; } // only check bom and quantites if quick assembly if (!($_POST['type'] == WO_ADVANCED)) { if (!has_bom($_POST['stock_id'])) { display_error(_("The selected item to manufacture does not have a bom.")); set_focus('stock_id'); return false; } if ($_POST['Labour'] == "") { $_POST['Labour'] = price_format(0); } if (!check_num('Labour', 0)) { display_error(_("The labour cost entered is invalid or less than zero.")); set_focus('Labour'); return false; } if ($_POST['Costs'] == "") { $_POST['Costs'] = price_format(0); } if (!check_num('Costs', 0)) { display_error(_("The cost entered is invalid or less than zero.")); set_focus('Costs'); return false; } if (!$SysPrefs->allow_negative_stock()) { if ($_POST['type'] == WO_ASSEMBLY) { // check bom if assembling $result = get_bom($_POST['stock_id']); while ($bom_item = db_fetch($result)) { if (has_stock_holding($bom_item["ResourceType"])) { $quantity = $bom_item["quantity"] * input_num('quantity'); if (check_negative_stock($bom_item["component"], -$quantity, $bom_item["loc_code"], $_POST['date_'])) { display_error(_("The work order cannot be processed because there is an insufficient quantity for component:") . " " . $bom_item["component"] . " - " . $bom_item["description"] . ". " . _("Location:") . " " . $bom_item["location_name"]); set_focus('quantity'); return false; } } } } elseif ($_POST['type'] == WO_UNASSEMBLY) { // if unassembling, check item to unassemble if (check_negative_stock($_POST['stock_id'], -input_num('quantity'), $_POST['StockLocation'], $_POST['date_'])) { display_error(_("The selected item cannot be unassembled because there is insufficient stock.")); return false; } } } } else { if (!is_date($_POST['RequDate'])) { set_focus('RequDate'); display_error(_("The date entered is in an invalid format.")); return false; } //elseif (!is_date_in_fiscalyear($_POST['RequDate'])) //{ // display_error(_("The entered date is not in fiscal year.")); // return false; //} if (isset($selected_id)) { $myrow = get_work_order($selected_id, true); if ($_POST['units_issued'] > input_num('quantity')) { set_focus('quantity'); display_error(_("The quantity cannot be changed to be less than the quantity already manufactured for this order.")); return false; } } } return true; }