include_once($path_to_root . "/includes/data_checks.inc");
include_once($path_to_root . "/gl/includes/gl_db.inc");
+$pdeb = $pcre = $cdeb = $ccre = $tdeb = $tcre = $pbal = $cbal = $tbal = 0;\r
+$cls_pdeb = $cls_pcre = $cls_cdeb = $cls_ccre = $cls_tdeb = $cls_tcre = $cls_pbal = $cls_cbal = $cls_tbal = 0;\r
+$grp_pdeb = $grp_pcre = $grp_cdeb = $grp_ccre = $grp_tdeb = $grp_tcre = $grp_pbal = $grp_cbal = $grp_tbal = 0;\r
+\r
+//----------------------------------------------------------------------------------------------------\r
+\r
+function display_type ($type, $typename, &$dec, &$rep, $from, $to, $zero, $balances, $dimension, $dimension2)\r
+{\r
+ global $pdeb, $pcre, $cdeb, $ccre, $tdeb, $tcre, $pbal, $cbal, $tbal;\r
+ \r
+ $printtitle = 0; //Flag for printing type name \r
+ \r
+ //Get Accounts directly under this group/type\r
+ $accounts = get_gl_accounts(null, null, $type); \r
+ \r
+ $pdeb = $pcre = $cdeb = $ccre = $tdeb = $tcre = $pbal = $cbal = $tbal = 0;\r
+\r
+ $begin = begin_fiscalyear();\r
+ if (date1_greater_date2($begin, $from))\r
+ $begin = $from;\r
+ $begin = add_days($begin, -1);\r
+ while ($account=db_fetch($accounts))\r
+ {\r
+ //Print Type Title if it has atleast one non-zero account \r
+ if (!$printtitle)\r
+ { \r
+ $rep->row -= 4;\r
+ $rep->TextCol(0, 8, _("Group")." - ".$type ." - ".$typename); \r
+ $printtitle = 1;\r
+ $rep->row -= 4;\r
+ $rep->Line($rep->row);\r
+ $rep->NewLine(); \r
+ }\r
+ \r
+ $prev = get_balance($account["account_code"], $dimension, $dimension2, $begin, $from, false, false);\r
+ $curr = get_balance($account["account_code"], $dimension, $dimension2, $from, $to, true, true);\r
+ $tot = get_balance($account["account_code"], $dimension, $dimension2, $begin, $to, false, true);\r
+\r
+ if ($zero == 0 && !$prev['balance'] && !$curr['balance'] && !$tot['balance'])\r
+ continue;\r
+ $rep->TextCol(0, 1, $account['account_code']);\r
+ $rep->TextCol(1, 2, $account['account_name']);\r
+ if ($balances != 0)\r
+ {\r
+ if ($prev['balance'] >= 0.0)\r
+ $rep->AmountCol(2, 3, $prev['balance'], $dec);\r
+ else\r
+ $rep->AmountCol(3, 4, abs($prev['balance']), $dec);\r
+ if ($curr['balance'] >= 0.0)\r
+ $rep->AmountCol(4, 5, $curr['balance'], $dec);\r
+ else\r
+ $rep->AmountCol(5, 6, abs($curr['balance']), $dec);\r
+ if ($tot['balance'] >= 0.0)\r
+ $rep->AmountCol(6, 7, $tot['balance'], $dec);\r
+ else\r
+ $rep->AmountCol(7, 8, abs($tot['balance']), $dec);\r
+ }\r
+ else\r
+ {\r
+ $rep->AmountCol(2, 3, $prev['debit'], $dec);\r
+ $rep->AmountCol(3, 4, $prev['credit'], $dec);\r
+ $rep->AmountCol(4, 5, $curr['debit'], $dec);\r
+ $rep->AmountCol(5, 6, $curr['credit'], $dec);\r
+ $rep->AmountCol(6, 7, $tot['debit'], $dec);\r
+ $rep->AmountCol(7, 8, $tot['credit'], $dec);\r
+ $pdeb += $prev['debit'];\r
+ $pcre += $prev['credit'];\r
+ $cdeb += $curr['debit'];\r
+ $ccre += $curr['credit'];\r
+ $tdeb += $tot['debit'];\r
+ $tcre += $tot['credit'];\r
+ } \r
+ $pbal += $prev['balance'];\r
+ $cbal += $curr['balance'];\r
+ $tbal += $tot['balance'];\r
+ $rep->NewLine();\r
+\r
+ if ($rep->row < $rep->bottomMargin + $rep->lineHeight)\r
+ {\r
+ $rep->Line($rep->row - 2);\r
+ $rep->NewPage();\r
+ }\r
+ }\r
+ \r
+ //Get Account groups/types under this group/type\r
+ $result = get_account_types(false, false, $type);\r
+ while ($accounttype=db_fetch($result))\r
+ {\r
+ //Print Type Title if has sub types and not previously printed\r
+ if (!$printtitle)\r
+ {\r
+ $rep->row -= 4;\r
+ $rep->TextCol(0, 8, _("Group")." - ".$type ." - ".$typename); \r
+ $printtitle = 1;\r
+ $rep->row -= 4;\r
+ $rep->Line($rep->row);\r
+ $rep->NewLine(); \r
+ }\r
+ display_type($accounttype["id"], $accounttype["name"].' ('.$typename.')', $dec, $rep, $from, $to, $zero, $balances, $dimension, $dimension2);\r
+ }\r
+}\r
+\r
//----------------------------------------------------------------------------------------------------
print_trial_balance();
function print_trial_balance()
{
global $path_to_root;
+ global $pdeb, $pcre, $cdeb, $ccre, $tdeb, $tcre, $pbal, $cbal, $tbal;\r
$dim = get_company_pref('use_dimension');
$dimension = $dimension2 = 0;
$aligns2 = array('left', 'left', 'left', 'left', 'left');
//$cols = array(0, 50, 200, 250, 300, 350, 400, 450, 500, 550);
- $cols = array(0, 50, 150, 210, 270, 330, 390, 450, 510, 570);
- //------------0--1---2----3----4----5----6----7----8----9--
+ $cols = array(0, 50, 150, 210, 270, 330, 390, 450, 510, 570);\r
+ //$cols = array(0, 50, 190, 250, 310, 370, 430, 490, 550);\r
+ //------------0--1---2----3----4----5----6----7----8--\r
$headers = array(_('Account'), _('Account Name'), _('Debit'), _('Credit'), _('Debit'),
_('Credit'), _('Debit'), _('Credit'));
$rep->Font();
$rep->Info($params, $cols, $headers, $aligns, $cols2, $headers2, $aligns2);
$rep->NewPage();
-
- $accounts = get_gl_accounts();
-
- $pdeb = $pcre = $cdeb = $ccre = $tdeb = $tcre = $pbal = $cbal = $tbal = 0;
- $begin = begin_fiscalyear();
- if (date1_greater_date2($begin, $from))
- $begin = $from;
- $begin = add_days($begin, -1);
- while ($account=db_fetch($accounts))
+ \r
+ $classresult = get_account_classes(false);\r
+ while ($class = db_fetch($classresult))\r
{
- $prev = get_balance($account["account_code"], $dimension, $dimension2, $begin, $from, false, false);
- $curr = get_balance($account["account_code"], $dimension, $dimension2, $from, $to, true, true);
- $tot = get_balance($account["account_code"], $dimension, $dimension2, $begin, $to, false, true);
-
- if ($zero == 0 && !$prev['balance'] && !$curr['balance'] && !$tot['balance'])
- continue;
- $rep->TextCol(0, 1, $account['account_code']);
- $rep->TextCol(1, 2, $account['account_name']);
- if ($balances != 0)
- {
- if ($prev['balance'] >= 0.0)
- $rep->AmountCol(2, 3, $prev['balance'], $dec);
- else
- $rep->AmountCol(3, 4, abs($prev['balance']), $dec);
- if ($curr['balance'] >= 0.0)
- $rep->AmountCol(4, 5, $curr['balance'], $dec);
- else
- $rep->AmountCol(5, 6, abs($curr['balance']), $dec);
- if ($tot['balance'] >= 0.0)
- $rep->AmountCol(6, 7, $tot['balance'], $dec);
- else
- $rep->AmountCol(7, 8, abs($tot['balance']), $dec);
- }
- else
- {
- $rep->AmountCol(2, 3, $prev['debit'], $dec);
- $rep->AmountCol(3, 4, $prev['credit'], $dec);
- $rep->AmountCol(4, 5, $curr['debit'], $dec);
- $rep->AmountCol(5, 6, $curr['credit'], $dec);
- $rep->AmountCol(6, 7, $tot['debit'], $dec);
- $rep->AmountCol(7, 8, $tot['credit'], $dec);
- $pdeb += $prev['debit'];
- $pcre += $prev['credit'];
- $cdeb += $curr['debit'];
- $ccre += $curr['credit'];
- $tdeb += $tot['debit'];
- $tcre += $tot['credit'];
-
- }
- $pbal += $prev['balance'];
- $cbal += $curr['balance'];
- $tbal += $tot['balance'];
- $rep->NewLine();
+ $rep->Font('bold');\r
+ $rep->TextCol(0, 1, $class['cid']);\r
+ $rep->TextCol(1, 4, $class['class_name']);\r
+ $rep->Font();\r
+ $rep->NewLine();\r
- if ($rep->row < $rep->bottomMargin + $rep->lineHeight)
+ //Get Account groups/types under this group/type with no parents\r
+ $typeresult = get_account_types(false, $class['cid'], -1);\r
+ while ($accounttype=db_fetch($typeresult))\r
{
- $rep->Line($rep->row - 2);
- $rep->NewPage();
+ display_type($accounttype["id"], $accounttype["name"], $dec, $rep, $from, $to, $zero, $balances, $dimension, $dimension2);\r
}
+ $rep->NewLine();
}
$rep->Line($rep->row);
$rep->NewLine();
$rep->AmountCol(7, 8, abs($tbal), $dec);
$rep->NewLine();
- $rep->Line($rep->row);
+ $rep->Line($rep->row + 10);
if (($pbal = round2($pbal, $dec)) != 0.0)
{
$rep->NewLine(2);
$fromdate = date2sql($from);
$todate = date2sql($to);
- $sql = "SELECT taxrec.*, taxrec.amount*ex_rate AS amount,
+ $sql = "SELECT tt.name as taxname, taxrec.*, taxrec.amount*ex_rate AS amount,\r
taxrec.net_amount*ex_rate AS net_amount,
IF(ISNULL(supp.supp_name), debt.name, supp.supp_name) as name,
branch.br_name
FROM ".TB_PREF."trans_tax_details taxrec
+ LEFT JOIN ".TB_PREF."tax_types tt\r
+ ON taxrec.tax_type_id=tt.id\r
LEFT JOIN ".TB_PREF."supp_trans strans
ON taxrec.trans_no=strans.trans_no AND taxrec.trans_type=strans.type
LEFT JOIN ".TB_PREF."suppliers as supp ON strans.supplier_id=supp.supplier_id
AND taxrec.trans_type <> ".ST_CUSTDELIVERY."
AND taxrec.tran_date >= '$fromdate'
AND taxrec.tran_date <= '$todate'
- ORDER BY taxrec.tran_date";
+ ORDER BY taxrec.trans_type, taxrec.tran_date, taxrec.trans_no, taxrec.ex_rate";\r
//display_error($sql);
return db_query($sql,"No transactions were returned");
}
function print_tax_report()
{
- global $path_to_root, $trans_dir, $systypes_array;
+ global $path_to_root, $trans_dir, $Hooks, $systypes_array;\r
$from = $_POST['PARAM_0'];
$to = $_POST['PARAM_1'];
1 => array('text' => _('Period'), 'from' => $from, 'to' => $to),
2 => array('text' => _('Type'), 'from' => $summary, 'to' => ''));
- $cols = array(0, 100, 130, 180, 290, 370, 420, 470, 520);
+ $cols = array(0, 80, 130, 180, 270, 350, 400, 430, 480, 485, 520);\r
$headers = array(_('Trans Type'), _('Ref'), _('Date'), _('Name'), _('Branch Name'),
- _('Net'), _('Rate'), _('Tax'));
- $aligns = array('left', 'left', 'left', 'left', 'left', 'right', 'right', 'right');
+ _('Net'), _('Rate'), _('Tax'), '', _('Name'));\r
+ $aligns = array('left', 'left', 'left', 'left', 'left', 'right', 'right', 'right', 'right','left');\r
$rep->Font();
$rep->Info($params, $cols, $headers, $aligns);
if (!$summaryOnly)
$rep->AmountCol(5, 6, $trans['net_amount'], $dec);
$rep->AmountCol(6, 7, $trans['rate'], $dec);
$rep->AmountCol(7, 8, $trans['amount'], $dec);
+ \r
+ $rep->TextCol(9, 10, $trans['taxname']);\r
$rep->NewLine();