143 lines
7.1 KiB
PHP
143 lines
7.1 KiB
PHP
|
<div class="content-wrapper">
|
||
|
|
||
|
<div class="content">
|
||
|
<div class="container-fluid">
|
||
|
<div class="row">
|
||
|
<div class="col">
|
||
|
<div class="card card-primary card-outline">
|
||
|
<div class="card-header">
|
||
|
|
||
|
<h5 class="m-0">Viewing Trial Balance <a onClick="exportTableToExcel('exportableTable','trialbalance')" class="btn btn-success">Export</a><a href="" onclick="printDiv('printableDiv');" class="btn btn-success btn-sm float-right">Print</a></h5>
|
||
|
|
||
|
</div>
|
||
|
|
||
|
<div class="card-body" id="printableDiv">
|
||
|
<h3 class="text-center"><?php echo $this->session->userdata("CompanyName"); ?></h3>
|
||
|
<h5 class="text-center">Trial Balance for FY <?php echo showFiscalYear(); ?></h5>
|
||
|
<div id="dataTable_wrapper">
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
<table class="table table-bordered table-hover" id="exportableTable">
|
||
|
<thead>
|
||
|
<tr>
|
||
|
<th class="col-8">Account</th>
|
||
|
<th class="col-2">Dr</th>
|
||
|
<th class="col-2">Cr</th>
|
||
|
</tr>
|
||
|
</thead>
|
||
|
<tbody>
|
||
|
<?php
|
||
|
$showZeroBalance = 0;
|
||
|
$r = 0;
|
||
|
$dr = 0;
|
||
|
$cr = 0;
|
||
|
foreach ($AccountGroups as $AccountGroup) :
|
||
|
$drAccountGroupTotal = 0;
|
||
|
$crAccountGroupTotal = 0;
|
||
|
showRow('table-group-heading', $AccountGroup->acgroup_name);
|
||
|
|
||
|
foreach ($AccountGroup->AccountCategories as $AccountCategory) :
|
||
|
$drAccountCategoryTotal = 0;
|
||
|
$crAccountCategoryTotal = 0;
|
||
|
showRow('table-category-heading', "<span class='lp-30'>" . $AccountCategory->accategory_name . "</span>");
|
||
|
foreach ($AccountCategory->Accounts as $Account) :
|
||
|
$drAccountBalance = 0;
|
||
|
$crAccountBalance = 0;
|
||
|
$accountBalance = getBalance($Account->account_id);
|
||
|
$drAccountBalance = ($accountBalance > 0) ? $accountBalance : 0;
|
||
|
$crAccountBalance = ($accountBalance < 0) ? abs($accountBalance) : 0;
|
||
|
$drAccountCategoryTotal += $drAccountBalance;
|
||
|
$dr += $drAccountBalance;
|
||
|
$cr += $crAccountBalance;
|
||
|
$crAccountCategoryTotal += $crAccountBalance;
|
||
|
if ($accountBalance == 0) {
|
||
|
if ($showZeroBalance)
|
||
|
showRow($r, "<span class='lp-60'>" . $Account->account_name . "</span>", myCurrency($drAccountBalance), myCurrency($crAccountBalance));
|
||
|
} else {
|
||
|
showRow($r, "<span class='lp-60'>" . $Account->account_name . "</span>", myCurrency($drAccountBalance), myCurrency($crAccountBalance));
|
||
|
}
|
||
|
endforeach;
|
||
|
|
||
|
showRow('table-category-total', "<span class='text-right table-cell'>Total " . $AccountCategory->accategory_name . "</span>", myCurrency($drAccountCategoryTotal), myCurrency($crAccountCategoryTotal));
|
||
|
$drAccountGroupTotal += $drAccountCategoryTotal;
|
||
|
$crAccountGroupTotal += $crAccountCategoryTotal;
|
||
|
endforeach;
|
||
|
|
||
|
showRowHeader('table-group-total', "<span class='text-right table-cell'>Total " . $AccountGroup->acgroup_name . "</span>", myCurrency($drAccountGroupTotal), myCurrency($crAccountGroupTotal));
|
||
|
|
||
|
endforeach;
|
||
|
|
||
|
?>
|
||
|
|
||
|
</tbody>
|
||
|
<tfoot>
|
||
|
<?php showRowHeader("", "Trial Balance Total", myCurrency($dr), myCurrency($cr)); ?>
|
||
|
</tfoot>
|
||
|
|
||
|
</table>
|
||
|
</div>
|
||
|
|
||
|
|
||
|
</div>
|
||
|
</div>
|
||
|
</div>
|
||
|
</div>
|
||
|
</div>
|
||
|
</div>
|
||
|
</div>
|
||
|
<?php
|
||
|
function showRow($r = "table-default", $c1 = ' ', $c2 = '', $c3 = '')
|
||
|
{
|
||
|
if ($c2 == "" && $c3 == "") {
|
||
|
//$html = "<tr class='$r'><td colspan='3'>$c1</td></tr>\n";
|
||
|
$html = "<tr class='$r'><td>$c1</td><td class='col-2'>$c2</td><td class='col-2'>$c3</td></tr>\n";
|
||
|
} else {
|
||
|
$html = "<tr class='$r'><td>$c1</td><td class='col-2'>$c2</td><td class='col-2'>$c3</td></tr>\n";
|
||
|
}
|
||
|
echo $html;
|
||
|
}
|
||
|
function showRowHeader($r = "table-default", $c1 = ' ', $c2 = '', $c3 = '')
|
||
|
{
|
||
|
$html = "<tr class='$r'><th>$c1</th><th class='col-2'>$c2</th><th class='col-2'>$c3</th></tr>\n";
|
||
|
echo $html;
|
||
|
}
|
||
|
function footerFunctions()
|
||
|
{ ?>
|
||
|
<script>
|
||
|
function exportTableToExcel(tableID, filename = '') {
|
||
|
var downloadLink;
|
||
|
var dataType = 'application/vnd.ms-excel';
|
||
|
var tableSelect = document.getElementById(tableID);
|
||
|
var tableHTML = tableSelect.outerHTML.replace(/ /g, '%20');
|
||
|
|
||
|
// Specify file name
|
||
|
filename = filename ? filename + '.xls' : 'excel_data.xls';
|
||
|
|
||
|
// Create download link element
|
||
|
downloadLink = document.createElement("a");
|
||
|
|
||
|
document.body.appendChild(downloadLink);
|
||
|
|
||
|
if (navigator.msSaveOrOpenBlob) {
|
||
|
var blob = new Blob(['\ufeff', tableHTML], {
|
||
|
type: dataType
|
||
|
});
|
||
|
navigator.msSaveOrOpenBlob(blob, filename);
|
||
|
} else {
|
||
|
// Create a link to the file
|
||
|
downloadLink.href = 'data:' + dataType + ', ' + tableHTML;
|
||
|
|
||
|
// Setting the file name
|
||
|
downloadLink.download = filename;
|
||
|
|
||
|
//triggering the function
|
||
|
downloadLink.click();
|
||
|
}
|
||
|
}
|
||
|
</script>
|
||
|
<?php
|
||
|
}
|
||
|
?>
|