From: Joe Hunt Date: Fri, 26 Jun 2009 16:02:48 +0000 (+0000) Subject: GRN Valuation Report X-Git-Tag: v2.4.2~19^2~1356 X-Git-Url: https://delta.frontaccounting.com/gitweb/?a=commitdiff_plain;h=bfe84895e7476db30190858c8013a47ce0b4929c;p=fa-stable.git GRN Valuation Report --- diff --git a/CHANGELOG.txt b/CHANGELOG.txt index c1af7126..d3c356b5 100644 --- a/CHANGELOG.txt +++ b/CHANGELOG.txt @@ -20,9 +20,10 @@ Legend: $ -> Affected files 26-Jun-2009 Joe Hunt -+ Added Print of Work Order ++ Added Print of Work Order and GRN Valuation Report $ /manufacturing/includes/db/work_orders_db.inc /manufacturing/work_order_entry.php + /reporting/rep305.php (new file) /reporting/rep409.php (new file) /reporting/reports_main.php /reporting/includes/doctext.inc diff --git a/reporting/rep305.php b/reporting/rep305.php new file mode 100644 index 00000000..56ec99cb --- /dev/null +++ b/reporting/rep305.php @@ -0,0 +1,139 @@ +. +***********************************************************************/ +$page_security = 2; +// ---------------------------------------------------------------- +// $ Revision: 2.0 $ +// Creator: Joe Hunt +// date_: 2005-05-19 +// Title: Inventory Planning +// ---------------------------------------------------------------- +$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"); +include_once($path_to_root . "/includes/banking.inc"); +include_once($path_to_root . "/gl/includes/gl_db.inc"); +include_once($path_to_root . "/inventory/includes/db/items_category_db.inc"); + +//---------------------------------------------------------------------------------------------------- + +print_grn_valuation(); + +function getTransactions($from, $to) +{ + $from = date2sql($from); + $to = date2sql($to); + $sql = "SELECT ".TB_PREF."grn_batch.delivery_date, ".TB_PREF."grn_batch.supplier_id, + ".TB_PREF."purch_order_details.*, + ".TB_PREF."stock_master.description + FROM ".TB_PREF."stock_master, + ".TB_PREF."purch_order_details, + ".TB_PREF."grn_batch + WHERE ".TB_PREF."stock_master.stock_id=".TB_PREF."purch_order_details.item_code + AND ".TB_PREF."grn_batch.purch_order_no=".TB_PREF."purch_order_details.order_no + AND ".TB_PREF."purch_order_details.quantity_received>0 + AND ".TB_PREF."grn_batch.delivery_date>='$from' + AND ".TB_PREF."grn_batch.delivery_date<='$to' + ORDER BY ".TB_PREF."stock_master.stock_id, ".TB_PREF."grn_batch.delivery_date"; + return db_query($sql,"No transactions were returned"); + +} + +//---------------------------------------------------------------------------------------------------- + +function print_grn_valuation() +{ + global $path_to_root; + + $from = $_POST['PARAM_0']; + $to = $_POST['PARAM_1']; + $comments = $_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"); + + $dec = user_price_dec(); + + $cols = array(0, 75, 225, 275, 345, 390, 445, 515); + $headers = array(_('Stock ID'), _('Description'), _('PO No'), _('Qty Received'), _('Unit Price'), _('Actual Price'), _('Total')); + + $aligns = array('left', 'left', 'left', 'right', 'right', 'right', 'right'); + + $params = array( 0 => $comments, + 1 => array('text' => _('Period'),'from' => $from, 'to' => $to)); + + $rep = new FrontReport(_('GRN Valuation Report'), "GRNValuationReport", user_pagesize()); + + $rep->Font(); + $rep->Info($params, $cols, $headers, $aligns); + $rep->Header(); + + $res = getTransactions($from, $to); + $total = $qtotal = $grandtotal = 0.0; + $stock_id = ''; + while ($trans=db_fetch($res)) + { + if ($stock_id != $trans['item_code']) + { + if ($stock_id != '') + { + $rep->Line($rep->row - 4); + $rep->NewLine(2); + $rep->TextCol(0, 3, _('Total')); + $rep->AmountCol(3, 4, $qtotal, $qdec); + $rep->AmountCol(6, 7, $total, $dec); + $rep->NewLine(); + $total = $qtotal = 0; + } + $stock_id = $trans['item_code']; + } + $curr = get_supplier_currency($trans['supplier_id']); + $rate = get_exchange_rate_from_home_currency($curr, sql2date($trans['delivery_date'])); + $trans['unit_price'] *= $rate; + $trans['act_price'] *= $rate; + + $rep->NewLine(); + $rep->TextCol(0, 1, $trans['item_code']); + $rep->TextCol(1, 2, $trans['description']); + $rep->TextCol(2, 3, $trans['order_no']); + $qdec = get_qty_dec($trans['item_code']); + $rep->AmountCol(3, 4, $trans['quantity_received'], $qdec); + $rep->AmountCol(4, 5, $trans['unit_price'], $dec); + $rep->AmountCol(5, 6, $trans['act_price'], $dec); + $amt = round2($trans['quantity_received'] * $trans['act_price'], $dec); + $rep->AmountCol(6, 7, $amt, $dec); + $total += $amt; + $qtotal += $trans['quantity_received']; + $grandtotal += $amt; + } + if ($stock_id != '') + { + $rep->Line($rep->row - 4); + $rep->NewLine(2); + $rep->TextCol(0, 3, _('Total')); + $rep->AmountCol(3, 4, $qtotal, $qdec); + $rep->AmountCol(6, 7, $total, $dec); + $rep->Line($rep->row - 4); + $rep->NewLine(2); + $rep->TextCol(0, 6, _('Grand Total')); + $rep->AmountCol(6, 7, $grandtotal, $dec); + } + + $rep->Line($rep->row - 4); + $rep->NewLine(); + $rep->End(); +} + +?> \ No newline at end of file diff --git a/reporting/reports_main.php b/reporting/reports_main.php index 1bc322d4..a4469584 100644 --- a/reporting/reports_main.php +++ b/reporting/reports_main.php @@ -162,6 +162,11 @@ $reports->addReport(_('Inventory'),304,_('Inventory &Sales Report'), new ReportParam(_('Detailed Report'),'YES_NO'), new ReportParam(_('Comments'),'TEXTBOX'), new ReportParam(_('Destination'),'DESTINATION'))); +$reports->addReport(_('Inventory'),305,_('&GRN Valuation Report'), + array( new ReportParam(_('Start Date'),'DATEBEGINM'), + new ReportParam(_('End Date'),'DATEENDM'), + new ReportParam(_('Comments'),'TEXTBOX'), + new ReportParam(_('Destination'),'DESTINATION'))); $reports->addReportClass(_('Manufactoring')); $reports->addReport(_('Manufactoring'),401,_('&Bill of Material Listing'),