MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
See the License here <http://www.gnu.org/licenses/gpl-3.0.html>.
***********************************************************************/
-$page_security = 4;
-$path_to_root="..";
+$page_security = 'SA_PURCHASEORDER';
+$path_to_root = "..";
include_once($path_to_root . "/purchasing/includes/po_class.inc");
include_once($path_to_root . "/includes/session.inc");
include_once($path_to_root . "/purchasing/includes/purchasing_ui.inc");
if (isset($_GET['ModifyOrderNumber']))
{
- page(_("Modify Purchase Order #") . $_GET['ModifyOrderNumber'], false, false, "", $js);
+ page(_($help_context = "Modify Purchase Order #") . $_GET['ModifyOrderNumber'], false, false, "", $js);
}
else
{
- page(_("Purchase Order Entry"), false, false, "", $js);
+ page(_($help_context = "Purchase Order Entry"), false, false, "", $js);
}
//---------------------------------------------------------------------------------------------------
if (isset($_GET['AddedID']))
{
$order_no = $_GET['AddedID'];
- $trans_type = systypes::po();
+ $trans_type = ST_PURCHORDER;
if (!isset($_GET['Updated']))
display_notification_centered(_("Purchase Order has been entered"));
else
display_notification_centered(_("Purchase Order has been updated") . " #$order_no");
- display_note(get_trans_view_str($trans_type, $order_no, _("&View this order")));
- echo '<br>';
- display_note(print_document_link($order_no, _("&Print This Order"), true, $trans_type));
+ display_note(get_trans_view_str($trans_type, $order_no, _("&View this order")), 0, 1);
+
+ display_note(print_document_link($order_no, _("&Print This Order"), true, $trans_type), 0, 1);
+
+ display_note(print_document_link($order_no, _("&Email This Order"), true, $trans_type, false, "", "", 1));
hyperlink_params($path_to_root . "/purchasing/po_receive_items.php", _("&Receive Items on this Purchase Order"), "PONumber=$order_no");
function check_data()
{
- if (!check_num('qty',0))
+ $dec = get_qty_dec($_POST['stock_id']);
+ $min = 1 / pow(10, $dec);
+ if (!check_num('qty',$min))
{
- display_error(_("The quantity of the order item must be numeric and not less than zero."));
+ $min = number_format2($min, $dec);
+ display_error(_("The quantity of the order item must be numeric and not less than ").$min);
set_focus('qty');
return false;
}
{
$allow_update = check_data();
- if ($allow_update &&
- ($_SESSION['PO']->line_items[$_POST['line_no']]->qty_inv > input_num('qty') ||
- $_SESSION['PO']->line_items[$_POST['line_no']]->qty_received > input_num('qty')))
+ if ($allow_update)
{
- display_error(_("You are attempting to make the quantity ordered a quantity less than has already been invoiced or received. This is prohibited.") .
- "<br>" . _("The quantity received can only be modified by entering a negative receipt and the quantity invoiced can only be reduced by entering a credit note against this item."));
- set_focus('qty');
- return;
- }
+ if ($_SESSION['PO']->line_items[$_POST['line_no']]->qty_inv > input_num('qty') ||
+ $_SESSION['PO']->line_items[$_POST['line_no']]->qty_received > input_num('qty'))
+ {
+ display_error(_("You are attempting to make the quantity ordered a quantity less than has already been invoiced or received. This is prohibited.") .
+ "<br>" . _("The quantity received can only be modified by entering a negative receipt and the quantity invoiced can only be reduced by entering a credit note against this item."));
+ set_focus('qty');
+ return;
+ }
- $_SESSION['PO']->update_order_item($_POST['line_no'], input_num('qty'), input_num('price'),
- $_POST['req_del_date']);
- unset_form_variables();
+ $_SESSION['PO']->update_order_item($_POST['line_no'], input_num('qty'), input_num('price'),
+ $_POST['req_del_date']);
+ unset_form_variables();
+ }
line_start_focus();
}
{
foreach ($_SESSION['PO']->line_items as $order_item)
{
-
/* do a loop round the items on the order to see that the item
is not already on this order */
- if (($order_item->stock_id == $_POST['stock_id']) &&
- ($order_item->Deleted == false))
+ if (($order_item->stock_id == $_POST['stock_id']))
{
- $allow_update = false;
- display_error(_("The selected item is already on this order."));
+ display_warning(_("The selected item is already on this order."));
}
} /* end of the foreach loop to look for pre-existing items of the same code */
}
if ($allow_update == true)
{
- $sql = "SELECT description, units, mb_flag
- FROM ".TB_PREF."stock_master WHERE stock_id = '". $_POST['stock_id'] . "'";
-
- $result = db_query($sql,"The stock details for " . $_POST['stock_id'] . " could not be retrieved");
+ $result = get_short_info($_POST['stock_id']);
if (db_num_rows($result) == 0)
{
function can_commit()
{
+ global $Refs;
+
if (!is_date($_POST['OrderDate']))
{
display_error(_("The entered order date is invalid."));
if (!$_SESSION['PO']->order_no)
{
- if (!references::is_valid(get_post('ref')))
+ if (!$Refs->is_valid(get_post('ref')))
{
display_error(_("There is no reference entered for this purchase order."));
set_focus('ref');
return false;
}
- if (!is_new_reference(get_post('ref'), systypes::po()))
+ if (!is_new_reference(get_post('ref'), ST_PURCHORDER))
{
display_error(_("The entered reference is already in use."));
set_focus('ref');