X-Git-Url: https://delta.frontaccounting.com/gitweb/?a=blobdiff_plain;f=sales%2Fsales_order_entry.php;h=8834127d2abc47042c1c95e1652c1952e6606959;hb=3f3cfa578adbc2b71f4fd9c8d0f5536d26af43d8;hp=f44baf48ef1effd236ef06399c981db1cb73ff20;hpb=e1ddcdca793bc615768f1cea2c06e4182d771a0e;p=fa-stable.git diff --git a/sales/sales_order_entry.php b/sales/sales_order_entry.php index f44baf48..8834127d 100644 --- a/sales/sales_order_entry.php +++ b/sales/sales_order_entry.php @@ -34,11 +34,19 @@ set_page_security( @$_SESSION['Items']->trans_type, ST_CUSTDELIVERY => 'SA_SALESDELIVERY', ST_SALESINVOICE => 'SA_SALESINVOICE'), array( 'NewOrder' => 'SA_SALESORDER', - 'ModifySalesOrder' => 'SA_SALESORDER', + 'ModifyOrderNumber' => 'SA_SALESORDER', + 'AddedID' => 'SA_SALESORDER', + 'UpdatedID' => 'SA_SALESORDER', 'NewQuotation' => 'SA_SALESQUOTE', 'ModifyQuotationNumber' => 'SA_SALESQUOTE', + 'NewQuoteToSalesOrder' => 'SA_SALESQUOTE', + 'AddedQU' => 'SA_SALESQUOTE', + 'UpdatedQU' => 'SA_SALESQUOTE', 'NewDelivery' => 'SA_SALESDELIVERY', - 'NewInvoice' => 'SA_SALESINVOICE') + 'AddedDN' => 'SA_SALESDELIVERY', + 'NewInvoice' => 'SA_SALESINVOICE', + 'AddedDI' => 'SA_SALESINVOICE' + ) ); $js = ''; @@ -87,6 +95,12 @@ if (isset($_GET['NewDelivery']) && is_numeric($_GET['NewDelivery'])) { } page($_SESSION['page_title'], false, false, "", $js); + +if (isset($_GET['ModifyOrderNumber'])) + check_is_editable(ST_SALESORDER, $_GET['ModifyOrderNumber']); +elseif (isset($_GET['ModifyQuotationNumber'])) + check_is_editable(ST_SALESQUOTE, $_GET['ModifyQuotationNumber']); + //----------------------------------------------------------------------------- if (list_updated('branch_id')) { @@ -241,6 +255,7 @@ function copy_to_cart() $cart->document_date = $_POST['OrderDate']; $newpayment = false; + if (isset($_POST['payment']) && ($cart->payment != $_POST['payment'])) { $cart->payment = $_POST['payment']; $cart->payment_terms = get_payment_terms($_POST['payment']); @@ -250,8 +265,9 @@ function copy_to_cart() if ($newpayment) { $cart->due_date = $cart->document_date; $cart->phone = $cart->cust_ref = $cart->delivery_address = ''; - $cart->ship_via = 1; + $cart->ship_via = 0; $cart->deliver_to = ''; + $cart->prep_amount = 0; } } else { $cart->due_date = $_POST['delivery_date']; @@ -260,6 +276,8 @@ function copy_to_cart() $cart->delivery_address = $_POST['delivery_address']; $cart->phone = $_POST['phone']; $cart->ship_via = $_POST['ship_via']; + if (!$cart->trans_no || ($cart->trans_type == ST_SALESORDER && !$cart->is_started())) + $cart->prep_amount = input_num('prep_amount', 0); } $cart->Location = $_POST['Location']; $cart->freight_cost = input_num('freight_cost'); @@ -300,6 +318,7 @@ function copy_from_cart() $_POST['branch_id'] = $cart->Branch; $_POST['sales_type'] = $cart->sales_type; + $_POST['prep_amount'] = price_format($cart->prep_amount); // POS $_POST['payment'] = $cart->payment; if ($cart->trans_type!=ST_SALESORDER && $cart->trans_type!=ST_SALESQUOTE) { // 2008-11-12 Joe Hunt @@ -342,7 +361,7 @@ function can_process() { return false; } if ($_SESSION['Items']->trans_type!=ST_SALESORDER && $_SESSION['Items']->trans_type!=ST_SALESQUOTE && !is_date_in_fiscalyear($_POST['OrderDate'])) { - display_error(_("The entered date is not in fiscal year")); + display_error(_("The entered date is out of fiscal year or is closed for further data entry.")); set_focus('OrderDate'); return false; } @@ -352,11 +371,17 @@ function can_process() { return false; } if ($_SESSION['Items']->payment_terms['cash_sale'] == 0) { - if (strlen($_POST['deliver_to']) <= 1) { - display_error(_("You must enter the person or company to whom delivery should be made to.")); - set_focus('deliver_to'); - return false; - } + if (!$_SESSION['Items']->is_started() && ($_SESSION['Items']->payment_terms['days_before_due'] < 0) && ((input_num('prep_amount')<=0) || + input_num('prep_amount')>$_SESSION['Items']->get_trans_total())) { + display_error(_("Pre-payment required have to be positive and less than total amount.")); + set_focus('prep_amount'); + return false; + } + if (strlen($_POST['deliver_to']) <= 1) { + display_error(_("You must enter the person or company to whom delivery should be made to.")); + set_focus('deliver_to'); + return false; + } if ($_SESSION['Items']->trans_type != ST_SALESQUOTE && strlen($_POST['delivery_address']) <= 1) { @@ -696,8 +721,7 @@ if ($_SESSION['Items']->trans_type == ST_SALESINVOICE) { start_form(); hidden('cart_id'); -$customer_error = display_order_header($_SESSION['Items'], - ($_SESSION['Items']->any_already_delivered() == 0), $idate); +$customer_error = display_order_header($_SESSION['Items'], !$_SESSION['Items']->is_started(), $idate); if ($customer_error == "") { start_table(TABLESTYLE, "width=80%", 10); @@ -724,6 +748,7 @@ if ($customer_error == "") { } else { display_error($customer_error); } + end_form(); end_page(); ?> \ No newline at end of file