From: Joe Hunt Date: Thu, 7 Jan 2010 14:24:55 +0000 (+0000) Subject: Changed to let the $doctypes in documents follow the types in types.inc X-Git-Url: https://delta.frontaccounting.com/gitweb/?a=commitdiff_plain;h=3e40cf26def795db3a183f19d4b513b63d8b9769;p=textcart.git Changed to let the $doctypes in documents follow the types in types.inc New document, Remittance, to print payment allocations to suppliers Also print/email links from Supplier Payment and Supplier Inquiry. --- diff --git a/CHANGELOG.txt b/CHANGELOG.txt index de25f85..5461f6d 100644 --- a/CHANGELOG.txt +++ b/CHANGELOG.txt @@ -19,6 +19,26 @@ Legend: ! -> Note $ -> Affected files +07-Jan-2010 Joe Hunt +! Changed to let the $doctypes in documents follow the types in types.inc ++ New document, Remittance, to print payment allocations to suppliers + Also print/email links from Supplier Payment and Supplier Inquiry. +$ /purchasing/supplier_payment.php + /purchasing/inquiry/supplier_inquiry.php + /reporting/rep108.php + /reporting/rep109.php + /reporting/rep110.php + /reporting/rep111.php + /reporting/rep209.php + /reporting/rep210.php (New file) + /reporting/reports_main.php + /reporting/includes/doctext.inc + /reporting/includes/doctext2.inc + /reporting/includes/header2.inc + /reporting/includes/pdf_report.inc + /reporting/includes/reporting.inc + /reporting/includes/reports_classes.inc + 06-Jan-2010 Janusz Dobrowolski # Check on existence of locale.inc added to avoid blank pages when the file is broken. $ /includes/session.inc diff --git a/purchasing/inquiry/supplier_inquiry.php b/purchasing/inquiry/supplier_inquiry.php index 264b551..0b23bd6 100644 --- a/purchasing/inquiry/supplier_inquiry.php +++ b/purchasing/inquiry/supplier_inquiry.php @@ -15,6 +15,7 @@ include($path_to_root . "/includes/db_pager.inc"); include($path_to_root . "/includes/session.inc"); include($path_to_root . "/purchasing/includes/purchasing_ui.inc"); +include($path_to_root . "/reporting/includes/reporting.inc"); $js = ""; if ($use_popup_windows) @@ -146,7 +147,8 @@ function fmt_credit($row) function prt_link($row) { - return print_document_link($row['trans_no'], _("Print"), true, $row['type']); + if ($row['type'] == ST_SUPPAYMENT || $row['type'] == ST_BANKPAYMENT) + return print_document_link($row['trans_no'], _("Print Remittance"), true, $row['type'], ICON_PRINT); } function check_overdue($row) @@ -217,7 +219,8 @@ $cols = array( _("Debit") => array('align'=>'right', 'fun'=>'fmt_debit'), _("Credit") => array('align'=>'right', 'insert'=>true,'fun'=>'fmt_credit'), array('insert'=>true, 'fun'=>'gl_view'), - array('insert'=>true, 'fun'=>'credit_link') + array('insert'=>true, 'fun'=>'credit_link'), + array('insert'=>true, 'fun'=>'prt_link') ); if ($_POST['supplier_id'] != ALL_TEXT) diff --git a/purchasing/supplier_payment.php b/purchasing/supplier_payment.php index 68ed1c8..cb94548 100644 --- a/purchasing/supplier_payment.php +++ b/purchasing/supplier_payment.php @@ -19,6 +19,7 @@ include_once($path_to_root . "/includes/banking.inc"); include_once($path_to_root . "/includes/data_checks.inc"); //include_once($path_to_root . "/purchasing/includes/ui/supp_alloc_ui.inc"); include_once($path_to_root . "/purchasing/includes/purchasing_db.inc"); +include_once($path_to_root . "/reporting/includes/reporting.inc"); $js = ""; if ($use_popup_windows) @@ -69,6 +70,9 @@ if (isset($_GET['AddedID'])) display_notification_centered( _("Payment has been sucessfully entered")); + submenu_print(_("&Print This Remittance"), ST_SUPPAYMENT, $payment_id, 'prtopt'); + submenu_print(_("&Email This Remittance"), ST_SUPPAYMENT, $payment_id, null, 1); + display_note(get_gl_view_str(22, $payment_id, _("View the GL &Journal Entries for this Payment"))); // hyperlink_params($path_to_root . "/purchasing/allocations/supplier_allocate.php", _("&Allocate this Payment"), "trans_no=$payment_id&trans_type=22"); diff --git a/reporting/includes/doctext.inc b/reporting/includes/doctext.inc index 79812ec..b2bcea2 100644 --- a/reporting/includes/doctext.inc +++ b/reporting/includes/doctext.inc @@ -13,7 +13,7 @@ if (isset($header2type)) { $doc_Cust_no = _("Cust no"); $doc_Date = _("Date"); - if ($doctype == 8) // Purchase Order + if ($doctype == ST_PURCHORDER || $doctype == ST_SUPPAYMENT) // Purchase Order { $doc_Charge_To = _("Order To"); $doc_Delivered_To = _("Charge To"); @@ -24,14 +24,14 @@ if (isset($header2type)) $doc_Delivered_To = _("Delivered To"); } $doc_Shipping_Company = _("Shipping Company"); - if ($doctype == 7) + if ($doctype == ST_SALESQUOTE) $doc_Due_Date = _("Valid until"); - elseif ($doctype == 9) + elseif ($doctype == ST_SALESORDER) $doc_Due_Date = _("Delivery Date"); else $doc_Due_Date = _("Due Date"); $doc_Your_Ref = _("Your Ref"); - if ($doctype == 26) + if ($doctype == ST_WORKORDER) { $doc_Our_Ref = _("Type"); $doc_Your_VAT_no = _("Manufactured Item"); @@ -42,7 +42,10 @@ if (isset($header2type)) } else { - $doc_Our_Ref = _("Sales Person"); + if ($doctype == ST_SUPPAYMENT) + $doc_Our_Ref = _("Type"); + else + $doc_Our_Ref = _("Sales Person"); $doc_Your_VAT_no = _("Your VAT no."); $doc_Payment_Terms = _("Payment Terms"); $doc_Customers_Ref = _("Customers Reference"); @@ -50,47 +53,52 @@ if (isset($header2type)) } $doc_Our_VAT_no = _("Our VAT No."); $doc_Domicile = _("Domicile"); - if($doctype == 13 || $doctype == 7 || $doctype == 8 || $doctype == 9) { + if($doctype == ST_CUSTDELIVERY || $doctype == ST_SALESQUOTE || $doctype == ST_PURCHORDER || $doctype == ST_SALESORDER || + $doctype == ST_SUPPAYMENT) { $doc_Bank_Account = ''; $doc_Please_Quote = _("All amounts stated in"); } else { $doc_Bank_Account = _("Bank Account"); - $doc_Please_Quote = $doctype==10 ? + $doc_Please_Quote = $doctype==ST_SALESINVOICE ? _("Please quote Invoice no. when paying. All amounts stated in") : _("Please quote Credit no. when paying. All amounts stated in"); } $doc_Address = _("Address"); $doc_Phone_Fax_Email = _("Phone/Fax/Email"); $doc_Bank = _("Bank"); - $doc_Bank_Account = _("Bank Account"); $doc_Payment_Link = _("You can pay through"); - if ($doctype == 7 || $doctype == 8 || $doctype == 9 || $doctype == 10 || $doctype == 11 || $doctype == 13 || $doctype == 26) + if ($doctype == ST_SALESQUOTE || $doctype == ST_PURCHORDER || $doctype == ST_SALESORDER || $doctype == ST_SALESINVOICE || + $doctype == ST_CUSTCREDIT || $doctype == ST_CUSTDELIVERY || $doctype == ST_WORKORDER || $doctype == ST_SUPPAYMENT) { - if ($doctype == 7) + if ($doctype == ST_SALESQUOTE) $this->title = _("SALES QUOTATION"); - elseif ($doctype == 8) + elseif ($doctype == ST_PURCHORDER) $this->title = _("PURCHASE ORDER"); - elseif ($doctype == 13) + elseif ($doctype == ST_CUSTDELIVERY) $this->title = ($packing_slip==1 ? _("PACKING SLIP") : _("DELIVERY NOTE")); - elseif ($doctype == 9) + elseif ($doctype == ST_SALESORDER) $this->title = ($print_as_quote==1 ? _("QUOTE") : _("SALES ORDER")); - elseif ($doctype == 10) + elseif ($doctype == ST_SALESINVOICE) $this->title = _("INVOICE"); - elseif ($doctype == 26) + elseif ($doctype == ST_WORKORDER) $this->title = _("WORK ORDER"); + elseif ($doctype == ST_SUPPAYMENT) + $this->title = _("REMITTANCE"); else $this->title = _("CREDIT NOTE"); - if ($doctype == 8) + if ($doctype == ST_PURCHORDER) $this->headers = array(_("Item Code"), _("Item Description"), _("Delivery Date"), _("Quantity"), _("Unit"), _("Price"), _("Total")); - elseif ($doctype == 26) + elseif ($doctype == ST_WORKORDER) $this->headers = array(_("Item Code"), _("Item Description"), _("From Location"), _("Work Centre"), _("Unit Quantity"), _("Total Quantity"), _("Units Issued")); + elseif ($doctype == ST_SUPPAYMENT) + $this->headers = array(_("Trans Type"), _("#"), _("Date"), _("Due Date"), _("Total Amount"), _("Left to Allocate"), _("This Allocation")); else $this->headers = array(_("Item Code"), _("Item Description"), _("Quantity"), _("Unit"), _("Price"), _("Discount %"), _("Total")); } - else if ($doctype == 12) + else if ($doctype == ST_CUSTPAYMENT) { $this->title = _("STATEMENT"); $this->headers = array(_("Trans Type"), _("#"), _("Date"), _("DueDate"), _("Charges"), @@ -106,26 +114,35 @@ if (isset($emailtype)) } if (isset($header2type) || isset($linetype)) { - $doc_Invoice_no = ($doctype==13 ? _("Delivery Note No.") : (($doctype==7 || $doctype==8 || $doctype==9) ? _("Order no.") : - ($doctype==10 ? _("Invoice No.") : ($doctype==26 ? _("Word Order No") : _("Credit No."))))); + $doc_Invoice_no = ($doctype==ST_CUSTDELIVERY ? _("Delivery Note No.") : + ($doctype == ST_SUPPAYMENT ? _("Payment No.") : + (($doctype==ST_SALESQUOTE || $doctype==ST_PURCHORDER || $doctype==ST_SALESORDER) ? _("Order no.") : + ($doctype==ST_SALESINVOICE ? _("Invoice No.") : ($doctype==ST_WORKORDER ? _("Word Order No") : _("Credit No.")))))); $doc_Delivery_no = _("Delivery Note No."); $doc_Order_no = _("Order no."); } if (isset($linetype)) { - if ($doctype == 7 || $doctype == 8 || $doctype == 9 || $doctype == 10 || $doctype == 11 || $doctype == 13) + if ($doctype == ST_SALESQUOTE || $doctype == ST_PURCHORDER || $doctype == ST_SALESORDER || + $doctype == ST_SALESINVOICE || $doctype == ST_CUSTCREDIT || $doctype == ST_CUSTDELIVERY) { $doc_Sub_total = _("Sub-total"); $doc_Shipping = _("Shipping"); $doc_Included = _("Included"); $doc_Amount = _("Amount"); - $doc_TOTAL_INVOICE = $doctype ==10 ? _("TOTAL INVOICE") : _("TOTAL CREDIT"); + $doc_TOTAL_INVOICE = $doctype ==ST_SALESINVOICE ? _("TOTAL INVOICE") : _("TOTAL CREDIT"); $doc_TOTAL_ORDER = _("TOTAL ORDER EX VAT"); $doc_TOTAL_ORDER2 = _("TOTAL ORDER VAT INCL."); $doc_TOTAL_PO = _("TOTAL PO EX VAT"); $doc_TOTAL_DELIVERY = _("TOTAL DELIVERY INCL. VAT"); } - else if ($doctype == 12) + elseif ($doctype == ST_SUPPAYMENT) + { + $doc_Total_Allocated = _("Total Allocated"); + $doc_Left_To_Allocate = _("Left to Allocate"); + $doc_Total_Payment = _("TOTAL PAYMENT"); + } + elseif ($doctype == ST_CUSTPAYMENT) { $doc_Outstanding = _("Outstanding Transactions"); $doc_Current = _("Current"); diff --git a/reporting/includes/doctext2.inc b/reporting/includes/doctext2.inc index f1e3e0e..0f53367 100644 --- a/reporting/includes/doctext2.inc +++ b/reporting/includes/doctext2.inc @@ -13,7 +13,7 @@ if (isset($header2type)) { $doc_Cust_no = "Cust no"; $doc_Date = "Date"; - if ($doctype == 8) // Purchase Order + if ($doctype == ST_PURCHORDER || $doctype == ST_SUPPAYMENT) // Purchase Order { $doc_Charge_To = "Order To"; $doc_Delivered_To = "Charge To"; @@ -24,14 +24,14 @@ if (isset($header2type)) $doc_Delivered_To = "Delivered To"; } $doc_Shipping_Company = "Shipping Company"; - if ($doctype == 7) + if ($doctype == ST_SALESQUOTE) $doc_Due_Date = "Valid until"; - if ($doctype == 9) + elseif ($doctype == ST_SALESORDER) $doc_Due_Date = "Delivery Date"; else $doc_Due_Date = "Due Date"; $doc_Your_Ref = "Your Ref"; - if ($doctype == 26) + if ($doctype == ST_WORKORDER) { $doc_Our_Ref = "Type"; $doc_Your_VAT_no = "Manufactured Item"; @@ -42,7 +42,10 @@ if (isset($header2type)) } else { - $doc_Our_Ref = "Sales Person"; + if ($doctype == ST_SUPPAYMENT) + $doc_Our_Ref = "Type"; + else + $doc_Our_Ref = "Sales Person"; $doc_Your_VAT_no = "Your VAT no."; $doc_Payment_Terms = "Payment Terms"; $doc_Customers_Ref = "Customers Reference"; @@ -50,46 +53,51 @@ if (isset($header2type)) } $doc_Our_VAT_no = "Our VAT No."; $doc_Domicile = "Domicile"; - if($doctype == 13 || $doctype == 7 || $doctype == 8 || $doctype == 9) { + if($doctype == ST_CUSTDELIVERY || $doctype == ST_SALESQUOTE || $doctype == ST_PURCHORDER || $doctype == ST_SALESORDER || + $doctype == ST_SUPPAYMENT) { $doc_Bank_Account = ''; $doc_Please_Quote = "All amounts stated in"; } else { - $doc_Please_Quote = "Please quote ".($doctype==10 ? "Invoice" : "Credit") + $doc_Please_Quote = "Please quote ".($doctype==ST_SALESINVOICE ? "Invoice" : "Credit") ." no. when paying. All amounts stated in"; $doc_Bank_Account = "Bank Account"; } $doc_Address = "Address"; $doc_Phone_Fax_Email = "Phone/Fax/Email"; $doc_Bank = "Bank"; - $doc_Bank_Account = "Bank Account"; $doc_Payment_Link = "You can pay through"; - if ($doctype == 7 || $doctype == 8 || $doctype == 9 || $doctype == 10 || $doctype == 11 || $doctype == 13 || $doctype == 26) + if ($doctype == ST_SALESQUOTE || $doctype == ST_PURCHORDER || $doctype == ST_SALESORDER || $doctype == ST_SALESINVOICE || + $doctype == ST_CUSTCREDIT || $doctype == ST_CUSTDELIVERY || $doctype == ST_WORKORDER || $doctype == ST_SUPPAYMENT) { - if ($doctype == 7) + if ($doctype == ST_SALESQUOTE) $this->title = "SALES QUOTATION"; - elseif ($doctype == 8) + elseif ($doctype == ST_PURCHORDER) $this->title = "PURCHASE ORDER"; - elseif ($doctype == 9) + elseif ($doctype == ST_SALESORDER) $this->title = ($print_as_quote==1 ? "QUOTE" : "SALES ORDER"); - elseif ($doctype == 10) + elseif ($doctype == ST_SALESINVOICE) $this->title = "INVOICE"; - elseif ($doctype == 13) + elseif ($doctype == ST_CUSTDELIVERY) $this->title = ($packing_slip==1 ? "PACKING SLIP" : "DELIVERY NOTE"); - elseif ($doctype == 26) + elseif ($doctype == ST_WORKORDER) $this->title = "WORK ORDER"; + elseif ($doctype == ST_SUPPAYMENT) + $this->title = "REMITTANCE"; else $this->title = "CREDIT NOTE"; - if ($doctype == 8) + if ($doctype == ST_PURCHORDER) $this->headers = array('Item Code', 'Item Description', 'Delivery Date', 'Quantity', 'Unit', 'Price', 'Total'); - elseif ($doctype == 26) + elseif ($doctype == ST_WORKORDER) $this->headers = array("Item Code", "Item Description", "From Location", "Work Centre", "Unit Quantity", "Total Quantity", "Units Issued"); + elseif ($doctype == ST_SUPPAYMENT) + $this->headers = array('Trans Type', '#', 'Date', 'Due Date', 'Total Amount', 'Left to Allocate', 'This Allocation'); else $this->headers = array('Item Code', 'Item Description', 'Quantity', 'Unit', 'Price', 'Discount %', 'Total'); } - else if ($doctype == 12) + elseif ($doctype == ST_CUSTPAYMENT) { $this->title = "STATEMENT"; $this->headers = array('Trans Type', '#', 'Date', 'Due Date', 'Charges', @@ -105,26 +113,35 @@ if (isset($emailtype)) } if (isset($header2type) || isset($linetype)) { - $doc_Invoice_no = ($doctype==13 ? "Delivery Note No." : (($doctype == 7 || $doctype==8 || $doctype==9) ? "Order no." : - ($doctype==10 ? "Invoice No." : ($doctype == 26 ? "Work Order No" : "Credit No.")))); + $doc_Invoice_no = ($doctype==ST_CUSTDELIVERY ? "Delivery Note No." : + ($doctype == ST_SUPPAYMENT ? "Payment No." : + (($doctype == ST_SALESQUOTE || $doctype==ST_PURCHORDER || $doctype==ST_SALESORDER) ? "Order no." : + ($doctype==ST_SALESINVOICE ? "Invoice No." : ($doctype == ST_WORKORDER ? "Work Order No" : "Credit No."))))); $doc_Delivery_no = "Delivery Note No."; $doc_Order_no = "Order no."; } if (isset($linetype)) { - if ($doctype == 7 || $doctype == 8 || $doctype == 9 || $doctype == 10 || $doctype == 11 || $doctype == 13) + if ($doctype == ST_SALESQUOTE || $doctype == ST_PURCHORDER || $doctype == ST_SALESORDER || $doctype == ST_SALESINVOICE || + $doctype == ST_CUSTCREDIT || $doctype == ST_CUSTDELIVERY) { $doc_Sub_total = "Sub-total"; $doc_Shipping = "Shipping"; $doc_Included = "Included"; $doc_Amount = "amount"; - $doc_TOTAL_INVOICE = $doctype==10 ? "TOTAL INVOICE" : "TOTAL CREDIT"; + $doc_TOTAL_INVOICE = $doctype==ST_SALESINVOICE ? "TOTAL INVOICE" : "TOTAL CREDIT"; $doc_TOTAL_ORDER = "TOTAL ORDER EX VAT"; $doc_TOTAL_ORDER2 = "TOTAL ORDER VAT INCL."; $doc_TOTAL_PO = "TOTAL PO EX VAT"; $doc_TOTAL_DELIVERY = "TOTAL DELIVERY INCL. VAT"; } - else if ($doctype == 12) + elseif ($doctype == ST_SUPPAYMENT) + { + $doc_Total_Allocated = "Total Allocated"; + $doc_Left_To_Allocate = "Left to Allocate"; + $doc_Total_Payment = "TOTAL PAYMENT"; + } + elseif ($doctype == ST_CUSTPAYMENT) { $doc_Outstanding = "Outstanding Transactions"; $doc_Current = "Current"; diff --git a/reporting/includes/header2.inc b/reporting/includes/header2.inc index da51522..2da3c7c 100644 --- a/reporting/includes/header2.inc +++ b/reporting/includes/header2.inc @@ -11,7 +11,7 @@ ***********************************************************************/ // New version (without vertical lines) - global $wo_types_array; + global $wo_types_array, $systypes_array; $this->row = $this->pageHeight - $this->topMargin; @@ -111,7 +111,7 @@ $this->Text($c2col, $this->company['gst_no'], $mcol); $this->NewLine(); } - if (($doctype == 10 || $doctype == 12) && $this->company['domicile'] != "") + if (($doctype == ST_SALESINVOICE || $doctype == ST_CUSTPAYMENT) && $this->company['domicile'] != "") { $this->Text($ccol, $doc_Domicile, $c2col); $this->Text($c2col, $this->company['domicile'], $mcol); @@ -121,22 +121,22 @@ $this->row = $adrline; $this->NewLine(3); $this->Text($mcol + 100, $doc_Date); - if ($doctype == 7 || $doctype == 8 || $doctype == 9) + if ($doctype == ST_SALESQUOTE || $doctype == ST_PURCHORDER || $doctype == ST_SALESORDER) $this->Text($mcol + 180, sql2date($myrow['ord_date'])); - elseif ($doctype == 26) + elseif ($doctype == ST_WORKORDER) $this->Text($mcol + 180, sql2date($myrow['date_'])); else $this->Text($mcol + 180, sql2date($myrow['tran_date'])); $this->NewLine(); $this->Text($mcol + 100, $doc_Invoice_no); - if ($doctype == 7 || $doctype == 8 || $doctype == 9) // QUOTE, PO or SO + if ($doctype == ST_SALESQUOTE || $doctype == ST_PURCHORDER || $doctype == ST_SALESORDER) // QUOTE, PO or SO { if ($print_invoice_no == 1) $this->Text($mcol + 180, $myrow['order_no']); else $this->Text($mcol + 180, $myrow['reference']); } - elseif ($doctype == 26) + elseif ($doctype == ST_WORKORDER) $this->Text($mcol + 180, $myrow['id']); else if (isset($myrow['trans_no']) && isset($myrow['reference'])) // INV/CRE/STA { @@ -157,11 +157,11 @@ $this->row = $this->row - $this->lineHeight - 5; $temp = $this->row; - if ($doctype == 7 || $doctype == 9) + if ($doctype == ST_SALESQUOTE || $doctype == ST_SALESORDER) { $this->Text($ccol, $myrow['name'], $icol); } - elseif ($doctype == 26) + elseif ($doctype == ST_WORKORDER) { $this->Text($ccol, $myrow['location_name'], $icol); $this->NewLine(); @@ -169,7 +169,7 @@ } else { - if ($doctype == 8) { + if ($doctype == ST_PURCHORDER || $doctype == ST_SUPPAYMENT) { $name = $myrow['supp_name']; $addr = $myrow['address']; } else { @@ -188,12 +188,13 @@ if ($sales_order != NULL) { $this->row = $temp; - if ($doctype == 8) + if ($doctype == ST_PURCHORDER) $this->Text($mcol, $this->company['coy_name']); - else + elseif ($doctype != ST_SUPPAYMENT) $this->Text($mcol, $sales_order['deliver_to']); $this->NewLine(); - $this->TextWrapLines($mcol, $this->rightMargin - $mcol, $sales_order['delivery_address']); + if ($doctype != ST_SUPPAYMENT) + $this->TextWrapLines($mcol, $this->rightMargin - $mcol, $sales_order['delivery_address']); } $this->row = $iline2 - $this->lineHeight - 1; $col = $this->leftMargin; @@ -203,7 +204,7 @@ $col += $width; $this->TextWrap($col, $this->row, $width, $doc_Your_VAT_no, 'C'); $col += $width; - if ($doctype == 10) + if ($doctype == ST_SALESINVOICE) $this->TextWrap($col, $this->row, $width, $doc_Delivery_no, 'C'); else $this->TextWrap($col, $this->row, $width, $doc_Our_Order_No, 'C'); @@ -211,9 +212,9 @@ $this->TextWrap($col, $this->row, $width, $doc_Due_Date, 'C'); $this->row = $iline3 - $this->lineHeight - 1; $col = $this->leftMargin; - if ($doctype == 8) + if ($doctype == ST_PURCHORDER || $doctype == ST_SUPPAYMENT) $this->TextWrap($col, $this->row, $width, $myrow['supp_account_no'], 'C'); - elseif ($doctype == 26) + elseif ($doctype == ST_WORKORDER) $this->TextWrap($col, $this->row, $width, $myrow['wo_ref'], 'C'); elseif (isset($sales_order["customer_ref"])) $this->TextWrap($col, $this->row, $width, $sales_order["customer_ref"], 'C'); @@ -226,15 +227,17 @@ $row = db_fetch($result); $this->TextWrap($col, $this->row, $width, $row['salesman_name'], 'C'); } - elseif ($doctype == 26) + elseif ($doctype == ST_SUPPAYMENT) + $this->TextWrap($col, $this->row, $width, $systypes_array[$myrow["type"]], 'C'); + elseif ($doctype == ST_WORKORDER) $this->TextWrap($col, $this->row, $width, $wo_types_array[$myrow["type"]], 'C'); $col += $width; - if ($doctype == 26) + if ($doctype == ST_WORKORDER) $this->TextWrap($col, $this->row, $width, $myrow["StockItemName"], 'C'); - elseif ($doctype != 8 && isset($myrow['tax_id'])) + elseif ($doctype != ST_PURCHORDER && isset($myrow['tax_id'])) $this->TextWrap($col, $this->row, $width, $myrow['tax_id'], 'C'); $col += $width; - if ($doctype == 10) + if ($doctype == ST_SALESINVOICE) { $deliveries = get_parent_trans(ST_SALESINVOICE, $myrow['trans_no']); $line = ""; @@ -253,7 +256,7 @@ } $this->TextWrap($col, $this->row, $width, $line, 'C'); } - elseif ($doctype == 13) + elseif ($doctype == ST_CUSTDELIVERY) { $ref = $myrow['order_']; if ($print_invoice_no == 0) @@ -264,21 +267,21 @@ } $this->TextWrap($col, $this->row, $width, $ref, 'C'); } - elseif ($doctype == 26) + elseif ($doctype == ST_WORKORDER) $this->TextWrap($col, $this->row, $width, $myrow["location_name"], 'C'); elseif (isset($myrow['order_'])) $this->TextWrap($col, $this->row, $width, $myrow['order_'], 'C'); $col += $width; - if ($doctype == 9 || $doctype == 7) + if ($doctype == ST_SALESORDER || $doctype == ST_SALESQUOTE) $this->TextWrap($col, $this->row, $width, sql2date($myrow['delivery_date']), 'C'); - elseif ($doctype == 26) + elseif ($doctype == ST_WORKORDER) $this->TextWrap($col, $this->row, $width, $myrow["units_issued"], 'C'); - elseif ($doctype != 8 && $doctype != 11 && isset($myrow['due_date'])) + elseif ($doctype != ST_PURCHORDER && $doctype != ST_CUSTCREDIT && isset($myrow['due_date'])) $this->TextWrap($col, $this->row, $width, sql2date($myrow['due_date']), 'C'); if (!isset($packing_slip) || $packing_slip == 0) { $this->row -= (2 * $this->lineHeight); - if ($doctype == 26) + if ($doctype == ST_WORKORDER) $str = sql2date($myrow["required_by"]); else { @@ -301,7 +304,7 @@ $this->Font(); $this->Font('italic'); $this->row = $iline7 - $this->lineHeight - 6; - if ($doctype != 26) + if ($doctype != ST_WORKORDER) $this->TextWrap($ccol, $this->row, $right - $ccol, $doc_Please_Quote . " - " . $myrow['curr_code'], 'C'); $this->row -= $this->lineHeight; @@ -311,7 +314,7 @@ $this->TextWrap($ccol, $this->row, $right - $ccol, $txt, 'C'); $this->row -= $this->lineHeight; } - if ($doctype == 10 && $branch['disable_branch'] > 0) // payment links + if ($doctype == ST_SALESINVOICE && $branch['disable_branch'] > 0) // payment links { if ($branch['disable_branch'] == 1) { @@ -336,7 +339,7 @@ $this->TextWrap($ccol, $this->row, $right - $ccol, $this->params['comments'], 'C'); $this->row -= $this->lineHeight; } - if (($doctype == 10 || $doctype == 12) && $this->company['legal_text'] != "") + if (($doctype == ST_SALESINVOICE || $doctype == ST_CUSTPAYMENT) && $this->company['legal_text'] != "") { $this->TextWrapLines($ccol, $right - $ccol, $this->company['legal_text'], 'C'); } diff --git a/reporting/includes/pdf_report.inc b/reporting/includes/pdf_report.inc index bb70cbe..627031f 100644 --- a/reporting/includes/pdf_report.inc +++ b/reporting/includes/pdf_report.inc @@ -929,7 +929,7 @@ class FrontReport extends Cpdf $to = $myrow['DebtorName'] . " <" . $myrow['email'] . ">"; $msg = $doc_Dear_Sirs . " " . $myrow['DebtorName'] . ",\n\n" . $doc_AttachedFile . " " . $subject . "\n\n"; - if (isset($myrow['dimension_id']) && $myrow['dimension_id'] > 0 && $doctype == 10) // helper for payment links + if (isset($myrow['dimension_id']) && $myrow['dimension_id'] > 0 && $doctype == ST_SALESINVOICE) // helper for payment links { if ($myrow['dimension_id'] == 1) { diff --git a/reporting/includes/reporting.inc b/reporting/includes/reporting.inc index 6a07129..0650c98 100644 --- a/reporting/includes/reporting.inc +++ b/reporting/includes/reporting.inc @@ -77,6 +77,17 @@ function print_document_link($doc_no, $link_text, $link=true, $type_no, 'PARAM_3' => $email, 'PARAM_4' => ''); break; + case ST_SUPPAYMENT : + case ST_BANKPAYMENT : + $rep = 210; + // from, to, currency, bank acc, email, comments + $ar = array( + 'PARAM_0' => $doc_no, + 'PARAM_1' => $doc_no, + 'PARAM_2' => '', + 'PARAM_3' => $email, + 'PARAM_4' => ''); + break; // default: $ar = array(); } diff --git a/reporting/includes/reports_classes.inc b/reporting/includes/reports_classes.inc index e7df6a7..1aff546 100644 --- a/reporting/includes/reports_classes.inc +++ b/reporting/includes/reports_classes.inc @@ -325,6 +325,15 @@ class BoxReports FROM ".TB_PREF."suppliers, ".TB_PREF."purch_orders WHERE ".TB_PREF."suppliers.supplier_id=".TB_PREF."purch_orders.supplier_id ORDER BY ".TB_PREF."purch_orders.order_no DESC"; return combo_input($name, '', $sql, 'order_no', 'IName',array('order'=>false)); + case 'REMITTANCE': + $BP = _("BP"); + $SP = _("SP"); + $ref = ($print_invoice_no == 1 ? "trans_no" : "reference"); + $sql = "SELECT concat(".TB_PREF."supp_trans.trans_no, '-', + ".TB_PREF."supp_trans.type) AS TNO, concat(".TB_PREF."supp_trans.$ref, if (type=".ST_BANKPAYMENT.", ' $BP ', ' $SP '), ".TB_PREF."suppliers.supp_name) as IName + FROM ".TB_PREF."suppliers, ".TB_PREF."supp_trans WHERE (type=".ST_BANKPAYMENT." OR type=".ST_SUPPAYMENT.") AND ".TB_PREF."suppliers.supplier_id=".TB_PREF."supp_trans.supplier_id ORDER BY ".TB_PREF."supp_trans.trans_no DESC"; + return combo_input($name, '', $sql, 'TNO', 'IName',array('order'=>false)); + case 'ITEMS': return stock_manufactured_items_list($name); diff --git a/reporting/rep108.php b/reporting/rep108.php index a351922..d5b1c02 100644 --- a/reporting/rep108.php +++ b/reporting/rep108.php @@ -107,10 +107,10 @@ function print_statements() $rep->filename = "Statement" . $myrow['debtor_no'] . ".pdf"; $rep->Info($params, $cols, null, $aligns); } - $rep->Header2($myrow, null, null, $baccount, 12); + $rep->Header2($myrow, null, null, $baccount, ST_CUSTPAYMENT); $rep->NewLine(); $linetype = true; - $doctype = 12; + $doctype = ST_CUSTPAYMENT; if ($rep->currency != $myrow['curr_code']) { include($path_to_root . "/reporting/includes/doctext2.inc"); @@ -142,7 +142,7 @@ function print_statements() $rep->TextCol(7, 8, $DisplayNet, -2); $rep->NewLine(); if ($rep->row < $rep->bottomMargin + (10 * $rep->lineHeight)) - $rep->Header2($myrow, null, null, $baccount, 12); + $rep->Header2($myrow, null, null, $baccount, ST_CUSTPAYMENT); } $nowdue = "1-" . $PastDueDays1 . " " . $doc_Days; $pastdue1 = $PastDueDays1 + 1 . "-" . $PastDueDays2 . " " . $doc_Days; @@ -163,7 +163,7 @@ function print_statements() for ($i = 0; $i < 5; $i++) $rep->TextWrap($col[$i], $rep->row, $col[$i + 1] - $col[$i], $str2[$i], 'right'); if ($email == 1) - $rep->End($email, $doc_Statement . " " . $doc_as_of . " " . sql2date($date), $myrow, 12); + $rep->End($email, $doc_Statement . " " . $doc_as_of . " " . sql2date($date), $myrow, ST_CUSTPAYMENT); } if ($email == 0) diff --git a/reporting/rep109.php b/reporting/rep109.php index 1134918..5b049c1 100644 --- a/reporting/rep109.php +++ b/reporting/rep109.php @@ -94,7 +94,7 @@ function print_sales_orders() } else $rep->title = ($print_as_quote==1 ? _("QUOTE") : _("SALES ORDER")); - $rep->Header2($myrow, $branch, $myrow, $baccount, 9); + $rep->Header2($myrow, $branch, $myrow, $baccount, ST_SALESORDER); $result = get_sales_order_details($i, ST_SALESORDER); $SubTotal = 0; @@ -123,7 +123,7 @@ function print_sales_orders() $rep->row = $newrow; //$rep->NewLine(1); if ($rep->row < $rep->bottomMargin + (15 * $rep->lineHeight)) - $rep->Header2($myrow, $branch, $myrow, $baccount, 9); + $rep->Header2($myrow, $branch, $myrow, $baccount, ST_SALESORDER); } if ($myrow['comments'] != "") { @@ -135,7 +135,7 @@ function print_sales_orders() $rep->row = $rep->bottomMargin + (15 * $rep->lineHeight); $linetype = true; - $doctype = 9; + $doctype = ST_SALESORDER; if ($rep->currency != $myrow['curr_code']) { include($path_to_root . "/reporting/includes/doctext2.inc"); diff --git a/reporting/rep110.php b/reporting/rep110.php index fc33042..a8fdbc4 100644 --- a/reporting/rep110.php +++ b/reporting/rep110.php @@ -99,9 +99,9 @@ function print_deliveries() } else $rep->title = _('DELIVERY NOTE'); - $rep->Header2($myrow, $branch, $sales_order, '', 13); + $rep->Header2($myrow, $branch, $sales_order, '', ST_CUSTDELIVERY); - $result = get_customer_trans_details(13, $i); + $result = get_customer_trans_details(ST_CUSTDELIVERY, $i); $SubTotal = 0; while ($myrow2=db_fetch($result)) { @@ -131,7 +131,7 @@ function print_deliveries() $rep->row = $newrow; //$rep->NewLine(1); if ($rep->row < $rep->bottomMargin + (15 * $rep->lineHeight)) - $rep->Header2($myrow, $branch, $sales_order,'',13); + $rep->Header2($myrow, $branch, $sales_order,'',ST_CUSTDELIVERY); } $comments = get_comments(ST_CUSTDELIVERY, $i); @@ -147,7 +147,7 @@ function print_deliveries() $rep->row = $rep->bottomMargin + (15 * $rep->lineHeight); $linetype = true; - $doctype=13; + $doctype=ST_CUSTDELIVERY; if ($rep->currency != $myrow['curr_code']) { include($path_to_root . "/reporting/includes/doctext2.inc"); @@ -164,7 +164,7 @@ function print_deliveries() $rep->TextCol(3, 6, $doc_Shipping, -2); $rep->TextCol(6, 7, $DisplayFreight, -2); $rep->NewLine(); - $tax_items = get_trans_tax_details(13, $i); + $tax_items = get_trans_tax_details(ST_CUSTDELIVERY, $i); while ($tax_item = db_fetch($tax_items)) { $DisplayTax = number_format2($tax_item['amount'], $dec); @@ -196,7 +196,7 @@ function print_deliveries() $myrow['email'] = $branch['email']; $myrow['DebtorName'] = $branch['br_name']; } - $rep->End($email, $doc_Delivery_no . " " . $myrow['reference'], $myrow, 13); + $rep->End($email, $doc_Delivery_no . " " . $myrow['reference'], $myrow, ST_CUSTDELIVERY); } } if ($email == 0) diff --git a/reporting/rep111.php b/reporting/rep111.php index 826089b..0301ed6 100644 --- a/reporting/rep111.php +++ b/reporting/rep111.php @@ -78,7 +78,7 @@ function print_sales_quotations() $rep->Info($params, $cols, null, $aligns); } $rep->title = _("SALES QUOTATION"); - $rep->Header2($myrow, $branch, $myrow, $baccount, 7); + $rep->Header2($myrow, $branch, $myrow, $baccount, ST_SALESQUOTE); $result = get_sales_order_details($i, ST_SALESQUOTE); $SubTotal = 0; @@ -107,7 +107,7 @@ function print_sales_quotations() $rep->row = $newrow; //$rep->NewLine(1); if ($rep->row < $rep->bottomMargin + (15 * $rep->lineHeight)) - $rep->Header2($myrow, $branch, $myrow, $baccount, 9); + $rep->Header2($myrow, $branch, $myrow, $baccount, ST_SALESQUOTE); } if ($myrow['comments'] != "") { @@ -119,7 +119,7 @@ function print_sales_quotations() $rep->row = $rep->bottomMargin + (15 * $rep->lineHeight); $linetype = true; - $doctype = 9; + $doctype = ST_SALESQUOTE; if ($rep->currency != $myrow['curr_code']) { include($path_to_root . "/reporting/includes/doctext2.inc"); diff --git a/reporting/rep209.php b/reporting/rep209.php index b6b88a4..e8278e6 100644 --- a/reporting/rep209.php +++ b/reporting/rep209.php @@ -105,7 +105,7 @@ function print_po() } else $rep->title = _('PURCHASE ORDER'); - $rep->Header2($myrow, null, $myrow, $baccount, 8); + $rep->Header2($myrow, null, $myrow, $baccount, ST_PURCHORDER); $result = get_po_details($i); $SubTotal = 0; @@ -139,7 +139,7 @@ function print_po() $rep->TextCol(6, 7, $DisplayNet, -2); $rep->NewLine(1); if ($rep->row < $rep->bottomMargin + (15 * $rep->lineHeight)) - $rep->Header2($myrow, $branch, $myrow, $baccount, 8); + $rep->Header2($myrow, $branch, $myrow, $baccount, ST_PURCHORDER); } if ($myrow['comments'] != "") { @@ -150,7 +150,7 @@ function print_po() $rep->row = $rep->bottomMargin + (15 * $rep->lineHeight); $linetype = true; - $doctype = 8; + $doctype = ST_PURCHORDER; if ($rep->currency != $myrow['curr_code']) { include($path_to_root . "/reporting/includes/doctext2.inc"); diff --git a/reporting/rep210.php b/reporting/rep210.php new file mode 100644 index 0000000..1a99195 --- /dev/null +++ b/reporting/rep210.php @@ -0,0 +1,176 @@ +. +***********************************************************************/ + +$page_security = $_POST['PARAM_0'] == $_POST['PARAM_1'] ? + 'SA_SUPPTRANSVIEW' : 'SA_SUPPBULKREP'; +// ---------------------------------------------------------------- +// $ Revision: 2.0 $ +// Creator: Joe Hunt +// date_: 2005-05-19 +// Title: Purchase Orders +// ---------------------------------------------------------------- +$path_to_root=".."; + +include_once($path_to_root . "/includes/session.inc"); +include_once($path_to_root . "/includes/date_functions.inc"); +include_once($path_to_root . "/includes/data_checks.inc"); + +//---------------------------------------------------------------------------------------------------- + +print_remittances(); + +//---------------------------------------------------------------------------------------------------- +function get_remittance($type, $trans_no) +{ + $sql = "SELECT ".TB_PREF."supp_trans.*, + (".TB_PREF."supp_trans.ov_amount+".TB_PREF."supp_trans.ov_gst+".TB_PREF."supp_trans.ov_discount) AS Total, + ".TB_PREF."suppliers.supp_name, ".TB_PREF."suppliers.supp_account_no, + ".TB_PREF."suppliers.curr_code, ".TB_PREF."suppliers.payment_terms, ".TB_PREF."suppliers.gst_no AS tax_id, + ".TB_PREF."suppliers.email, ".TB_PREF."suppliers.address, ".TB_PREF."suppliers.contact + FROM ".TB_PREF."supp_trans, ".TB_PREF."suppliers + WHERE ".TB_PREF."supp_trans.supplier_id = ".TB_PREF."suppliers.supplier_id + AND ".TB_PREF."supp_trans.type = ".db_escape($type)." + AND ".TB_PREF."supp_trans.trans_no = ".db_escape($trans_no); + $result = db_query($sql, "The remittance cannot be retrieved"); + if (db_num_rows($result) == 0) + return false; + return db_fetch($result); +} + +function get_allocations_for_remittance($supplier_id, $type, $trans_no) +{ + $sql = get_alloc_supp_sql("amt, supp_reference, trans.alloc", "trans.trans_no = alloc.trans_no_to + AND trans.type = alloc.trans_type_to + AND alloc.trans_no_from=".db_escape($trans_no)." + AND alloc.trans_type_from=".db_escape($type)." + AND trans.supplier_id=".db_escape($supplier_id), + TB_PREF."supp_allocations as alloc"); + $sql .= " ORDER BY trans_no"; + return db_query($sql, "Cannot retreive alloc to transactions"); +} + +function print_remittances() +{ + global $path_to_root, $systypes_array; + + include_once($path_to_root . "/reporting/includes/pdf_report.inc"); + + $from = $_POST['PARAM_0']; + $to = $_POST['PARAM_1']; + $currency = $_POST['PARAM_2']; + $email = $_POST['PARAM_3']; + $comments = $_POST['PARAM_4']; + + if ($from == null) + $from = 0; + if ($to == null) + $to = 0; + $dec = user_price_dec(); + + $fno = explode("-", $from); + $tno = explode("-", $to); + + $cols = array(4, 85, 150, 225, 275, 360, 450, 515); + + // $headers in doctext.inc + $aligns = array('left', 'left', 'left', 'left', 'right', 'right', 'right'); + + $params = array('comments' => $comments); + + $cur = get_company_Pref('curr_default'); + + if ($email == 0) + { + $rep = new FrontReport(_('PURCHASE ORDER'), "PurchaseOrderBulk", user_pagesize()); + $rep->currency = $cur; + $rep->Font(); + $rep->Info($params, $cols, null, $aligns); + } + + for ($i = $fno[0]; $i <= $tno[0]; $i++) + { + for ($j = ST_BANKPAYMENT; $j <= ST_SUPPAYMENT; $j = ($j == ST_BANKPAYMENT ? ST_SUPPAYMENT : 999)) + { + $myrow = get_remittance($j, $i); + if (!$myrow) + continue; + $baccount = get_default_bank_account($myrow['curr_code']); + $params['bankaccount'] = $baccount['id']; + + if ($email == 1) + { + $rep = new FrontReport("", "", user_pagesize()); + $rep->currency = $cur; + $rep->Font(); + $rep->title = _('REMITTANCE'); + $rep->filename = "Remittance" . $i . ".pdf"; + $rep->Info($params, $cols, null, $aligns); + } + else + $rep->title = _('REMITTANCE'); + $rep->Header2($myrow, null, $myrow, $baccount, ST_SUPPAYMENT); + $result = get_allocations_for_remittance($myrow['supplier_id'], $myrow['type'], $myrow['trans_no']); + + $total_allocated = 0; + while ($myrow2=db_fetch($result)) + { + $rep->TextCol(0, 1, $systypes_array[$myrow2['type']], -2); + $rep->TextCol(1, 2, $myrow2['supp_reference'], -2); + $rep->TextCol(2, 3, sql2date($myrow2['tran_date']), -2); + $rep->TextCol(3, 4, sql2date($myrow2['due_date']), -2); + $rep->AmountCol(4, 5, $myrow2['Total'], $dec, -2); + $rep->AmountCol(5, 6, $myrow2['Total'] - $myrow2['alloc'], $dec, -2); + $rep->AmountCol(6, 7, $myrow2['amt'], $dec, -2); + + $total_allocated += $myrow2['amt']; + $rep->NewLine(1); + if ($rep->row < $rep->bottomMargin + (15 * $rep->lineHeight)) + $rep->Header2($myrow, null, $myrow, $baccount, ST_SUPPAYMENT); + } + + $rep->row = $rep->bottomMargin + (15 * $rep->lineHeight); + $linetype = true; + $doctype = ST_SUPPAYMENT; + if ($rep->currency != $myrow['curr_code']) + { + include($path_to_root . "/reporting/includes/doctext2.inc"); + } + else + { + include($path_to_root . "/reporting/includes/doctext.inc"); + } + + $rep->TextCol(3, 6, $doc_Total_Allocated, -2); + $rep->AmountCol(6, 7, $total_allocated, $dec, -2); + $rep->NewLine(); + $rep->TextCol(3, 6, $doc_Left_To_Allocate, -2); + $myrow['Total'] *= -1; + $rep->AmountCol(6, 7, $myrow['Total'] - $total_allocated, $dec, -2); + $rep->NewLine(); + $rep->Font('bold'); + $rep->TextCol(3, 6, $doc_Total_Payment, - 2); + $rep->AmountCol(6, 7, $myrow['Total'], $dec, -2); + $rep->Font(); + if ($email == 1) + { + $myrow['contact_email'] = $myrow['email']; + $myrow['DebtorName'] = $myrow['supp_name']; + if ($myrow['contact'] != '') $myrow['DebtorName'] = $myrow['contact']; + $rep->End($email, $doc_Order_no . " " . $myrow['reference'], $myrow); + } + } + } + if ($email == 0) + $rep->End(); +} + +?> \ No newline at end of file diff --git a/reporting/reports_main.php b/reporting/reports_main.php index 650f0db..a36a043 100644 --- a/reporting/reports_main.php +++ b/reporting/reports_main.php @@ -136,6 +136,12 @@ $reports->addReport(_('Supplier'),209,_('Print Purchase &Orders'), _('Currency Filter') => 'CURRENCY', _('Email Customers') => 'YES_NO', _('Comments') => 'TEXTBOX')); +$reports->addReport(_('Supplier'),210,_('Print Remittances'), + array( _('From') => 'REMITTANCE', + _('To') => 'REMITTANCE', + _('Currency Filter') => 'CURRENCY', + _('Email Customers') => 'YES_NO', + _('Comments') => 'TEXTBOX')); $reports->addReportClass(_('Inventory')); $reports->addReport(_('Inventory'),301,_('Inventory &Valuation Report'),