From: Joe Hunt Date: Wed, 6 Feb 2008 14:53:18 +0000 (+0000) Subject: Added Report, Salesman Listing, rep106.php X-Git-Tag: v2.4.2~19^2~2238 X-Git-Url: https://delta.frontaccounting.com/gitweb/?a=commitdiff_plain;h=b76195bf7054d3dcdc215414f9f63887b0ae7a6b;p=fa-stable.git Added Report, Salesman Listing, rep106.php --- diff --git a/CHANGELOG.txt b/CHANGELOG.txt index 1788d48d..a292e98f 100644 --- a/CHANGELOG.txt +++ b/CHANGELOG.txt @@ -19,6 +19,11 @@ Legend: ! -> Note $ -> Affected files +06-Fef-2008 Joe Hunt ++ Added Report, Salesman Listing, rep106.php. +$ /reporting/reports_main.php + /reporting/rep106.php + 06-Feb-2008 Janusz Dobrowolski + Separation of customer invoice issue and goods delivery. + Batch invoicing for more than one delivery diff --git a/reporting/rep106.php b/reporting/rep106.php new file mode 100644 index 00000000..ae3ae54b --- /dev/null +++ b/reporting/rep106.php @@ -0,0 +1,177 @@ +='$fromdate' + AND ".TB_PREF."debtor_trans.tran_date<='$todate' + ORDER BY ".TB_PREF."salesman.salesman_code, ".TB_PREF."debtor_trans.tran_date"; + + return db_query($sql, "Error getting order details"); +} + +//---------------------------------------------------------------------------------------------------- + +function print_salesman_list() +{ + global $path_to_root; + + include_once($path_to_root . "reporting/includes/pdf_report.inc"); + + $from = $_POST['PARAM_0']; + $to = $_POST['PARAM_1']; + $detailed = $_POST['PARAM_2']; + $comments = $_POST['PARAM_3']; + + if ($detailed == 0) + $det = _("No"); + else + $det = _("Yes"); + + $dec = user_qty_dec(); + + $cols = array(0, 60, 150, 220, 325, 385, 450, 515); + + $headers = array(_('Invoice'), _('Customer'), _('Branch'), _('Customer Ref'), + _('Inv Date'), _('Total'), _('Provision')); + + $aligns = array('left', 'left', 'left', 'left', 'left', 'right', 'right'); + + $headers2 = array(_('Salesman'), " ", _('Phone'), _('Email'), _('Provision'), + _('Break Pt.'), _('Provision')." 2"); + + $params = array( 0 => $comments, + 1 => array( 'text' => _('Period'), 'from' => $from, 'to' => $to), + 2 => array( 'text' => _('Detailed'),'from' => $det,'to' => '')); + + $cols2 = $cols; + $aligns2 = $aligns; + + $rep = new FrontReport(_('Salesman Listing'), "SalesmanListing.pdf", user_pagesize()); + $rep->Font(); + $rep->Info($params, $cols, $headers, $aligns, $cols2, $headers2, $aligns2); + + $rep->Header(); + $salesman = 0; + $subtotal = $total = $subprov = $provtotal = 0; + + $result = GetSalesmanTrans($from, $to); + + while ($myrow=db_fetch($result)) + { + if ($rep->row < $rep->bottomMargin + (2 * $rep->lineHeight)) + { + $salesman = 0; + $rep->Header(); + } + $rep->NewLine(0, 2, false, $salesman); + if ($salesman != $myrow['salesman_code']) + { + if ($salesman != 0) + { + $rep->Line($rep->row - 8); + $rep->NewLine(2); + $rep->TextCol(0, 3, _('Total')); + $rep->TextCol(5, 6, number_format2($subtotal, $dec)); + $rep->TextCol(6, 7, number_format2($subprov, $dec)); + $rep->Line($rep->row - 4); + $rep->NewLine(2); + $rep->Line($rep->row); + } + $rep->TextCol(0, 2, $myrow['salesman_code']." ".$myrow['salesman_name']); + $rep->TextCol(2, 3, $myrow['salesman_phone']); + $rep->TextCol(3, 4, $myrow['salesman_email']); + $rep->TextCol(4, 5, number_format2($myrow['provision'], user_percent_dec()) ." %"); + $rep->TextCol(5, 6, number_format2($myrow['break_pt'], $dec)); + $rep->TextCol(6, 7, number_format2($myrow['provision2'], user_percent_dec()) ." %"); + $rep->NewLine(2); + $salesman = $myrow['salesman_code']; + $total += $subtotal; + $provtotal += $subprov; + $subtotal = 0; + $subprov = 0; + } + $date = sql2date($myrow['tran_date']); + $rate = get_exchange_rate_from_home_currency($myrow['curr_code'], $date); + $amt = $myrow['InvoiceTotal'] * $rate; + if ($subprov > $myrow['break_pt'] && $myrow['provision2'] != 0) + $prov = $myrow['provision2'] * $amt / 100; + else + $prov = $myrow['provision'] * $amt / 100; + if ($detailed) + { + $rep->TextCol(0, 1, $myrow['trans_no']); + $rep->TextCol(1, 2, $myrow['DebtorName']); + $rep->TextCol(2, 3, $myrow['br_name']); + $rep->TextCol(3, 4, $myrow['contact_name']); + $rep->TextCol(4, 5, $date); + $rep->TextCol(5, 6, number_format2($amt, $dec)); + $rep->TextCol(6, 7, number_format2($prov, $dec)); + $rep->NewLine(); + if ($rep->row < $rep->bottomMargin + (2 * $rep->lineHeight)) + { + $salesman = 0; + $rep->Header(); + } + } + $subtotal += $amt; + $subprov += $prov; + } + if ($salesman != 0) + { + $rep->Line($rep->row - 4); + $rep->NewLine(2); + $rep->TextCol(0, 3, _('Total')); + $rep->TextCol(5, 6, number_format2($subtotal, $dec)); + $rep->TextCol(6, 7, number_format2($subprov, $dec)); + $rep->Line($rep->row - 4); + $rep->NewLine(2); + //$rep->Line($rep->row); + $total += $subtotal; + $provtotal += $subprov; + } + $rep->fontSize += 2; + $rep->TextCol(0, 3, _('Grand Total')); + $rep->fontSize -= 2; + $rep->TextCol(5, 6, number_format2($total, $dec)); + $rep->TextCol(6, 7, number_format2($provtotal, $dec)); + $rep->Line($rep->row - 4); + $rep->End(); +} + +?> \ No newline at end of file diff --git a/reporting/reports_main.php b/reporting/reports_main.php index 0d6031ed..1eeebdb8 100644 --- a/reporting/reports_main.php +++ b/reporting/reports_main.php @@ -47,6 +47,11 @@ $reports->addReport(_('Customer'),105,_('Order Status Listing'), new ReportParam(_('Stock Location'),'LOCATIONS'), new ReportParam(_('Back Orders Only'),'YES_NO'), new ReportParam(_('Comments'),'TEXTBOX'))); +$reports->addReport(_('Customer'),106,_('Salesman Listing'), + array( new ReportParam(_('Start Date'),'DATEBEGINM'), + new ReportParam(_('End Date'),'DATEENDM'), + new ReportParam(_('Detailed'),'YES_NO'), + new ReportParam(_('Comments'),'TEXTBOX'))); $reports->addReport(_('Customer'),107,_('Print Invoices/Credit Notes'), array( new ReportParam(_('From'),'INVOICE'), new ReportParam(_('To'),'INVOICE'),