本文整理汇总了PHP中FrontReport类的典型用法代码示例。如果您正苦于以下问题:PHP FrontReport类的具体用法?PHP FrontReport怎么用?PHP FrontReport使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了FrontReport类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: print_dimension_summary
function print_dimension_summary()
{
global $path_to_root;
$fromdim = $_POST['PARAM_0'];
$todim = $_POST['PARAM_1'];
$showbal = $_POST['PARAM_2'];
$comments = $_POST['PARAM_3'];
$orientation = $_POST['PARAM_4'];
$destination = $_POST['PARAM_5'];
if ($destination) {
include_once $path_to_root . "/reporting/includes/excel_report.inc";
} else {
include_once $path_to_root . "/reporting/includes/pdf_report.inc";
}
$orientation = $orientation ? 'L' : 'P';
$cols = array(0, 50, 210, 250, 320, 395, 465, 515);
$headers = array(_('Reference'), _('Name'), _('Type'), _('Date'), _('Due Date'), _('Closed'), _('YTD'));
$aligns = array('left', 'left', 'left', 'left', 'left', 'left', 'right');
$params = array(0 => $comments, 1 => array('text' => _('Dimension'), 'from' => get_dimension_string($fromdim), 'to' => get_dimension_string($todim)));
$rep = new FrontReport(_('Dimension Summary'), "DimensionSummary", user_pagesize(), 9, $orientation);
if ($orientation == 'L') {
recalculate_cols($cols);
}
$rep->Font();
$rep->Info($params, $cols, $headers, $aligns);
$rep->NewPage();
$res = getTransactions($fromdim, $todim);
while ($trans = db_fetch($res)) {
$rep->TextCol(0, 1, $trans['reference']);
$rep->TextCol(1, 2, $trans['name']);
$rep->TextCol(2, 3, $trans['type_']);
$rep->DateCol(3, 4, $trans['date_'], true);
$rep->DateCol(4, 5, $trans['due_date'], true);
if ($trans['closed']) {
$str = _('Yes');
} else {
$str = _('No');
}
$rep->TextCol(5, 6, $str);
if ($showbal) {
$balance = getYTD($trans['id']);
$rep->AmountCol(6, 7, $balance, 0);
}
$rep->NewLine(1, 2);
}
$rep->Line($rep->row);
$rep->End();
}
示例2: print_work_order_listing
function print_work_order_listing()
{
global $path_to_root, $wo_types_array;
$item = $_POST['PARAM_0'];
$location = $_POST['PARAM_1'];
$open_only = $_POST['PARAM_2'];
$comments = $_POST['PARAM_3'];
$orientation = $_POST['PARAM_4'];
$destination = $_POST['PARAM_5'];
if ($destination) {
include_once $path_to_root . "/reporting/includes/excel_report.inc";
} else {
include_once $path_to_root . "/reporting/includes/pdf_report.inc";
}
$orientation = $orientation ? 'L' : 'P';
if ($item == '') {
$items = _('All');
} else {
$row = get_item($item);
$items = $row['description'];
}
if ($location == '') {
$loc = _('All');
} else {
$loc = get_location_name($location);
}
$open = $open_only == 1 ? _('Yes') : _('No');
$cols = array(0, 100, 120, 165, 210, 275, 315, 375, 385, 440, 495, 555);
$headers = array(_('Type'), '#', 'Reference', _('Location'), _('Item'), _('Required'), _('Manufactured'), ' ', _('Date'), _('Required By'), _('Closed'));
$aligns = array('left', 'left', 'left', 'left', 'left', 'right', 'right', 'left', 'left', 'left', 'left');
$params = array(0 => $comments, 1 => array('text' => _('Items'), 'from' => $items, 'to' => ''), 2 => array('text' => _('Location'), 'from' => $loc, 'to' => ''), 3 => array('text' => _('Open Only'), 'from' => $open, 'to' => ''));
$rep = new FrontReport(_('Work Order Listing'), "WorkOrderListing", user_pagesize(), 9, $orientation);
if ($orientation == 'L') {
recalculate_cols($cols);
}
$rep->Font();
$rep->Info($params, $cols, $headers, $aligns);
$rep->NewPage();
$res = getTransactions($item, $open_only, $location);
while ($trans = db_fetch($res)) {
$rep->TextCol(0, 1, $wo_types_array[$trans['type']]);
$rep->TextCol(1, 2, $trans['id'], -1);
$rep->TextCol(2, 3, $trans['wo_ref'], -1);
$rep->TextCol(3, 4, $trans['location_name'], -1);
$rep->TextCol(4, 5, $trans['description'], -1);
$dec = get_qty_dec($trans['stock_id']);
$rep->AmountCol(5, 6, $trans['units_reqd'], $dec);
$rep->AmountCol(6, 7, $trans['units_issued'], $dec);
$rep->TextCol(7, 8, '', -1);
$rep->TextCol(8, 9, sql2date($trans['date_']), -1);
$rep->TextCol(9, 10, sql2date($trans['required_by']), -1);
$rep->TextCol(10, 11, $trans['closed'] ? ' ' : _('No'), -1);
$rep->NewLine();
}
$rep->Line($rep->row);
$rep->End();
}
示例3: printYearlyPurch
function printYearlyPurch()
{
global $path_to_root, $systypes_array;
///$from = $_POST['PARAM_0'];
$to = $_POST['PARAM_1'];
/*$fromcust = $_POST['PARAM_2'];
$show_balance = $_POST['PARAM_3'];
$currency = $_POST['PARAM_4'];
$no_zeros = $_POST['PARAM_5'];
$comments = $_POST['PARAM_6'];
//$orientation = $_POST['PARAM_7'];*/
$destination = $_POST['PARAM_3'];
if ($destination) {
include_once $path_to_root . "/reporting/includes/excel_report.inc";
} else {
include_once $path_to_root . "/reporting/includes/pdf_report.inc";
}
$orientation = 'L';
//incrementing dapat
$cols = array(0, 20, 55, 85, 125, 200, 230, 260, 290, 325, 350, 375, 425, 475);
//14 headers + 1 lagi dapat for cols
//todo: format date paid to 2 digits representation only i.e. 12/12/12
$headers = array(_('CV#'), _('Date Paid'), _('OR #'), _('Supplier'), _('Title of Book'), _('Quantity'), _('Unit Cost'), _('Amount'), _('With Tax'), _('Net'), _('PO #'), _('Stock Supplied'), _('Stock Amount'), _('Total Amount'));
$aligns = array('left', 'left', 'left', 'left', 'left', 'left', 'left', 'left', 'left', 'left', 'left', 'left', 'left', 'left');
$params = null;
//todo: modify concatenation of $to to include only year, not the whole date
$rep = new FrontReport(_('Purchases for the year ' . $to), "Purchases Year " . $to, user_pagesize(), 9, $orientation);
if ($orientation == 'L') {
recalculate_cols($cols);
}
$rep->Font();
$rep->Info($params, $cols, $headers, $aligns);
$rep->NewPage();
$grandtotal = array(0, 0, 0, 0);
$rep->NewLine();
$rep->End();
}
示例4: print_deliveries
function print_deliveries()
{
global $path_to_root, $packing_slip, $alternative_tax_include_on_docs, $suppress_tax_rates, $no_zero_lines_amount;
include_once $path_to_root . "/reporting/includes/pdf_report.inc";
$from = $_POST['PARAM_0'];
$to = $_POST['PARAM_1'];
$email = $_POST['PARAM_2'];
$packing_slip = $_POST['PARAM_3'];
$comments = $_POST['PARAM_4'];
$orientation = $_POST['PARAM_5'];
if (!$from || !$to) {
return;
}
$orientation = $orientation ? 'L' : 'P';
$dec = user_price_dec();
$fno = explode("-", $from);
$tno = explode("-", $to);
$from = min($fno[0], $tno[0]);
$to = max($fno[0], $tno[0]);
$cols = array(4, 60, 225, 300, 325, 385, 450, 515);
// $headers in doctext.inc
$aligns = array('left', 'left', 'right', 'left', 'right', 'right', 'right');
$params = array('comments' => $comments);
$cur = get_company_Pref('curr_default');
if ($email == 0) {
if ($packing_slip == 0) {
$rep = new FrontReport(_('DELIVERY'), "DeliveryNoteBulk", user_pagesize(), 9, $orientation);
} else {
$rep = new FrontReport(_('PACKING SLIP'), "PackingSlipBulk", user_pagesize(), 9, $orientation);
}
}
if ($orientation == 'L') {
recalculate_cols($cols);
}
for ($i = $from; $i <= $to; $i++) {
if (!exists_customer_trans(ST_CUSTDELIVERY, $i)) {
continue;
}
$myrow = get_customer_trans($i, ST_CUSTDELIVERY);
$branch = get_branch($myrow["branch_code"]);
$sales_order = get_sales_order_header($myrow["order_"], ST_SALESORDER);
// ?
if ($email == 1) {
$rep = new FrontReport("", "", user_pagesize(), 9, $orientation);
if ($packing_slip == 0) {
$rep->title = _('DELIVERY NOTE');
$rep->filename = "Delivery" . $myrow['reference'] . ".pdf";
} else {
$rep->title = _('PACKING SLIP');
$rep->filename = "Packing_slip" . $myrow['reference'] . ".pdf";
}
}
$rep->SetHeaderType('Header2');
$rep->currency = $cur;
$rep->Font();
$rep->Info($params, $cols, null, $aligns);
$contacts = get_branch_contacts($branch['branch_code'], 'delivery', $branch['debtor_no'], true);
$rep->SetCommonData($myrow, $branch, $sales_order, '', ST_CUSTDELIVERY, $contacts);
$rep->NewPage();
$result = get_customer_trans_details(ST_CUSTDELIVERY, $i);
$SubTotal = 0;
while ($myrow2 = db_fetch($result)) {
if ($myrow2["quantity"] == 0) {
continue;
}
$Net = round2((1 - $myrow2["discount_percent"]) * $myrow2["unit_price"] * $myrow2["quantity"], user_price_dec());
$SubTotal += $Net;
$DisplayPrice = number_format2($myrow2["unit_price"], $dec);
$DisplayQty = number_format2($myrow2["quantity"], get_qty_dec($myrow2['stock_id']));
$DisplayNet = number_format2($Net, $dec);
if ($myrow2["discount_percent"] == 0) {
$DisplayDiscount = "";
} else {
$DisplayDiscount = number_format2($myrow2["discount_percent"] * 100, user_percent_dec()) . "%";
}
$rep->TextCol(0, 1, $myrow2['stock_id'], -2);
$oldrow = $rep->row;
$rep->TextColLines(1, 2, $myrow2['StockDescription'], -2);
$newrow = $rep->row;
$rep->row = $oldrow;
if ($Net != 0.0 || !is_service($myrow2['mb_flag']) || !isset($no_zero_lines_amount) || $no_zero_lines_amount == 0) {
$rep->TextCol(2, 3, $DisplayQty, -2);
$rep->TextCol(3, 4, $myrow2['units'], -2);
if ($packing_slip == 0) {
$rep->TextCol(4, 5, $DisplayPrice, -2);
$rep->TextCol(5, 6, $DisplayDiscount, -2);
$rep->TextCol(6, 7, $DisplayNet, -2);
}
}
$rep->row = $newrow;
//$rep->NewLine(1);
if ($rep->row < $rep->bottomMargin + 15 * $rep->lineHeight) {
$rep->NewPage();
}
}
$memo = get_comments_string(ST_CUSTDELIVERY, $i);
if ($memo != "") {
$rep->NewLine();
$rep->TextColLines(1, 5, $memo, -2);
}
//.........这里部分代码省略.........
示例5: inventory_movements
function inventory_movements()
{
global $path_to_root;
$from_date = $_POST['PARAM_0'];
$to_date = $_POST['PARAM_1'];
$category = $_POST['PARAM_2'];
$location = $_POST['PARAM_3'];
$comments = $_POST['PARAM_4'];
$orientation = $_POST['PARAM_5'];
$destination = $_POST['PARAM_6'];
if ($destination) {
include_once $path_to_root . "/reporting/includes/excel_report.inc";
} else {
include_once $path_to_root . "/reporting/includes/pdf_report.inc";
}
$orientation = $orientation ? 'L' : 'P';
if ($category == ALL_NUMERIC) {
$category = 0;
}
if ($category == 0) {
$cat = _('All');
} else {
$cat = get_category_name($category);
}
if ($location == '') {
$loc = _('All');
} else {
$loc = get_location_name($location);
}
$cols = array(0, 60, 130, 160, 185, 215, 250, 275, 305, 340, 365, 395, 430, 455, 485, 520);
$headers = array(_('Category'), _('Description'), _('UOM'), '', '', _('OpeningStock'), '', '', _('StockIn'), '', '', _('Delivery'), '', '', _('ClosingStock'));
$headers2 = array("", "", "", _("QTY"), _("Rate"), _("Value"), _("QTY"), _("Rate"), _("Value"), _("QTY"), _("Rate"), _("Value"), _("QTY"), _("Rate"), _("Value"));
$aligns = array('left', 'left', 'left', 'right', 'right', 'right', 'right', 'right', 'right', 'right', 'right', 'right', 'right', 'right', 'right');
$params = array(0 => $comments, 1 => array('text' => _('Period'), 'from' => $from_date, 'to' => $to_date), 2 => array('text' => _('Category'), 'from' => $cat, 'to' => ''), 3 => array('text' => _('Location'), 'from' => $loc, 'to' => ''));
$rep = new FrontReport(_('Costed Inventory Movements'), "CostedInventoryMovements", user_pagesize(), 8, $orientation);
if ($orientation == 'L') {
recalculate_cols($cols);
}
$rep->Font();
$rep->Info($params, $cols, $headers2, $aligns, $cols, $headers, $aligns);
$rep->NewPage();
$totval_open = $totval_in = $totval_out = $totval_close = 0;
$result = fetch_items($category);
$dec = user_price_dec();
$catgor = '';
while ($myrow = db_fetch($result)) {
if ($catgor != $myrow['description']) {
$rep->NewLine(2);
$rep->fontSize += 2;
$rep->TextCol(0, 3, $myrow['category_id'] . " - " . $myrow['description']);
$catgor = $myrow['description'];
$rep->fontSize -= 2;
$rep->NewLine();
}
$rep->NewLine();
$rep->TextCol(0, 1, $myrow['stock_id']);
$rep->TextCol(1, 2, $myrow['name']);
$rep->TextCol(2, 3, $myrow['units']);
$qoh_start = get_qoh_on_date($myrow['stock_id'], $location, add_days($from_date, -1));
$qoh_end = get_qoh_on_date($myrow['stock_id'], $location, $to_date);
$inward = trans_qty($myrow['stock_id'], $location, $from_date, $to_date);
$outward = trans_qty($myrow['stock_id'], $location, $from_date, $to_date, false);
$openCost = avg_unit_cost($myrow['stock_id'], $location, $from_date);
$unitCost = avg_unit_cost($myrow['stock_id'], $location, add_days($to_date, 1));
$rep->AmountCol(3, 4, $qoh_start, get_qty_dec($myrow['stock_id']));
$rep->AmountCol(4, 5, $openCost, $dec);
$openCost *= $qoh_start;
$totval_open += $openCost;
$rep->AmountCol(5, 6, $openCost);
if ($inward > 0) {
$rep->AmountCol(6, 7, $inward, get_qty_dec($myrow['stock_id']));
$unitCost_in = trans_qty_unit_cost($myrow['stock_id'], $location, $from_date, $to_date);
$rep->AmountCol(7, 8, $unitCost_in, $dec);
$unitCost_in *= $inward;
$totval_in += $unitCost_in;
$rep->AmountCol(8, 9, $unitCost_in);
}
if ($outward > 0) {
$rep->AmountCol(9, 10, $outward, get_qty_dec($myrow['stock_id']));
$unitCost_out = trans_qty_unit_cost($myrow['stock_id'], $location, $from_date, $to_date, false);
$rep->AmountCol(10, 11, $unitCost_out, $dec);
$unitCost_out *= $outward;
$totval_out += $unitCost_out;
$rep->AmountCol(11, 12, $unitCost_out);
}
$rep->AmountCol(12, 13, $qoh_end, get_qty_dec($myrow['stock_id']));
$rep->AmountCol(13, 14, $unitCost, $dec);
$unitCost *= $qoh_end;
$totval_close += $unitCost;
$rep->AmountCol(14, 15, $unitCost);
$rep->NewLine(0, 1);
}
$rep->Line($rep->row - 4);
$rep->NewLine(2);
$rep->TextCol(0, 1, _("Total"));
$rep->AmountCol(5, 6, $totval_open);
$rep->AmountCol(8, 9, $totval_in);
$rep->AmountCol(11, 12, $totval_out);
$rep->AmountCol(14, 15, $totval_close);
$rep->Line($rep->row - 4);
//.........这里部分代码省略.........
示例6: print_inventory_sales
function print_inventory_sales()
{
global $path_to_root;
$from = $_POST['PARAM_0'];
$destination = $_POST['PARAM_1'];
if ($destination) {
include_once $path_to_root . "/reporting/includes/excel_report.inc";
} else {
include_once $path_to_root . "/reporting/includes/pdf_report.inc";
}
$dec = user_price_dec();
if ($category == ALL_NUMERIC) {
$category = 0;
}
if ($category == 0) {
$cat = _('All');
} else {
$cat = get_category_name($category);
}
$cols = array(0, 50, 100, 150, 200, 250, 300, 350, 400, 450, 500, 550, 600, 650, 700, 750, 800, 850, 900, 950, 1000, 1050, 1100, 1150, 1200);
$headers = array(_('Date'), _('Client Name'), _('IMC'), _('Charge'), _('Sales'), _('Date'), _('CM#'), _('Returns'), _(''), _('Discount'), _('Balance'), _('Date'), _('PR/OR#'), _('Date'), _('OR #'), _('Amount'), _('Partial'), _('Balance'), _('Date'), _(''), _('Commission'), _('w/tax'), _('Net Commission'));
$header2 = array(_(''), '', '', _('Invoice'), _('Amount'), _(''), _(''), _(''), _(''), _(''), _(''), _(''), _(''), _(''), _(''), _(''), _(''), _(''), _(''), _(''), '', _(''), _(''));
$aligns = array('left', 'center', 'center', 'center', 'right', 'right', 'right', 'right', 'right', 'right', 'right', 'right', 'right', 'right', 'right');
$params = array(0 => $comments, 1 => array('text' => _('Period'), 'from' => $from, 'to' => $to), 2 => array('text' => _('Category'), 'from' => $cat, 'to' => ''));
$rep = new FrontReport(_('Series Report'), "SeriesReport", user_pagesize(), 8, 'L');
$rep->Font();
$rep->Info($params, $cols, $header2, $aligns, $cols, $headers, $aligns);
$rep->NewPage();
$total = $grandtotal = 0.0;
$total1 = $grandtotal1 = 0.0;
$total2 = $grandtotal2 = 0.0;
$catt = '';
$res = getTransactions($imc, $from);
while ($myrow = db_fetch($res)) {
$company_data = get_company_prefs();
$branch = get_branch($myrow["branch_code"]);
$branch_data = get_branch_accounts($myrow['branch_code']);
$dt = get_discount($branch_data['sales_discount_account'], $myrow['type'], $myrow['trans_no']);
$salesman = get_imc_code($myrow['branch_code']);
$res2 = get_return_details($myrow['order_']);
$returns = 0;
$rtn_dt = 0;
$credit_num = "";
$cm_date = "";
$num = db_num_rows($res2);
$var = array();
while ($myrow2 = db_fetch($res2)) {
$returns += $myrow2['ov_amount'];
if ($num > 1) {
$credit_num .= $myrow2['customized_no'] . "/";
$cm_date = $myrow2['tran_date'] . "/";
} else {
$credit_num .= $myrow2['customized_no'];
$cm_date = $myrow2['tran_date'];
}
$var = array($myrow2['trans_no']);
//$res2 = get_return_discount($branch_data['sales_discount_account'], $myrow2['type'], $myrow2['trans_no']);
// while ($myrow3 = db_fetch($res2)){
// $rtn_dt += abs($myrow3['amount']);
// }
}
foreach ($var as $vars) {
$res2 = get_return_discount($branch_data['sales_discount_account'], ST_CUSTCREDIT, $vars);
while ($myrow3 = db_fetch($res2)) {
$rtn_dt += abs($myrow3['amount']);
}
}
$total_returns = $returns + $rtn_dt;
$return_discount = $rtn_dt / $total_returns * 100;
//$discount = $myrow['discount'];
$invoicetot = $myrow['ov_amount'] + $dt;
$invoice_discount = $dt / $invoicetot * 100;
$sales_discount = ($invoicetot - $total_returns) * ($invoice_discount / 100);
$net_sales = $invoicetot - $total_returns - $sales_discount;
$gross_commission = ($invoicetot - $total_returns) * ($myrow['commission'] / 100);
$tot_invoice = $invoicetot - $invoicetot * ($invoice_discount / 100);
$sample = $invoicetot - $total_returns;
$rep->TextCol(0, 1, $myrow['tranDate']);
$rep->TextCol(1, 2, $myrow['br_name']);
$rep->TextCol(2, 3, $salesman);
$rep->TextCol(3, 4, $myrow['customized_no']);
if ($myrow['IsVoid'] == '') {
$rep->AmountCol(4, 5, $invoicetot, 2);
$rep->TextCol(5, 6, $cm_date);
$rep->TextCol(6, 7, $credit_num);
if ($total_returns != 0) {
$rep->AmountCol(7, 8, $total_returns, 2);
}
if ($invoice_discount < 0) {
$rep->TextCol(8, 9, "CLIENT SALES/SALES DISCOUNT NOT DEFINED.");
} else {
$rep->TextCol(8, 9, $invoice_discount . "%");
}
if ($sales_discount < 0) {
$rep->TextCol(9, 10, "ERROR.");
} else {
if ($sales_discount != 0) {
$rep->AmountCol(9, 10, $sales_discount, 2);
}
}
//.........这里部分代码省略.........
示例7: print_stock_check
function print_stock_check()
{
global $path_to_root, $pic_height;
$category = $_POST['PARAM_0'];
$location = $_POST['PARAM_1'];
$pictures = $_POST['PARAM_2'];
$check = $_POST['PARAM_3'];
$shortage = $_POST['PARAM_4'];
$no_zeros = $_POST['PARAM_5'];
$like = $_POST['PARAM_6'];
$comments = $_POST['PARAM_7'];
$orientation = $_POST['PARAM_8'];
$destination = $_POST['PARAM_9'];
if ($destination) {
include_once $path_to_root . "/reporting/includes/excel_report.inc";
} else {
include_once $path_to_root . "/reporting/includes/pdf_report.inc";
}
$orientation = $orientation ? 'L' : 'P';
if ($category == ALL_NUMERIC) {
$category = 0;
}
if ($category == 0) {
$cat = _('All');
} else {
$cat = get_category_name($category);
}
if ($location == ALL_TEXT) {
$location = 'all';
}
if ($location == 'all') {
$loc = _('All');
} else {
$loc = get_location_name($location);
}
if ($shortage) {
$short = _('Yes');
$available = _('Shortage');
} else {
$short = _('No');
$available = _('Available');
}
if ($no_zeros) {
$nozeros = _('Yes');
} else {
$nozeros = _('No');
}
if ($check) {
$cols = array(0, 75, 225, 250, 295, 345, 390, 445, 515);
$headers = array(_('Stock ID'), _('Description'), _('UOM'), _('Quantity'), _('Check'), _('Demand'), $available, _('On Order'));
$aligns = array('left', 'left', 'left', 'right', 'right', 'right', 'right', 'right');
} else {
$cols = array(0, 75, 225, 250, 315, 380, 445, 515);
$headers = array(_('Stock ID'), _('Description'), _('UOM'), _('Quantity'), _('Demand'), $available, _('On Order'));
$aligns = array('left', 'left', 'left', 'right', 'right', 'right', 'right');
}
$params = array(0 => $comments, 1 => array('text' => _('Category'), 'from' => $cat, 'to' => ''), 2 => array('text' => _('Location'), 'from' => $loc, 'to' => ''), 3 => array('text' => _('Only Shortage'), 'from' => $short, 'to' => ''), 4 => array('text' => _('Suppress Zeros'), 'from' => $nozeros, 'to' => ''));
if ($pictures) {
$user_comp = user_company();
} else {
$user_comp = "";
}
$rep = new FrontReport(_('Stock Check Sheets'), "StockCheckSheet", user_pagesize(), 9, $orientation);
if ($orientation == 'L') {
recalculate_cols($cols);
}
$rep->Font();
$rep->Info($params, $cols, $headers, $aligns);
$rep->NewPage();
$res = getTransactions($category, $location, $like);
$catt = '';
while ($trans = db_fetch($res)) {
if ($location == 'all') {
$loc_code = "";
} else {
$loc_code = $location;
}
$demandqty = get_demand_qty($trans['stock_id'], $loc_code);
$demandqty += get_demand_asm_qty($trans['stock_id'], $loc_code);
$onorder = get_on_porder_qty($trans['stock_id'], $loc_code);
$flag = get_mb_flag($trans['stock_id']);
if ($flag == 'M') {
$onorder += get_on_worder_qty($trans['stock_id'], $loc_code);
}
if ($no_zeros && $trans['QtyOnHand'] == 0 && $demandqty == 0 && $onorder == 0) {
continue;
}
if ($shortage && $trans['QtyOnHand'] - $demandqty >= 0) {
continue;
}
if ($catt != $trans['cat_description']) {
if ($catt != '') {
$rep->Line($rep->row - 2);
$rep->NewLine(2, 3);
}
$rep->TextCol(0, 1, $trans['category_id']);
$rep->TextCol(1, 2, $trans['cat_description']);
$catt = $trans['cat_description'];
$rep->NewLine();
}
//.........这里部分代码省略.........
示例8: print_inventory_planning
function print_inventory_planning()
{
global $path_to_root;
$category = $_POST['PARAM_0'];
$location = $_POST['PARAM_1'];
$comments = $_POST['PARAM_2'];
$orientation = $_POST['PARAM_3'];
$destination = $_POST['PARAM_4'];
if ($destination) {
include_once $path_to_root . "/reporting/includes/excel_report.inc";
} else {
include_once $path_to_root . "/reporting/includes/pdf_report.inc";
}
$orientation = $orientation ? 'L' : 'P';
if ($category == ALL_NUMERIC) {
$category = 0;
}
if ($category == 0) {
$cat = _('All');
} else {
$cat = get_category_name($category);
}
if ($location == ALL_TEXT) {
$location = 'all';
}
if ($location == 'all') {
$loc = _('All');
} else {
$loc = get_location_name($location);
}
$cols = array(0, 50, 150, 180, 210, 240, 270, 300, 330, 390, 435, 480, 525);
$per0 = strftime('%b', mktime(0, 0, 0, date('m'), 1, date('Y')));
$per1 = strftime('%b', mktime(0, 0, 0, date('m') - 1, 1, date('Y')));
$per2 = strftime('%b', mktime(0, 0, 0, date('m') - 2, 1, date('Y')));
$per3 = strftime('%b', mktime(0, 0, 0, date('m') - 3, 1, date('Y')));
$per4 = strftime('%b', mktime(0, 0, 0, date('m') - 4, 1, date('Y')));
$headers = array(_('Category'), '', $per4, $per3, $per2, $per1, $per0, '3*M', _('QOH'), _('Cust Ord'), _('Supp Ord'), _('Sugg Ord'));
$aligns = array('left', 'left', 'right', 'right', 'right', 'right', 'right', 'right', 'right', 'right', 'right', 'right');
$params = array(0 => $comments, 1 => array('text' => _('Category'), 'from' => $cat, 'to' => ''), 2 => array('text' => _('Location'), 'from' => $loc, 'to' => ''));
$rep = new FrontReport(_('Inventory Planning Report'), "InventoryPlanning", user_pagesize(), 9, $orientation);
if ($orientation == 'L') {
recalculate_cols($cols);
}
$rep->Font();
$rep->Info($params, $cols, $headers, $aligns);
$rep->NewPage();
$res = getTransactions($category, $location);
$catt = '';
while ($trans = db_fetch($res)) {
if ($catt != $trans['cat_description']) {
if ($catt != '') {
$rep->Line($rep->row - 2);
$rep->NewLine(2, 3);
}
$rep->TextCol(0, 1, $trans['category_id']);
$rep->TextCol(1, 2, $trans['cat_description']);
$catt = $trans['cat_description'];
$rep->NewLine();
}
if ($location == 'all') {
$loc_code = "";
} else {
$loc_code = $location;
}
$custqty = get_demand_qty($trans['stock_id'], $loc_code);
$custqty += get_demand_asm_qty($trans['stock_id'], $loc_code);
$suppqty = get_on_porder_qty($trans['stock_id'], $loc_code);
$suppqty += get_on_worder_qty($trans['stock_id'], $loc_code);
$period = getPeriods($trans['stock_id'], $trans['loc_code']);
$rep->NewLine();
$dec = get_qty_dec($trans['stock_id']);
$rep->TextCol(0, 1, $trans['stock_id']);
$rep->TextCol(1, 2, $trans['description'] . ($trans['inactive'] == 1 ? " (" . _("Inactive") . ")" : ""), -1);
$rep->AmountCol(2, 3, $period['prd0'], $dec);
$rep->AmountCol(3, 4, $period['prd1'], $dec);
$rep->AmountCol(4, 5, $period['prd2'], $dec);
$rep->AmountCol(5, 6, $period['prd3'], $dec);
$rep->AmountCol(6, 7, $period['prd4'], $dec);
$MaxMthSales = Max($period['prd0'], $period['prd1'], $period['prd2'], $period['prd3']);
$IdealStockHolding = $MaxMthSales * 3;
$rep->AmountCol(7, 8, $IdealStockHolding, $dec);
$rep->AmountCol(8, 9, $trans['qty_on_hand'], $dec);
$rep->AmountCol(9, 10, $custqty, $dec);
$rep->AmountCol(10, 11, $suppqty, $dec);
$SuggestedTopUpOrder = $IdealStockHolding - $trans['qty_on_hand'] + $custqty - $suppqty;
if ($SuggestedTopUpOrder < 0.0) {
$SuggestedTopUpOrder = 0.0;
}
$rep->AmountCol(11, 12, $SuggestedTopUpOrder, $dec);
}
$rep->Line($rep->row - 4);
$rep->NewLine();
$rep->End();
}
示例9: print_inventory_sales
function print_inventory_sales()
{
global $path_to_root;
$from = $_POST['PARAM_0'];
$destination = $_POST['PARAM_1'];
if ($destination) {
include_once $path_to_root . "/reporting/includes/excel_report.inc";
} else {
include_once $path_to_root . "/reporting/includes/pdf_report.inc";
}
$dec = user_price_dec();
if ($category == ALL_NUMERIC) {
$category = 0;
}
if ($category == 0) {
$cat = _('All');
} else {
$cat = get_category_name($category);
}
$cols = array(0, 50, 100, 150, 200, 250, 300, 350, 400, 450, 500, 550, 600, 650, 700, 750, 800, 850, 900, 950, 1000, 1050, 1100, 1150, 1200);
$headers = array(_('Date'), _('Client Name'), _('IMC'), _('Charge'), _('Sales'), _('Date'), _('CM#'), _('Returns'), _(''), _('Discount'), _('Balance'), _('Date'), _('PR/OR#'), _('Date'), _('OR #'), _('Partial'), _('Net'), _('Balance'), _('Date'), _(''), _('Commission'), _('w/tax'), _('Net Commission'));
$header2 = array(_(''), '', '', _('Invoice'), _('Amount'), _(''), _(''), _(''), _(''), _(''), _(''), _(''), _(''), _(''), _(''), _(''), _(''), _(''), _(''), _(''), '', _(''), _(''));
$aligns = array('left', 'center', 'center', 'center', 'right', 'right', 'right', 'right', 'right', 'right', 'right', 'right', 'right', 'right', 'right');
$params = array(0 => $comments, 1 => array('text' => _('Period'), 'from' => $from, 'to' => $to), 2 => array('text' => _('Category'), 'from' => $cat, 'to' => ''));
$rep = new FrontReport(_('Series Report'), "Series Report", user_pagesize(), 8, 'L');
$rep->Font();
$rep->Info($params, $cols, $header2, $aligns, $cols, $headers, $aligns);
$rep->NewPage();
$total = $grandtotal = 0.0;
$total1 = $grandtotal1 = 0.0;
$total2 = $grandtotal2 = 0.0;
$catt = '';
$res = getTransactions($imc, $from);
while ($myrow = db_fetch($res)) {
$company_data = get_company_prefs();
$branch = get_branch($myrow["branch_code"]);
$branch_data = get_branch_accounts($myrow['branch_code']);
$dt = get_discount($branch_data['sales_discount_account'], $myrow['type'], $myrow['trans_no']);
$salesman = get_imc_code($myrow['branch_code']);
$res2 = get_return_details($myrow['order_']);
$returns = 0;
$rtn_dt = 0;
while ($myrow2 = db_fetch($res2)) {
$returns += $myrow2['ov_amount'];
$credit_num = $myrow2['customized_no'];
$cm_date = $myrow2['tran_date'];
$res2 = get_return_discount($branch_data['sales_discount_account'], $myrow2['type'], $myrow2['trans_no']);
while ($myrow3 = db_fetch($res2)) {
$rtn_dt += abs($myrow3['amount']);
}
}
$total_returns = $returns + $rtn_dt;
$return_discount = $rtn_dt / $total_returns * 100;
$discount = $myrow['discount'];
$invoicetot = $myrow['ov_amount'] + $dt;
$sales_discount = ($invoicetot - $total_returns) * ($return_discount / 100);
$net_sales = $invoicetot - $total_returns - $sales_discount;
$gross_commission = ($invoicetot - $total_returns) * ($myrow['commission'] / 100);
$rep->TextCol(0, 1, $myrow['tran_date']);
$rep->TextCol(1, 2, $myrow['br_name']);
$rep->TextCol(2, 3, $salesman);
$rep->TextCol(3, 4, $myrow['customized_no']);
$rep->AmountCol(4, 5, $invoicetot, 2);
$rep->TextCol(5, 6, $cm_date);
$rep->TextCol(6, 7, $credit_num);
$rep->AmountCol(7, 8, $total_returns, 2);
$rep->TextCol(8, 9, $return_discount . "%");
$rep->AmountCol(9, 10, $sales_discount, 2);
$rep->AmountCol(10, 11, $net_sales, 2);
$rep->TextCol(18, 19, $myrow['date']);
$rep->TextCol(19, 20, $myrow['commission'] . "%");
$rep->AmountCol(20, 21, $gross_commission, 2);
$rep->AmountCol(21, 22, $myrow['with_tax'], 2);
$rep->AmountCol(22, 23, $myrow['net_commission'], 2);
$or = get_pr_details($myrow['type'], $myrow['trans_no']);
while ($pr = db_fetch($or)) {
$net_remittance = $net_sales - $pr['amt'];
$rep->TextCol(11, 12, $pr['date_alloc']);
$rep->TextCol(12, 13, $pr['customized_no']);
$rep->TextCol(13, 14, _("DATE"));
$rep->TextCol(14, 15, _("OR#"));
$rep->TextCol(15, 16, "");
$rep->AmountCol(17, 18, '', 2);
}
$rep->NewLine();
//
}
$rep->NewLine();
$rep->End();
}
示例10: print_salesman_list
function print_salesman_list()
{
global $path_to_root;
include_once $path_to_root . "reporting/includes/pdf_report.inc";
$from = $_REQUEST['PARAM_0'];
$to = $_REQUEST['PARAM_1'];
$summary = $_REQUEST['PARAM_2'];
$comments = $_REQUEST['PARAM_3'];
if ($summary == 0) {
$sum = tr("No");
} else {
$sum = tr("Yes");
}
$dec = user_qty_dec();
$cols = array(0, 60, 150, 220, 325, 385, 450, 515);
$headers = array(tr('Invoice'), tr('Customer'), tr('Branch'), tr('Customer Ref'), tr('Inv Date'), tr('Total'), tr('Provision'));
$aligns = array('left', 'left', 'left', 'left', 'left', 'right', 'right');
$headers2 = array(tr('Salesman'), " ", tr('Phone'), tr('Email'), tr('Provision'), tr('Break Pt.'), tr('Provision') . " 2");
$params = array(0 => $comments, 1 => array('text' => tr('Period'), 'from' => $from, 'to' => $to), 2 => array('text' => tr('Summary Only'), 'from' => $sum, 'to' => ''));
$cols2 = $cols;
$aligns2 = $aligns;
$rep = new FrontReport(tr('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, tr('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 (!$summary) {
$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, tr('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, tr('Grand Total'));
$rep->fontSize -= 2;
$rep->TextCol(5, 6, number_format2($total, $dec));
$rep->TextCol(6, 7, number_format2($provtotal, $dec));
//.........这里部分代码省略.........
示例11: print_remittances
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'];
$orientation = $_POST['PARAM_5'];
if (!$from || !$to) {
return;
}
$orientation = $orientation ? 'L' : 'P';
$dec = user_price_dec();
$fno = explode("-", $from);
$tno = explode("-", $to);
$from = min($fno[0], $tno[0]);
$to = max($fno[0], $tno[0]);
$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(_('REMITTANCE'), "RemittanceBulk", user_pagesize(), 9, $orientation);
}
if ($orientation == 'L') {
recalculate_cols($cols);
}
for ($i = $from; $i <= $to; $i++) {
if ($fno[0] == $tno[0]) {
$types = array($fno[1]);
} else {
$types = array(ST_BANKPAYMENT, ST_SUPPAYMENT, ST_SUPPCREDIT);
}
foreach ($types as $j) {
$myrow = get_remittance($j, $i);
if (!$myrow) {
continue;
}
$res = get_bank_trans($j, $i);
$baccount = db_fetch($res);
$params['bankaccount'] = $baccount['bank_act'];
if ($email == 1) {
$rep = new FrontReport("", "", user_pagesize(), 9, $orientation);
$rep->title = _('REMITTANCE');
$rep->filename = "Remittance" . $i . ".pdf";
}
$rep->SetHeaderType('Header2');
$rep->currency = $cur;
$rep->Font();
$rep->Info($params, $cols, null, $aligns);
$contacts = get_supplier_contacts($myrow['supplier_id'], 'invoice');
$rep->SetCommonData($myrow, null, $myrow, $baccount, ST_SUPPAYMENT, $contacts);
$rep->NewPage();
$result = get_allocations_for_remittance($myrow['supplier_id'], $myrow['type'], $myrow['trans_no']);
$doctype = ST_SUPPAYMENT;
$total_allocated = 0;
$rep->TextCol(0, 4, _("As advance / full / part / payment towards:"), -2);
$rep->NewLine(2);
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->NewPage();
}
}
$memo = get_comments_string($j, $i);
if ($memo != "") {
$rep->NewLine();
$rep->TextColLines(1, 5, $memo, -2);
}
$rep->row = $rep->bottomMargin + 16 * $rep->lineHeight;
$rep->TextCol(3, 6, _("Total Allocated"), -2);
$rep->AmountCol(6, 7, $total_allocated, $dec, -2);
$rep->NewLine();
$rep->TextCol(3, 6, _("Left to Allocate"), -2);
$myrow['Total'] *= -1;
$myrow['ov_discount'] *= -1;
$rep->AmountCol(6, 7, $myrow['Total'] + $myrow['ov_discount'] - $total_allocated, $dec, -2);
if (floatcmp($myrow['ov_discount'], 0)) {
$rep->NewLine();
$rep->TextCol(3, 6, _("Discount"), -2);
$rep->AmountCol(6, 7, -$myrow['ov_discount'], $dec, -2);
}
$rep->NewLine();
$rep->Font('bold');
$rep->TextCol(3, 6, _("TOTAL REMITTANCE"), -2);
$rep->AmountCol(6, 7, $myrow['Total'], $dec, -2);
$words = price_in_words($myrow['Total'], ST_SUPPAYMENT);
if ($words != "") {
$rep->NewLine(2);
//.........这里部分代码省略.........
示例12: print_trial_balance
function print_trial_balance()
{
global $path_to_root;
include_once $path_to_root . "reporting/includes/pdf_report.inc";
$dim = get_company_pref('use_dimension');
$dimension = $dimension2 = 0;
$from = $_REQUEST['PARAM_0'];
$to = $_REQUEST['PARAM_1'];
$zero = $_REQUEST['PARAM_2'];
if ($dim == 2) {
$dimension = $_REQUEST['PARAM_3'];
$dimension2 = $_REQUEST['PARAM_4'];
$comments = $_REQUEST['PARAM_5'];
} else {
if ($dim == 1) {
$dimension = $_REQUEST['PARAM_3'];
$comments = $_REQUEST['PARAM_4'];
} else {
$comments = $_REQUEST['PARAM_3'];
}
}
$dec = user_price_dec();
$cols2 = array(0, 50, 230, 330, 430, 530);
//-------------0--1---2----3----4----5--
$headers2 = array('', '', tr('Brought Forward'), tr('This Period'), tr('Balance'));
$aligns2 = array('left', 'left', 'left', 'left', 'left');
$cols = array(0, 50, 200, 250, 300, 350, 400, 450, 500, 550);
//------------0--1---2----3----4----5----6----7----8----9--
$headers = array(tr('Account'), tr('Account Name'), tr('Debit'), tr('Credit'), tr('Debit'), tr('Credit'), tr('Debit'), tr('Credit'));
$aligns = array('left', 'left', 'right', 'right', 'right', 'right', 'right', 'right');
if ($dim == 2) {
$params = array(0 => $comments, 1 => array('text' => tr('Period'), 'from' => $from, 'to' => $to), 2 => array('text' => tr('Dimension') . " 1", 'from' => get_dimension_string($dimension), 'to' => ''), 3 => array('text' => tr('Dimension') . " 2", 'from' => get_dimension_string($dimension2), 'to' => ''));
} else {
if ($dim == 1) {
$params = array(0 => $comments, 1 => array('text' => tr('Period'), 'from' => $from, 'to' => $to), 2 => array('text' => tr('Dimension'), 'from' => get_dimension_string($dimension), 'to' => ''));
} else {
$params = array(0 => $comments, 1 => array('text' => tr('Period'), 'from' => $from, 'to' => $to));
}
}
$rep = new FrontReport(tr('Trial Balance'), "TrialBalance.pdf", user_pagesize());
$rep->Font();
$rep->Info($params, $cols, $headers, $aligns, $cols2, $headers2, $aligns2);
$rep->Header();
$accounts = get_gl_accounts();
while ($account = db_fetch($accounts)) {
if (is_account_balancesheet($account["account_code"])) {
$begin = "";
} else {
if ($from < $begin) {
$begin = add_days($from, -1);
} else {
$begin = add_days(begin_fiscalyear(), -1);
}
}
$prev_balance = get_gl_balance_from_to($begin, $from, $account["account_code"], $dimension, $dimension2);
$curr_balance = get_gl_trans_from_to($from, $to, $account["account_code"], $dimension, $dimension2);
if ($zero == 0 && !$prev_balance && !$curr_balance) {
continue;
}
$rep->TextCol(0, 1, $account['account_code']);
$rep->TextCol(1, 2, $account['account_name']);
if ($prev_balance > 0.0) {
$rep->TextCol(2, 3, number_format2(abs($prev_balance), $dec));
} else {
$rep->TextCol(3, 4, number_format2(abs($prev_balance), $dec));
}
if ($curr_balance > 0.0) {
$rep->TextCol(4, 5, number_format2(abs($curr_balance), $dec));
} else {
$rep->TextCol(5, 6, number_format2(abs($curr_balance), $dec));
}
if ($curr_balance + $prev_balance > 0.0) {
$rep->TextCol(6, 7, number_format2(abs($curr_balance + $prev_balance), $dec));
} else {
$rep->TextCol(7, 8, number_format2(abs($curr_balance + $prev_balance), $dec));
}
$rep->NewLine();
if ($rep->row < $rep->bottomMargin + $rep->lineHeight) {
$rep->Line($rep->row - 2);
$rep->Header();
}
}
$rep->Line($rep->row);
$rep->End();
}
示例13: print_outstanding_GRN
function print_outstanding_GRN()
{
global $path_to_root;
$fromsupp = $_POST['PARAM_0'];
$comments = $_POST['PARAM_1'];
$orientation = $_POST['PARAM_2'];
$destination = $_POST['PARAM_3'];
if ($destination) {
include_once $path_to_root . "/reporting/includes/excel_report.inc";
} else {
include_once $path_to_root . "/reporting/includes/pdf_report.inc";
}
$orientation = $orientation ? 'L' : 'P';
if ($fromsupp == ALL_TEXT) {
$from = _('All');
} else {
$from = get_supplier_name($fromsupp);
}
$dec = user_price_dec();
$cols = array(0, 40, 80, 190, 250, 320, 385, 450, 515);
$headers = array(_('GRN'), _('Order'), _('Item') . '/' . _('Description'), _('Qty Recd'), _('qty Inv'), _('Balance'), _('Act Price'), _('Value'));
$aligns = array('left', 'left', 'left', 'right', 'right', 'right', 'right', 'right');
$params = array(0 => $comments, 1 => array('text' => _('Supplier'), 'from' => $from, 'to' => ''));
$rep = new FrontReport(_('Outstanding GRNs Report'), "OutstandingGRN", user_pagesize(), 9, $orientation);
if ($orientation == 'L') {
recalculate_cols($cols);
}
$rep->Font();
$rep->Info($params, $cols, $headers, $aligns);
$rep->NewPage();
$Tot_Val = 0;
$Supplier = '';
$SuppTot_Val = 0;
$res = getTransactions($fromsupp);
while ($GRNs = db_fetch($res)) {
$dec2 = get_qty_dec($GRNs['item_code']);
if ($Supplier != $GRNs['supplier_id']) {
if ($Supplier != '') {
$rep->NewLine(2);
$rep->TextCol(0, 7, _('Total'));
$rep->AmountCol(7, 8, $SuppTot_Val, $dec);
$rep->Line($rep->row - 2);
$rep->NewLine(3);
$SuppTot_Val = 0;
}
$rep->TextCol(0, 6, $GRNs['supp_name']);
$Supplier = $GRNs['supplier_id'];
}
$rep->NewLine();
$rep->TextCol(0, 1, $GRNs['id']);
$rep->TextCol(1, 2, $GRNs['order_no']);
$rep->TextCol(2, 3, $GRNs['item_code'] . '-' . $GRNs['description']);
$rep->AmountCol(3, 4, $GRNs['qty_recd'], $dec2);
$rep->AmountCol(4, 5, $GRNs['quantity_inv'], $dec2);
$QtyOstg = $GRNs['qty_recd'] - $GRNs['quantity_inv'];
$Value = ($GRNs['qty_recd'] - $GRNs['quantity_inv']) * $GRNs['act_price'];
$rep->AmountCol(5, 6, $QtyOstg, $dec2);
$rep->AmountCol(6, 7, $GRNs['act_price'], $dec);
$rep->AmountCol(7, 8, $Value, $dec);
$Tot_Val += $Value;
$SuppTot_Val += $Value;
$rep->NewLine(0, 1);
}
if ($Supplier != '') {
$rep->NewLine();
$rep->TextCol(0, 7, _('Total'));
$rep->AmountCol(7, 8, $SuppTot_Val, $dec);
$rep->Line($rep->row - 2);
$rep->NewLine(3);
$SuppTot_Val = 0;
}
$rep->NewLine(2);
$rep->TextCol(0, 7, _('Grand Total'));
$rep->AmountCol(7, 8, $Tot_Val, $dec);
$rep->Line($rep->row - 2);
$rep->NewLine();
$rep->End();
}
示例14: print_royalty_sales
function print_royalty_sales()
{
$from = $_POST['PARAM_0'];
$to = $_POST['PARAM_1'];
$item = $_POST['PARAM_2'];
$status = $_POST['PARAM_3'];
$destination = $_POST['PARAM_4'];
$orientation = $_POST['PARAM_5'];
global $path_to_root, $systypes_array;
if ($destination) {
include_once $path_to_root . "/reporting/includes/excel_report.inc";
} else {
include_once $path_to_root . "/reporting/includes/pdf_report.inc";
}
$result = fetchRoyalty($item);
$name = "";
while ($book = db_fetch($result)) {
$name = $book[1];
}
$params = array(0 => $comments, 1 => array('text' => _('Item'), 'from' => $name));
$orientation = $orientation ? 'L' : 'P';
$dec = user_price_dec();
$cols = array(0, 200, 210, 300, 310, 360, 380, 430, 440, 490, 500, 550);
$headers = array(_('Client'), '', _('IMC'), '', _('Invoice/CM #'), '', _('Date'), '', _('Quantity'), '', _('Status'));
$aligns = array('left', 'left', 'left', 'left', 'right', 'right');
$usr = get_user($user);
$user_id = $usr['user_id'];
$rep = new FrontReport(_('Royalty Sales'), "RoyaltySales", user_pagesize(), 9, $orientation);
if ($orientation == 'L') {
recalculate_cols($cols);
}
$rep->SetHeaderType('Header');
$rep->Font();
$rep->Info($params, $cols, $headers, $aligns);
$rep->NewPage();
if ($item == '') {
$no_title_print = false;
$enter = true;
} else {
$no_title_print = true;
$enter = false;
}
if ($no_title_print) {
$rep->Font('bold');
$rep->TextCol(0, 1, $item);
$rep->TextCol(2, 10, fetchTitle($item));
$rep->Font();
}
$total = 0;
$total_invoice_qty = 0;
$total_credit_qty = 0;
$rep->NewLine();
if ($item == "") {
$code = array();
$ItemCode = fetchItemCode();
while ($r = db_fetch($ItemCode)) {
array_push($code, $r[0]);
}
$total = 0;
$total_invoice_qty = 0;
$total_credit_qty = 0;
foreach ($code as $codes) {
$result = fetchRoyalty($codes, $status, $from, $to);
$bookname = fetchTitle($codes);
$rep->Font('bold');
$rep->TextCol(0, 5, $codes . "-" . $bookname);
$rep->Font();
$rep->NewLine();
while ($myrow = db_fetch($result)) {
if ($myrow['alloc'] == $myrow['ov_amount']) {
$stat = 'Closed';
}
if ($myrow['alloc'] < $myrow['ov_amount']) {
$stat = 'Open';
}
$scode = get_code($myrow['salesman']);
$salesman = get_salesman_name($myrow['salesman']);
$total_invoice_qty += $myrow[3];
$clientName = get_customer_name($myrow[0]);
$rep->TextCol(0, 1, $clientName);
$rep->TextCol(2, 3, $scode);
$rep->TextCol(4, 5, ' ' . $myrow['customized_no']);
$rep->TextCol(6, 7, $myrow['tranDate']);
$rep->TextCol(8, 9, $myrow['quantity']);
$rep->TextCol(10, 11, $stat);
$rep->NewLine();
}
$result1 = fetchCreditMemo($codes, $status, $from, $to);
while ($myrow1 = db_fetch($result1)) {
if ($myrow1[3] > 0) {
if ($myrow1['alloc'] == $myrow1['ov_amount']) {
$stat = 'Closed';
}
if ($myrow1['alloc'] < $myrow1['ov_amount']) {
$stat = 'Open';
}
}
$qty = -$myrow1['quantity'];
$total_credit_qty += $qty;
$scode = get_code($myrow1['salesman']);
//.........这里部分代码省略.........
示例15: print_inventory_sales
function print_inventory_sales()
{
global $path_to_root;
$from = $_POST['PARAM_0'];
$to = $_POST['PARAM_1'];
$category = $_POST['PARAM_2'];
$location = $_POST['PARAM_3'];
$fromcust = $_POST['PARAM_4'];
$comments = $_POST['PARAM_5'];
$orientation = $_POST['PARAM_6'];
$destination = $_POST['PARAM_7'];
if ($destination) {
include_once $path_to_root . "/reporting/includes/excel_report.inc";
} else {
include_once $path_to_root . "/reporting/includes/pdf_report.inc";
}
$orientation = $orientation ? 'L' : 'P';
$dec = user_price_dec();
if ($category == ALL_NUMERIC) {
$category = 0;
}
if ($category == 0) {
$cat = _('All');
} else {
$cat = get_category_name($category);
}
if ($location == '') {
$loc = _('All');
} else {
$loc = get_location_name($location);
}
if ($fromcust == '') {
$fromc = _('All');
} else {
$fromc = get_customer_name($fromcust);
}
$cols = array(0, 75, 175, 250, 300, 375, 450, 515);
$headers = array(_('Category'), _('Description'), _('Customer'), _('Qty'), _('Sales'), _('Cost'), _('Contribution'));
if ($fromcust != '') {
$headers[2] = '';
}
$aligns = array('left', 'left', 'left', 'right', 'right', 'right', 'right');
$params = array(0 => $comments, 1 => array('text' => _('Period'), 'from' => $from, 'to' => $to), 2 => array('text' => _('Category'), 'from' => $cat, 'to' => ''), 3 => array('text' => _('Location'), 'from' => $loc, 'to' => ''), 4 => array('text' => _('Customer'), 'from' => $fromc, 'to' => ''));
$rep = new FrontReport(_('Inventory Sales Report'), "InventorySalesReport", user_pagesize(), 9, $orientation);
if ($orientation == 'L') {
recalculate_cols($cols);
}
$rep->Font();
$rep->Info($params, $cols, $headers, $aligns);
$rep->NewPage();
$res = getTransactions($category, $location, $fromcust, $from, $to);
$total = $grandtotal = 0.0;
$total1 = $grandtotal1 = 0.0;
$total2 = $grandtotal2 = 0.0;
$catt = '';
while ($trans = db_fetch($res)) {
if ($catt != $trans['cat_description']) {
if ($catt != '') {
$rep->NewLine(2, 3);
$rep->TextCol(0, 4, _('Total'));
$rep->AmountCol(4, 5, $total, $dec);
$rep->AmountCol(5, 6, $total1, $dec);
$rep->AmountCol(6, 7, $total2, $dec);
$rep->Line($rep->row - 2);
$rep->NewLine();
$rep->NewLine();
$total = $total1 = $total2 = 0.0;
}
$rep->TextCol(0, 1, $trans['category_id']);
$rep->TextCol(1, 6, $trans['cat_description']);
$catt = $trans['cat_description'];
$rep->NewLine();
}
$curr = get_customer_currency($trans['debtor_no']);
$rate = get_exchange_rate_from_home_currency($curr, sql2date($trans['tran_date']));
$trans['amt'] *= $rate;
$cb = $trans['amt'] - $trans['cost'];
$rep->NewLine();
$rep->fontSize -= 2;
$rep->TextCol(0, 1, $trans['stock_id']);
if ($fromcust == ALL_TEXT) {
$rep->TextCol(1, 2, $trans['description'] . ($trans['inactive'] == 1 ? " (" . _("Inactive") . ")" : ""), -1);
$rep->TextCol(2, 3, $trans['debtor_name']);
} else {
$rep->TextCol(1, 3, $trans['description'] . ($trans['inactive'] == 1 ? " (" . _("Inactive") . ")" : ""), -1);
}
$rep->AmountCol(3, 4, $trans['qty'], get_qty_dec($trans['stock_id']));
$rep->AmountCol(4, 5, $trans['amt'], $dec);
$rep->AmountCol(5, 6, $trans['cost'], $dec);
$rep->AmountCol(6, 7, $cb, $dec);
$rep->fontSize += 2;
$total += $trans['amt'];
$total1 += $trans['cost'];
$total2 += $cb;
$grandtotal += $trans['amt'];
$grandtotal1 += $trans['cost'];
$grandtotal2 += $cb;
}
$rep->NewLine(2, 3);
$rep->TextCol(0, 4, _('Total'));
//.........这里部分代码省略.........