X-Git-Url: https://delta.frontaccounting.com/gitweb/?a=blobdiff_plain;f=sales%2Fcustomer_credit_invoice.php;h=e482386b971a7f9f14998fca9fd46cc814b75e6b;hb=efa2530a7c385a329c3fc76f4560b28ba97c3efe;hp=b19746120882e497d25503e7516ea0edb5395646;hpb=86e4d1627183fb4d97fe145a5dd33b43b03284ee;p=fa-stable.git diff --git a/sales/customer_credit_invoice.php b/sales/customer_credit_invoice.php index b1974612..e482386b 100644 --- a/sales/customer_credit_invoice.php +++ b/sales/customer_credit_invoice.php @@ -14,32 +14,31 @@ // Entry/Modify Credit Note for selected Sales Invoice // -$page_security = 3; +$page_security = 'SA_SALESCREDITINV'; $path_to_root = ".."; include_once($path_to_root . "/sales/includes/cart_class.inc"); include_once($path_to_root . "/includes/session.inc"); include_once($path_to_root . "/includes/data_checks.inc"); -include_once($path_to_root . "/includes/manufacturing.inc"); include_once($path_to_root . "/sales/includes/sales_db.inc"); include_once($path_to_root . "/sales/includes/sales_ui.inc"); include_once($path_to_root . "/reporting/includes/reporting.inc"); $js = ""; -if ($use_popup_windows) { +if ($SysPrefs->use_popup_windows) { $js .= get_js_open_window(900, 500); } -if ($use_date_picker) { +if (user_use_date_picker()) { $js .= get_js_date_picker(); } if (isset($_GET['ModifyCredit'])) { $_SESSION['page_title'] = sprintf(_("Modifying Credit Invoice # %d."), $_GET['ModifyCredit']); - $help_page_title =_("Modifying Credit Invoice"); + $help_context = "Modifying Credit Invoice"; processing_start(); } elseif (isset($_GET['InvoiceNumber'])) { - $_SESSION['page_title'] = _("Credit all or part of an Invoice"); + $_SESSION['page_title'] = _($help_context = "Credit all or part of an Invoice"); processing_start(); } page($_SESSION['page_title'], false, false, "", $js); @@ -48,64 +47,65 @@ page($_SESSION['page_title'], false, false, "", $js); if (isset($_GET['AddedID'])) { $credit_no = $_GET['AddedID']; - $trans_type = 11; + $trans_type = ST_CUSTCREDIT; display_notification_centered(_("Credit Note has been processed")); display_note(get_customer_trans_view_str($trans_type, $credit_no, _("&View This Credit Note")), 0, 0); - display_note(print_document_link($credit_no, _("&Print This Credit Note"), true, 11),1); + display_note(print_document_link($credit_no."-".$trans_type, _("&Print This Credit Note"), true, $trans_type),1); + display_note(print_document_link($credit_no."-".$trans_type, _("&Email This Credit Note"), true, $trans_type, false, "printlink", "", 1),1); display_note(get_gl_view_str($trans_type, $credit_no, _("View the GL &Journal Entries for this Credit Note")),1); + hyperlink_params("$path_to_root/admin/attachments.php", _("Add an Attachment"), "filterType=$trans_type&trans_no=$credit_no"); + display_footer_exit(); } elseif (isset($_GET['UpdatedID'])) { $credit_no = $_GET['UpdatedID']; - $trans_type = 11; + $trans_type = ST_CUSTCREDIT; display_notification_centered(_("Credit Note has been updated")); display_note(get_customer_trans_view_str($trans_type, $credit_no, _("&View This Credit Note")), 0, 0); - display_note(print_document_link($credit_no, _("&Print This Credit Note"), true, 11),1); + display_note(print_document_link($credit_no."-".$trans_type, _("&Print This Credit Note"), true, $trans_type),1); + display_note(print_document_link($credit_no."-".$trans_type, _("&Email This Credit Note"), true, $trans_type, false, "printlink", "", 1),1); display_note(get_gl_view_str($trans_type, $credit_no, _("View the GL &Journal Entries for this Credit Note")),1); display_footer_exit(); } else - check_edit_conflicts(); + check_edit_conflicts(get_post('cart_id')); //----------------------------------------------------------------------------- function can_process() { + global $Refs; + if (!is_date($_POST['CreditDate'])) { - display_error(_("The entered date is invalid."));; + display_error(_("The entered date is invalid.")); set_focus('CreditDate'); return false; } elseif (!is_date_in_fiscalyear($_POST['CreditDate'])) { - 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('CreditDate'); return false; } if ($_SESSION['Items']->trans_no==0) { - if (!references::is_valid($_POST['ref'])) { - display_error(_("You must enter a reference."));; + if (!$Refs->is_valid($_POST['ref'], ST_CUSTCREDIT)) { + display_error(_("You must enter a reference.")); set_focus('ref'); return false; } - if (!is_new_reference($_POST['ref'], 11)) { - display_error(_("The entered reference is already in use."));; - set_focus('ref'); - return false; - } } if (!check_num('ChargeFreightCost', 0)) { - display_error(_("The entered shipping cost is invalid or less than zero."));; + display_error(_("The entered shipping cost is invalid or less than zero.")); set_focus('ChargeFreightCost'); return false; } @@ -120,25 +120,12 @@ function can_process() if (isset($_GET['InvoiceNumber']) && $_GET['InvoiceNumber'] > 0) { - $ci = new Cart(10, $_GET['InvoiceNumber'], true); - - $ci->trans_type = 11; - $ci->src_docs = $ci->trans_no; - $ci->src_date = $ci->document_date; - $ci->trans_no = 0; - $ci->document_date = Today(); - $ci->reference = references::get_next(11); - - for ($line_no=0; $line_noline_items); $line_no++) { - $ci->line_items[$line_no]->qty_dispatched = '0'; - } - - $_SESSION['Items'] = $ci; + $_SESSION['Items'] = new Cart(ST_SALESINVOICE, $_GET['InvoiceNumber'], true); copy_from_cart(); } elseif ( isset($_GET['ModifyCredit']) && $_GET['ModifyCredit']>0) { - $_SESSION['Items'] = new Cart(11,$_GET['ModifyCredit']); + $_SESSION['Items'] = new Cart(ST_CUSTCREDIT, $_GET['ModifyCredit']); copy_from_cart(); } elseif (!processing_active()) { @@ -160,10 +147,10 @@ function check_quantities() $_SESSION['Items']->line_items[$line_no]->qty_dispatched = input_num('Line'.$line_no); } + else { + $ok = 0; + } } - else { - $ok = 0; - } if (isset($_POST['Line'.$line_no.'Desc'])) { $line_desc = $_POST['Line'.$line_no.'Desc']; @@ -182,7 +169,7 @@ function copy_to_cart() $cart->ship_via = $_POST['ShipperID']; $cart->freight_cost = input_num('ChargeFreightCost'); $cart->document_date = $_POST['CreditDate']; - $cart->Location = $_POST['Location']; + $cart->Location = (isset($_POST['Location']) ? $_POST['Location'] : ""); $cart->Comments = $_POST['CreditText']; if ($_SESSION['Items']->trans_no == 0) $cart->reference = $_POST['ref']; @@ -203,20 +190,26 @@ function copy_from_cart() //----------------------------------------------------------------------------- if (isset($_POST['ProcessCredit']) && can_process()) { + $new_credit = ($_SESSION['Items']->trans_no == 0); - $newcredit = ($_SESSION['Items']->trans_no == 0); - - if (!isset($_POST['WriteOffGLCode'])) + if (!isset($_POST['WriteOffGLCode'])) $_POST['WriteOffGLCode'] = 0; copy_to_cart(); - $credit_no = $_SESSION['Items']->write($_POST['WriteOffGLCode']); - - processing_end(); - if ($newcredit) { - meta_forward($_SERVER['PHP_SELF'], "AddedID=$credit_no"); - } else { - meta_forward($_SERVER['PHP_SELF'], "UpdatedID=$credit_no"); + if ($new_credit) + new_doc_date($_SESSION['Items']->document_date); + $credit_no = $_SESSION['Items']->write($_POST['WriteOffGLCode']); + if ($credit_no == -1) + { + display_error(_("The entered reference is already in use.")); + set_focus('ref'); + } elseif($credit_no) { + processing_end(); + if ($new_credit) { + meta_forward($_SERVER['PHP_SELF'], "AddedID=$credit_no"); + } else { + meta_forward($_SERVER['PHP_SELF'], "UpdatedID=$credit_no"); + } } } @@ -230,15 +223,13 @@ if (isset($_POST['Location'])) { function display_credit_items() { - global $table_style, $table_style2; - - start_form(false, true); + start_form(); hidden('cart_id'); - start_table("$table_style2 width=80%", 5); + start_table(TABLESTYLE2, "width='80%'", 5); echo ""; // outer table - start_table("$table_style width=100%"); + start_table(TABLESTYLE, "width='100%'"); start_row(); label_cells(_("Customer"), $_SESSION['Items']->customer_name, "class='tableheader2'"); label_cells(_("Branch"), get_branch_name($_SESSION['Items']->Branch), "class='tableheader2'"); @@ -246,37 +237,32 @@ function display_credit_items() end_row(); start_row(); -// if (!isset($_POST['ref'])) -// $_POST['ref'] = references::get_next(11); - if ($_SESSION['Items']->trans_no==0) { - ref_cells(_("Reference"), 'ref', '', null, "class='tableheader2'"); + ref_cells(_("Reference"), 'ref', '', null, "class='tableheader2'", false, ST_CUSTCREDIT, + array('customer' => $_SESSION['Items']->customer_id, + 'branch' => $_SESSION['Items']->Branch, + 'date' => get_post('CreditDate'))); } else { label_cells(_("Reference"), $_SESSION['Items']->reference, "class='tableheader2'"); } -// label_cells(_("Crediting Invoice"), get_customer_trans_view_str(10, $_SESSION['InvoiceToCredit']), "class='tableheader2'"); - label_cells(_("Crediting Invoice"), get_customer_trans_view_str(10, array_keys($_SESSION['Items']->src_docs)), "class='tableheader2'"); + label_cells(_("Crediting Invoice"), get_customer_trans_view_str(ST_SALESINVOICE, array_keys($_SESSION['Items']->src_docs)), "class='tableheader2'"); if (!isset($_POST['ShipperID'])) { $_POST['ShipperID'] = $_SESSION['Items']->ship_via; } label_cell(_("Shipping Company"), "class='tableheader2'"); shippers_list_cells(null, 'ShipperID', $_POST['ShipperID']); -// if (!isset($_POST['sales_type_id'])) -// $_POST['sales_type_id'] = $_SESSION['Items']->sales_type; -// label_cell(_("Sales Type"), "class='tableheader2'"); -// sales_types_list_cells(null, 'sales_type_id', $_POST['sales_type_id']); end_row(); end_table(); echo "";// outer table - start_table("$table_style width=100%"); + start_table(TABLESTYLE, "width='100%'"); label_row(_("Invoice Date"), $_SESSION['Items']->src_date, "class='tableheader2'"); - date_row(_("Credit Note Date"), 'CreditDate', '', null, 0, 0, 0, "class='tableheader2'"); + date_row(_("Credit Note Date"), 'CreditDate', '', $_SESSION['Items']->trans_no==0, 0, 0, 0, "class='tableheader2'"); end_table(); @@ -285,7 +271,7 @@ function display_credit_items() end_table(1); // outer table div_start('credit_items'); - start_table("$table_style width=80%"); + start_table(TABLESTYLE, "width='80%'"); $th = array(_("Item Code"), _("Item Description"), _("Invoiced Quantity"), _("Units"), _("Credit Quantity"), _("Price"), _("Discount %"), _("Total")); table_header($th); @@ -319,24 +305,24 @@ function display_credit_items() if (!check_num('ChargeFreightCost')) { $_POST['ChargeFreightCost'] = price_format($_SESSION['Items']->freight_cost); } - + $colspan = 7; start_row(); - label_cell(_("Credit Shipping Cost"), "colspan=7 align=right"); - amount_cells_ex(null, "ChargeFreightCost", 6, 8, $_POST['ChargeFreightCost']); + label_cell(_("Credit Shipping Cost"), "colspan=$colspan align=right"); + small_amount_cells(null, "ChargeFreightCost", price_format(get_post('ChargeFreightCost',0))); end_row(); $inv_items_total = $_SESSION['Items']->get_items_total_dispatch(); $display_sub_total = price_format($inv_items_total + input_num($_POST['ChargeFreightCost'])); - label_row(_("Sub-total"), $display_sub_total, "colspan=7 align=right", "align=right"); + label_row(_("Sub-total"), $display_sub_total, "colspan=$colspan align=right", "align=right"); $taxes = $_SESSION['Items']->get_taxes(input_num($_POST['ChargeFreightCost'])); - $tax_total = display_edit_tax_items($taxes, 7, $_SESSION['Items']->tax_included); + $tax_total = display_edit_tax_items($taxes, $colspan, $_SESSION['Items']->tax_included); $display_total = price_format(($inv_items_total + input_num('ChargeFreightCost') + $tax_total)); - label_row(_("Credit Note Total"), $display_total, "colspan=7 align=right", "align=right"); + label_row(_("Credit Note Total"), $display_total, "colspan=$colspan align=right", "align=right"); end_table(); div_end(); @@ -345,14 +331,14 @@ function display_credit_items() //----------------------------------------------------------------------------- function display_credit_options() { - global $table_style2, $Ajax; - echo "
"; + global $Ajax; + br(); -if (isset($_POST['_CreditType_update'])) - $Ajax->activate('options'); + if (isset($_POST['_CreditType_update'])) + $Ajax->activate('options'); - div_start('options'); - start_table("$table_style2"); + div_start('options'); + start_table(TABLESTYLE2); credit_type_list_row(_("Credit Note Type"), 'CreditType', null, true); @@ -378,6 +364,7 @@ if (isset($_POST['_CreditType_update'])) //----------------------------------------------------------------------------- if (get_post('Update')) { + copy_to_cart(); $Ajax->activate('credit_items'); } //----------------------------------------------------------------------------- @@ -388,7 +375,7 @@ display_credit_options(); echo "
"; submit('Update', _("Update"), true, _('Update credit value for quantities entered'), true); echo " "; -submit('ProcessCredit', _("Process Credit Note"), true, '', true); +submit('ProcessCredit', _("Process Credit Note"), true, '', 'default'); echo "
"; end_form(); @@ -396,4 +383,3 @@ end_form(); end_page(); -?>