You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
545 lines
25 KiB
JavaScript
545 lines
25 KiB
JavaScript
import { _bbData, _perbandingan, _triwulan } from "{{PATH}}/assets-js/module-lap-bb.js?v={time}";
|
|
import { temp } from "{{PATH}}/assets-js/module-lap-filterneraca.js?v={time}";
|
|
import { xlsx } from "{{PATH}}/assets-js/module-export-xlsx.js?v={time}";
|
|
|
|
globalThis.acc = JSON.parse(_id('acc').innerHTML);
|
|
|
|
let d = _id('report').querySelector('tbody')
|
|
|
|
_fullScreen();
|
|
|
|
temp();
|
|
|
|
_id('bulan').value = tanggal().normal.split('-')[1];
|
|
|
|
const headerTemp = function(){
|
|
let year = _id('tahun').value.number(2);
|
|
let mnt = ['03', '06', '09', '12'];
|
|
let jn = _id('jenislap').value;
|
|
if(jn == 2){
|
|
_id('report').querySelector('thead').innerHTML = `
|
|
<tr>
|
|
<th style="font-size:12px;" colspan="8" class="text-center">Neraca</th>
|
|
</tr>
|
|
<tr style="border-bottom: 1px solid #777;">
|
|
<th style="font-size:12px;" colspan="8" class="text-center">Tahun ${year}</th>
|
|
</tr>
|
|
<tr style="border-bottom: 4px double #333;">
|
|
<th style="padding:2px 3px;font-size:12px;">Kode</th>
|
|
<th style="padding:2px 3px;font-size:12px;">Aktiva</th>
|
|
<th style="text-align:right;padding:2px 3px;font-size:12px;">${_id('tahun').value.number(2) }</th>
|
|
<th style="text-align:right;padding:2px 3px;font-size:12px;">${_id('tahun').value.number(2) - 1 }</th>
|
|
<th style="border-left: 1px solid #777; padding:2px 3px;font-size:12px;">Kode</th>
|
|
<th style="padding:2px 3px;font-size:12px;">Pasiva</th>
|
|
<th style="text-align:right;padding:2px 3px;font-size:12px;">${_id('tahun').value.number(2) }</th>
|
|
<th style="text-align:right;padding:2px 3px;font-size:12px;">${_id('tahun').value.number(2) - 1 }</th>
|
|
</tr>
|
|
`
|
|
}else if(jn == 1){
|
|
_id('report').querySelector('thead').innerHTML = `
|
|
<tr>
|
|
<th style="font-size:12px;" colspan="8" class="text-center">Neraca</th>
|
|
</tr>
|
|
<tr style="border-bottom: 1px solid #777;">
|
|
<th style="font-size:12px;" colspan="8" class="text-center">Tahun ${year}</th>
|
|
</tr>
|
|
<tr style="border-bottom: 4px double #333;">
|
|
<th style="padding:2px 3px;font-size:12px;">Kode</th>
|
|
<th style="padding:2px 3px;font-size:12px;">Aktiva</th>
|
|
${mnt.map(function(h){
|
|
return `
|
|
<th style="text-align:right;padding:2px 3px;font-size:12px;">${h+'-'+_id('tahun').value.number(2) }</th>
|
|
`
|
|
}).join('')}
|
|
<th style="border-left: 1px solid #777; padding:2px 3px;font-size:12px;">Kode</th>
|
|
<th style="padding:2px 3px;font-size:12px;">Pasiva</th>
|
|
${mnt.map(function (h) {
|
|
return `
|
|
<th style="text-align:right;padding:2px 3px;font-size:12px;">${h+'-'+_id('tahun').value.number(2)}</th>
|
|
`
|
|
}).join('')}
|
|
</tr>
|
|
`
|
|
}else{
|
|
_id('report').querySelector('thead').innerHTML = `
|
|
<tr>
|
|
<th style="font-size:12px;" colspan="6" class="text-center">Neraca</th>
|
|
</tr>
|
|
<tr style="border-bottom: 1px solid #777;">
|
|
<th style="font-size:12px;" colspan="6" class="text-center">Periode <span id="tgl1"></span> s/d <span id="tgl2"></span></th>
|
|
</tr>
|
|
<tr style="border-bottom: 4px double #333;">
|
|
<th style="padding:2px 3px;font-size:12px;">Kode</th>
|
|
<th style="padding:2px 3px;font-size:12px;">Aktiva</th>
|
|
<th style="text-align:right;padding:2px 3px;font-size:12px;">Nominal</th>
|
|
<th style="border-left: 1px solid #777; padding:2px 3px;font-size:12px;">Kode</th>
|
|
<th style="padding:2px 3px;font-size:12px;">Pasiva</th>
|
|
<th style="text-align:right;padding:2px 3px;font-size:12px;">Nominal</th>
|
|
</tr>
|
|
`
|
|
}
|
|
}
|
|
|
|
const tempContent = function(s,i,status = 0){
|
|
let year = _id('tahun').value.number(2);
|
|
let mnt = ['03', '06', '09', '12'];
|
|
let jn = _id('jenislap').value;
|
|
if (status == 0) {
|
|
if (jn == 2) {
|
|
return `
|
|
<tr style="border-bottom: 1px solid #333;">
|
|
<td style="padding:2px 3px;font-size:12px;white-space:nowrap;">${s.kode}</td>
|
|
<td style="padding:2px 3px;font-size:12px;white-space:nowrap;">${s.nama}</td>
|
|
<td class="nmap" data-kode="${s.kode}" year="${year}" style="padding:2px 3px;font-size:12px;text-align:right; white-space:nowrap;">Rp. 0</td>
|
|
<td class="nmap" data-kode="${s.kode}" year="${year - 1}" style="padding:2px 3px;font-size:12px;text-align:right; white-space:nowrap;">Rp. 0</td>
|
|
<td style="border-left: 1px solid #777;padding:2px 3px;font-size:12px;white-space:nowrap;" posisi="${i}" data-name="kode"></td>
|
|
<td style="padding:2px 3px;font-size:12px;white-space:nowrap;" posisi="${i}" data-name="akun"></td>
|
|
<td posisi="${i}" data-name="nom" year="${year}" class="nmap" data-kode="-" style="padding:2px 3px;font-size:12px;text-align:right; white-space:nowrap;">Rp. 0</td>
|
|
<td posisi="${i}" data-name="nom" year="${year - 1}" class="nmap" data-kode="-" style="padding:2px 3px;font-size:12px;text-align:right; white-space:nowrap;">Rp. 0</td>
|
|
</tr>
|
|
`
|
|
}else if(jn == 1){
|
|
return `
|
|
<tr style="border-bottom: 1px solid #333;">
|
|
<td style="padding:2px 3px;font-size:12px;white-space:nowrap;">${s.kode}</td>
|
|
<td style="padding:2px 3px;font-size:12px;white-space:nowrap;">${s.nama}</td>
|
|
${mnt.map(function (h) {
|
|
return `
|
|
<td class="nmap" data-kode="${s.kode}" year="${h}" style="padding:2px 3px;font-size:12px;text-align:right; white-space:nowrap;">Rp. 0</td>
|
|
`;
|
|
}).join('') }
|
|
<td style="border-left: 1px solid #777;padding:2px 3px;font-size:12px;white-space:nowrap;" posisi="${i}" data-name="kode"></td>
|
|
<td style="padding:2px 3px;font-size:12px;white-space:nowrap;" posisi="${i}" data-name="akun"></td>
|
|
${mnt.map(function (h) {
|
|
return `
|
|
<td posisi="${i}" data-name="nom" year="${h}" class="nmap" data-kode="-" style="padding:2px 3px;font-size:12px;text-align:right; white-space:nowrap;">Rp. 0</td>
|
|
`;
|
|
}).join('') }
|
|
</tr>
|
|
`
|
|
|
|
}else{
|
|
return `
|
|
<tr style="border-bottom: 1px solid #333;">
|
|
<td style="padding:2px 3px;font-size:12px;white-space:nowrap;">${s.kode}</td>
|
|
<td style="padding:2px 3px;font-size:12px;white-space:nowrap;">${s.nama}</td>
|
|
<td class="nmap" data-kode="${s.kode}" style="padding:2px 3px;font-size:12px;text-align:right; white-space:nowrap;">Rp. 0</td>
|
|
<td style="border-left: 1px solid #777;padding:2px 3px;font-size:12px;white-space:nowrap;" posisi="${i}" data-name="kode"></td>
|
|
<td style="padding:2px 3px;font-size:12px;white-space:nowrap;" posisi="${i}" data-name="akun"></td>
|
|
<td posisi="${i}" data-name="nom" class="nmap" data-kode="-" style="padding:2px 3px;font-size:12px;text-align:right; white-space:nowrap;">Rp. 0</td>
|
|
</tr>
|
|
`
|
|
}
|
|
}else{
|
|
if (jn == 2) {
|
|
return `
|
|
<tr style="border-bottom: 1px solid #333;">
|
|
<td style="padding:2px 3px;font-size:12px;white-space:nowrap;" posisi="${i}" data-name="kode"></td>
|
|
<td style="padding:2px 3px;font-size:12px;white-space:nowrap;" posisi="${i}" data-name="akun"></td>
|
|
<td posisi="${i}" year="${year}" data-name="nom" class="nmap" data-kode="-" style="padding:2px 3px;font-size:12px;white-space:nowrap;text-align:right; ">Rp. 0</td>
|
|
<td posisi="${i}" year="${year-1}" data-name="nom" class="nmap" data-kode="-" style="padding:2px 3px;font-size:12px;white-space:nowrap;text-align:right; ">Rp. 0</td>
|
|
<td style="border-left: 1px solid #777;padding:2px 3px;font-size:12px;white-space:nowrap;">${s.kode}</td>
|
|
<td style="padding:2px 3px;font-size:12px;white-space:nowrap;">${s.nama}</td>
|
|
<td class="nmap" year="${year}" data-kode="${s.kode}" style="padding:2px 3px;font-size:12px;text-align:right; white-space:nowrap;">Rp. 0</td>
|
|
<td class="nmap" year="${year-1}" data-kode="${s.kode}" style="padding:2px 3px;font-size:12px;text-align:right; white-space:nowrap;">Rp. 0</td>
|
|
</tr>
|
|
`
|
|
}else if(jn == 1){
|
|
return `
|
|
<tr style="border-bottom: 1px solid #333;">
|
|
<td style="padding:2px 3px;font-size:12px;white-space:nowrap;" posisi="${i}" data-name="kode"></td>
|
|
<td style="padding:2px 3px;font-size:12px;white-space:nowrap;" posisi="${i}" data-name="akun"></td>
|
|
${mnt.map(function (h) {
|
|
return `
|
|
<td posisi="${i}" year="${h}" data-name="nom" class="nmap" data-kode="-" style="padding:2px 3px;font-size:12px;white-space:nowrap;text-align:right; ">Rp. 0</td>
|
|
`;
|
|
}).join('')}
|
|
<td posisi="${i}" year="${year-1}" data-name="nom" class="nmap" data-kode="-" style="padding:2px 3px;font-size:12px;white-space:nowrap;text-align:right; ">Rp. 0</td>
|
|
<td style="border-left: 1px solid #777;padding:2px 3px;font-size:12px;white-space:nowrap;">${s.kode}</td>
|
|
<td style="padding:2px 3px;font-size:12px;white-space:nowrap;">${s.nama}</td>
|
|
${mnt.map(function (h) {
|
|
return `
|
|
<td class="nmap" year="${h}" data-kode="${s.kode}" style="padding:2px 3px;font-size:12px;text-align:right; white-space:nowrap;">Rp. 0</td>
|
|
`;
|
|
}).join('') }
|
|
</tr>
|
|
`
|
|
}else{
|
|
return `
|
|
<tr style="border-bottom: 1px solid #333;">
|
|
<td style="padding:2px 3px;font-size:12px;white-space:nowrap;" posisi="${i}" data-name="kode"></td>
|
|
<td style="padding:2px 3px;font-size:12px;white-space:nowrap;" posisi="${i}" data-name="akun"></td>
|
|
<td posisi="${i}" data-name="nom" class="nmap" data-kode="-" style="padding:2px 3px;font-size:12px;white-space:nowrap;text-align:right; ">Rp. 0</td>
|
|
<td style="border-left: 1px solid #777;padding:2px 3px;font-size:12px;white-space:nowrap;">${s.kode}</td>
|
|
<td style="padding:2px 3px;font-size:12px;white-space:nowrap;">${s.nama}</td>
|
|
<td class="nmap" data-kode="${s.kode}" style="padding:2px 3px;font-size:12px;text-align:right; white-space:nowrap;">Rp. 0</td>
|
|
</tr>
|
|
`
|
|
}
|
|
}
|
|
}
|
|
|
|
const tempContentFooter = function(){
|
|
let year = _id('tahun').value.number(2);
|
|
let mnt = ['03', '06', '09', '12'];
|
|
let jn = _id('jenislap').value;
|
|
if(jn == 2){
|
|
return `
|
|
<tr style="border-bottom: 1px solid #333;">
|
|
<td style="padding:2px 3px;font-size:12px;white-space:nowrap;" colspan="2">Grand Total Aktiva</td>
|
|
<td year="${year}" style="padding:2px year 3px;font-size:12px;text-align:right; white-space:nowrap;" class="totald">Rp. 0</td>
|
|
<td year="${year-1}" style="padding:2px 3px;font-size:12px;text-align:right; white-space:nowrap;" class="totald">Rp. 0</td>
|
|
<td style="border-left: 1px solid #777;padding:2px 3px;font-size:12px;white-space:nowrap;" colspan="2">Grand Total Pasiva</td>
|
|
<td year="${year}" style="padding:2px 3px;font-size:12px;text-align:right; white-space:nowrap;" class="totalk">Rp. 0</td>
|
|
<td year="${year-1}" style="padding:2px 3px;font-size:12px;text-align:right; white-space:nowrap;" class="totalk">Rp. 0</td>
|
|
</tr>
|
|
`
|
|
}else if(jn == 1){
|
|
return `
|
|
<tr style="border-bottom: 1px solid #333;">
|
|
<td style="padding:2px 3px;font-size:12px;white-space:nowrap;" colspan="2">Grand Total Aktiva</td>
|
|
${mnt.map(function (s) {
|
|
return `
|
|
<td year="${s}" style="padding:2px year 3px;font-size:12px;text-align:right; white-space:nowrap;" class="totald">Rp. 0</td>
|
|
`;
|
|
}).join("")}
|
|
<td style="border-left: 1px solid #777;padding:2px 3px;font-size:12px;white-space:nowrap;" colspan="2">Grand Total Pasiva</td>
|
|
${mnt.map(function (s) {
|
|
return `
|
|
<td year="${s}" style="padding:2px 3px;font-size:12px;text-align:right; white-space:nowrap;" class="totalk">Rp. 0</td>
|
|
`;
|
|
}).join("")}
|
|
</tr>
|
|
`
|
|
}else{
|
|
return `
|
|
<tr style="border-bottom: 1px solid #333;">
|
|
<td style="padding:2px 3px;font-size:12px;white-space:nowrap;" colspan="2">Grand Total Aktiva</td>
|
|
<td style="padding:2px 3px;font-size:12px;text-align:right; white-space:nowrap;" class="totald">Rp. 0</td>
|
|
<td style="border-left: 1px solid #777;padding:2px 3px;font-size:12px;white-space:nowrap;" colspan="2">Grand Total Pasiva</td>
|
|
<td style="padding:2px 3px;font-size:12px;text-align:right; white-space:nowrap;" class="totalk">Rp. 0</td>
|
|
</tr>
|
|
`
|
|
}
|
|
}
|
|
|
|
let loader = function (callback) {
|
|
let year = _id('tahun').value.number(2);
|
|
let mnt = ['03', '06', '09', '12'];
|
|
let jn = _id('jenislap').value;
|
|
headerTemp();
|
|
let nr = (function (v) {
|
|
let laporantype = _id('laporantype').value;
|
|
let accNew = [].concat(acc);
|
|
if (laporantype === 'u') {
|
|
accNew = accNew.map(function (w) {
|
|
return {
|
|
app: w.app,
|
|
kode: w.main,
|
|
nama: w.nama_main,
|
|
dk: w.dk,
|
|
nr: w.nr
|
|
}
|
|
}).removeDuplicate(['app', 'kode', 'dk', 'nama', 'nr']);
|
|
}
|
|
accNew = accNew.sortArrayObjectAsc('kode');
|
|
globalThis.accNew = accNew;
|
|
if (v === 'usp' || v === 'acc') {
|
|
return accNew.like('app', v);
|
|
}
|
|
return accNew;
|
|
})(_id('app').value).filter(function (n) {
|
|
if (n.nr === 'N') {
|
|
return n;
|
|
}
|
|
});
|
|
|
|
|
|
if (nr.cond('K', 'dk').length < nr.cond('D', 'dk').length) {
|
|
d.innerHTML = nr.filter(function (s) {
|
|
if (s.dk == 'D') {
|
|
return s;
|
|
}
|
|
}).map(function (s, i) {
|
|
return tempContent(s,i,0)
|
|
}).join('') + tempContentFooter();
|
|
|
|
let r = nr.filter(function (s) {
|
|
if (s.dk == 'K') {
|
|
return s;
|
|
}
|
|
});
|
|
|
|
r.push({
|
|
kode: 'SHU',
|
|
nama: (function () {
|
|
if (_id('app').value === 'usp') {
|
|
return `USP`;
|
|
} else if (_id('app').value === 'acc') {
|
|
return `INDUK`;
|
|
} else {
|
|
return ``;
|
|
}
|
|
})()
|
|
})
|
|
|
|
r.forEach(function (s, i) {
|
|
if (jn == 2){
|
|
document.querySelector(`td[posisi="${i}"][data-name="kode"]`).innerHTML = s.kode;
|
|
document.querySelector(`td[posisi="${i}"][data-name="akun"]`).innerHTML = s.nama;
|
|
document.querySelector(`td[posisi="${i}"][data-name="nom"][year="${year}"]`).dataset.kode = s.kode;
|
|
document.querySelector(`td[posisi="${i}"][data-name="nom"][year="${year - 1}"]`).dataset.kode = s.kode;
|
|
}
|
|
else if(jn == 1){
|
|
document.querySelector(`td[posisi="${i}"][data-name="kode"]`).innerHTML = s.kode;
|
|
document.querySelector(`td[posisi="${i}"][data-name="akun"]`).innerHTML = s.nama;
|
|
mnt.forEach(function(sa){
|
|
document.querySelector(`td[posisi="${i}"][data-name="nom"][year="${sa}"]`).dataset.kode = s.kode;
|
|
})
|
|
}
|
|
else{
|
|
document.querySelector(`td[posisi="${i}"][data-name="kode"]`).innerHTML = s.kode;
|
|
document.querySelector(`td[posisi="${i}"][data-name="akun"]`).innerHTML = s.nama;
|
|
document.querySelector(`td[posisi="${i}"][data-name="nom"]`).dataset.kode = s.kode;
|
|
}
|
|
})
|
|
} else {
|
|
let r = nr.filter(function (s) {
|
|
if (s.dk == 'K') {
|
|
return s;
|
|
}
|
|
})
|
|
r.push({
|
|
kode: 'SHU',
|
|
nama: (function () {
|
|
if (_id('app').value === 'usp') {
|
|
return `USP`;
|
|
} else if (_id('app').value === 'acc') {
|
|
return `INDUK`;
|
|
} else {
|
|
return ``;
|
|
}
|
|
})()
|
|
})
|
|
d.innerHTML = r.map(function (s, i) {
|
|
return tempContent(s, i, 1);
|
|
}).join('') + tempContentFooter();
|
|
|
|
nr.filter(function (s) {
|
|
if (s.dk == 'D') {
|
|
return s;
|
|
}
|
|
}).forEach(function (s, i) {
|
|
if (jn == 2) {
|
|
document.querySelector(`td[posisi="${i}"][data-name="kode"]`).innerHTML = s.kode;
|
|
document.querySelector(`td[posisi="${i}"][data-name="akun"]`).innerHTML = s.nama;
|
|
document.querySelector(`td[posisi="${i}"][data-name="nom"][year="${year}"]`).dataset.kode = s.kode;
|
|
document.querySelector(`td[posisi="${i}"][data-name="nom"][year="${year - 1}"]`).dataset.kode = s.kode;
|
|
}
|
|
else if (jn == 1) {
|
|
document.querySelector(`td[posisi="${i}"][data-name="kode"]`).innerHTML = s.kode;
|
|
document.querySelector(`td[posisi="${i}"][data-name="akun"]`).innerHTML = s.nama;
|
|
mnt.forEach(function (sa) {
|
|
document.querySelector(`td[posisi="${i}"][data-name="nom"][year="${sa}"]`).dataset.kode = s.kode;
|
|
})
|
|
} else {
|
|
document.querySelector(`td[posisi="${i}"][data-name="kode"]`).innerHTML = s.kode;
|
|
document.querySelector(`td[posisi="${i}"][data-name="akun"]`).innerHTML = s.nama;
|
|
document.querySelector(`td[posisi="${i}"][data-name="nom"]`).dataset.kode = s.kode;
|
|
}
|
|
})
|
|
}
|
|
|
|
setTimeout(function () {
|
|
callback();
|
|
})
|
|
|
|
}
|
|
|
|
loader(function () {
|
|
setTimeout(function () {
|
|
loadData();
|
|
}, 100)
|
|
})
|
|
|
|
_id('play').addEventListener('click', function () {
|
|
loader(function () {
|
|
setTimeout(function () {
|
|
loadData();
|
|
}, 100)
|
|
})
|
|
});
|
|
|
|
|
|
function LoadDataPartial(d, lb, c=''){
|
|
d = d.filter(function (c) {
|
|
if (c.main != null) {
|
|
return c;
|
|
}
|
|
});
|
|
let akunP = Array.from(document.querySelectorAll('td[data-kode]'+c))
|
|
let totd = document.querySelector('td.totald'+c)
|
|
let totk = document.querySelector('td.totalk'+c)
|
|
let totDeb = 0;
|
|
let totKre = 0;
|
|
let laporantype = _id('laporantype').value;
|
|
let kodeGet = 'rek';
|
|
if (laporantype === 'u') {
|
|
kodeGet = 'main';
|
|
}
|
|
akunP.forEach(function (k) {
|
|
let g = d.cond(k.dataset.kode, kodeGet);
|
|
if (g.length > 0) {
|
|
let g = d.cond(k.dataset.kode, kodeGet);
|
|
if (g.length > 0) {
|
|
let total = g.sum('total');
|
|
if (g.singleItem('dk') == 'D') {
|
|
totDeb += total
|
|
} else {
|
|
totKre += total
|
|
}
|
|
k.innerHTML = total.rp(0);
|
|
}
|
|
}
|
|
});
|
|
totd.innerHTML = totDeb.rp(0).replace(/IDR/g, "Rp")
|
|
totk.innerHTML = totKre.rp(0).replace(/IDR/g, "Rp")
|
|
if (lb != undefined) {
|
|
let t = document.querySelector('td[data-kode="SHU"]'+c);
|
|
if(t != undefined){
|
|
console.log(lb)
|
|
t.innerHTML = (lb * -1).rp().replace(/IDR/g, "Rp");
|
|
totk.innerHTML = (totKre + (lb * -1)).rp(0).replace(/IDR/g, "Rp")
|
|
}
|
|
}
|
|
}
|
|
|
|
function loadData() {
|
|
let year = _id('tahun').value.number(2);
|
|
let jn = _id('jenislap').value;
|
|
let mnt = ['03', '06', '09', '12'];
|
|
|
|
if(jn == 2){
|
|
console.log('hi')
|
|
_perbandingan(function (d, lb, dd, lbd){
|
|
LoadDataPartial(d,lb, `[year="${year}"]`);
|
|
LoadDataPartial(dd, lbd, `[year="${year - 1}"]`);
|
|
}
|
|
, function () {
|
|
let day = tanggal(_id('tahun').value+'-12').normal3
|
|
if (_id('app').value == 'usp') {
|
|
return ` WHERE lap_bb.tgl <= "${day}" AND acc.app = 'usp'`;
|
|
} else if (_id('app').value == 'acc') {
|
|
return ` WHERE lap_bb.tgl <= "${day}" AND acc.app = 'acc'`;
|
|
} else {
|
|
return ` WHERE lap_bb.tgl <= "${day}"`;
|
|
}
|
|
}
|
|
, function () {
|
|
let day = tanggal((_id('tahun').value.number(2) -1) + '-12').normal3
|
|
if (_id('app').value == 'usp') {
|
|
return ` WHERE lap_bb.tgl <= "${day}" AND acc.app = 'usp'`;
|
|
} else if (_id('app').value == 'acc') {
|
|
return ` WHERE lap_bb.tgl <= "${day}" AND acc.app = 'acc'`;
|
|
} else {
|
|
return ` WHERE lap_bb.tgl <= "${day}"`;
|
|
}
|
|
}
|
|
)
|
|
}else if(jn == 1){
|
|
_triwulan(function (a) {
|
|
console.log(a);
|
|
mnt.forEach(function(h,z){
|
|
let q = (z * 2);
|
|
let w = (z * 2) + 1;
|
|
console.log(q);
|
|
LoadDataPartial(a[q], a[w][0].total, `[year="${h}"]`);
|
|
})
|
|
|
|
}, year, function () {
|
|
if (_id('app').value == 'usp') {
|
|
return ` AND acc.app = 'usp'`;
|
|
} else if (_id('app').value == 'acc') {
|
|
return ` AND acc.app = 'acc'`;
|
|
} else {
|
|
return ``;
|
|
}
|
|
})
|
|
}else{
|
|
_bbData(function (d, lb) {
|
|
d = d.filter(function (c) {
|
|
if (c.main != null) {
|
|
return c;
|
|
}
|
|
});
|
|
let akunP = Array.from(document.querySelectorAll('td[data-kode]'))
|
|
let totd = document.querySelector('td.totald')
|
|
let totk = document.querySelector('td.totalk')
|
|
let totDeb = 0;
|
|
let totKre = 0;
|
|
let laporantype = _id('laporantype').value;
|
|
let kodeGet = 'rek';
|
|
if (laporantype === 'u') {
|
|
kodeGet = 'main';
|
|
}
|
|
akunP.forEach(function (k) {
|
|
let g = d.cond(k.dataset.kode, kodeGet);
|
|
if (g.length > 0) {
|
|
let g = d.cond(k.dataset.kode, kodeGet);
|
|
if (g.length > 0) {
|
|
let total = g.sum('total');
|
|
if (g.singleItem('dk') == 'D') {
|
|
totDeb += total
|
|
} else {
|
|
totKre += total
|
|
}
|
|
k.innerHTML = total.rp(0);
|
|
}
|
|
}
|
|
});
|
|
totd.innerHTML = totDeb.rp(0).replace(/IDR/g, "Rp")
|
|
totk.innerHTML = totKre.rp(0).replace(/IDR/g, "Rp")
|
|
if (lb != undefined) {
|
|
let t = document.querySelector('td[data-kode="SHU"]');
|
|
t.innerHTML = (lb * -1).rp().replace(/IDR/g, "Rp");
|
|
totk.innerHTML = (totKre + (lb * -1)).rp(0).replace(/IDR/g, "Rp")
|
|
}
|
|
}, function () {
|
|
let day = tanggal(_id('tahun').value + '-' + _id('bulan').value).normal3;
|
|
_id('tgl1').innerHTML = tanggal(tanggal(day).normal2).sekarang;
|
|
_id('tgl2').innerHTML = tanggal(tanggal(day).normal3).sekarang;
|
|
|
|
if (_id('app').value == 'usp') {
|
|
return ` WHERE lap_bb.tgl <= "${day}" AND acc.app = 'usp'`;
|
|
} else if (_id('app').value == 'acc') {
|
|
return ` WHERE lap_bb.tgl <= "${day}" AND acc.app = 'acc'`;
|
|
} else {
|
|
return ` WHERE lap_bb.tgl <= "${day}"`;
|
|
}
|
|
|
|
|
|
})
|
|
}
|
|
}; loadData();
|
|
|
|
|
|
_id('print').addEventListener('click', function () {
|
|
let layout = {
|
|
"p": "a4portrait.css",
|
|
"l": "a4landscape.css"
|
|
}
|
|
|
|
$('#report').printThis({
|
|
// base: 'https://jasonday.github.io/printThis',
|
|
header: null, // prefix to html
|
|
footer: null,
|
|
importCSS: true,
|
|
loadCSS: ["{{PATH}}/" + layout['l'], '{{PATH}}/assets/css/bootstrap.min.css'],
|
|
header: false,
|
|
});
|
|
}, false)
|
|
|
|
_id('exportExcel').addEventListener('click', function () {
|
|
xlsx("#report");
|
|
}, false);
|