WITH transaksi AS ( --TRANSAKSI SELECT --DEPARTEMEN BY TURUNAN INDUK d.id departemen_id, d.kode departemen_kd, d.nama departemen_nm, --KIBS a.kib_id, a.th_beli, k.tahun, k.no_register, k.cara_perolehan, k.a_sertifikat_nomor, k.b_nomor_pabrik, k.b_nomor_mesin, k.b_merk, k.b_type, k.b_bahan, k.asal_usul, k.satuan, k.masa_manfaat, --MUTASI a.mutasi, a.mutasi_src, a.mutasi_type, a.mutasi_ket, --BARANG_KD BY TURUNAN SIMASDA a.barang_kd, --BARANG_KD BY TURUNAN SIMRAL a.kondisi, --DET_BARANG_KD kat2.id det_barang_id, kat2.kode det_barang_kd, kat2.nama det_barang_nm, --SUB_BARANG_KD kat3.id sub_barang_id, kat3.kode sub_barang_kd, kat3.nama sub_barang_nm, --SUB_SST_BARANG_KD kat3.susut_id sub_barang_sst_id, kat3.susut_kd sub_barang_sst_kd, --SUB_BARANG_KD BY TURUNAN SIMRAL --HIST a.departemen_awal_id, a.departemen_akhir_id, a.kategori_awal_id, a.kategori_akhir_id, a.kondisi_awal, a.kondisi_akhir, --JML a.jml_awal, a.jml_tambah, a.jml_kurang, --TRANSAKSI --MURNI a.saldo_awal, a.mutasi_tambah, a.mutasi_kurang, a.akumulasi_awal, a.penyusutan_awal, a.akumulasi_tambah, a.akumulasi_kurang, a.dat_akumulasi_awal, a.dat_penyusutan_awal, k.akumulasi dat_akumulasi_akhir, k.penyusutan dat_penyusutan_akhir, k.nilai_sisa dat_buku_akhir, a.penyusutan, a.akumulasi, a.buku, --KOMA CAST(a.saldo_awal AS decimal(38, 2)) - a.saldo_awal saldo_awal_koma, CAST(a.mutasi_tambah AS decimal(38, 2)) - a.mutasi_tambah mutasi_tambah_koma, CAST(a.mutasi_kurang AS decimal(38, 2)) - a.mutasi_kurang mutasi_kurang_koma, CAST(a.akumulasi_awal AS decimal(38, 2)) - a.akumulasi_awal akumulasi_awal_koma, CAST(a.akumulasi_tambah AS decimal(38, 2)) - a.akumulasi_tambah akumulasi_tambah_koma, CAST(a.akumulasi_kurang AS decimal(38, 2)) - a.akumulasi_kurang akumulasi_kurang_koma, CAST(a.dat_akumulasi_awal AS decimal(38, 2)) - a.dat_akumulasi_awal dat_akumulasi_awal_koma, CAST(a.dat_penyusutan_awal AS decimal(38, 2)) - a.dat_penyusutan_awal dat_penyusutan_awal_koma, CAST(a.penyusutan AS decimal(38, 2)) - a.penyusutan penyusutan_koma, CAST(a.akumulasi AS decimal(38, 2)) - a.akumulasi akumulasi_koma, CAST(a.buku AS decimal(38, 2)) - a.buku buku_koma, --BULAT CAST(a.saldo_awal AS decimal(38, 2)) saldo_awal_bulat, CAST(a.mutasi_tambah AS decimal(38, 2)) mutasi_tambah_bulat, CAST(a.mutasi_kurang AS decimal(38, 2)) mutasi_kurang_bulat, CAST(a.akumulasi_awal AS decimal(38, 2)) akumulasi_awal_bulat, CAST(a.akumulasi_tambah AS decimal(38, 2)) akumulasi_tambah_bulat, CAST(a.akumulasi_kurang AS decimal(38, 2)) akumulasi_kurang_bulat, CAST(a.dat_akumulasi_awal AS decimal(38, 2)) dat_akumulasi_awal_bulat, CAST(a.dat_penyusutan_awal AS decimal(38, 2)) dat_penyusutan_awal_bulat, CAST(a.penyusutan AS decimal(38, 2)) penyusutan_bulat, CAST(a.akumulasi AS decimal(38, 2)) akumulasi_bulat, CAST(a.buku AS decimal(38, 2)) buku_bulat FROM kategoris kat JOIN ( --PENILAIAN SELECT 'PENILAIAN' mutasi, '' mutasi_type, 'PENILAIAN' mutasi_src, '' mutasi_ket, CASE WHEN a.kondisi IN ('AK') THEN '1.5.2' WHEN substr(kat.kode, 1, 5) IN ('1.5.3') OR a.kondisi IN ('ATB') THEN '1.5.3' WHEN a.kondisi IN ('RB') THEN '1.5.4.01.01.01' WHEN a.kondisi IN ('TGR') THEN '1.5.4.01.01.03' WHEN a.kondisi IN ('EC') THEN '1.6.1.01.01.01' WHEN a.kondisi IN ('BJ') THEN '1.1.7' ELSE substr(kat.kode, 1, 5) END AS barang_kd, a.cara_perolehan, a.th_beli, a.id kib_id, a.departemen_id, a.kategori_id, a.kondisi kondisi_kib, CASE WHEN substr(kat.kode, 1, 5) IN ('1.5.3') AND a.kondisi NOT IN ('BJ') THEN 'ATB' WHEN a.kondisi IN ('B', 'KB') THEN 'B' ELSE a.kondisi END AS kondisi, --HIST a.departemen_id departemen_awal_id, a.departemen_id departemen_akhir_id, a.kategori_id kategori_awal_id, a.kategori_id kategori_akhir_id, a.kondisi kondisi_awal, a.kondisi kondisi_akhir, --JML 0 jml_awal, 0 jml_tambah, 0 jml_kurang, --TRX 0 saldo_awal, 0 mutasi_tambah, 0 mutasi_kurang, --SST 0 akumulasi_awal, 0 penyusutan_awal, 0 akumulasi_tambah, 0 akumulasi_kurang, 0 dat_akumulasi_awal, 0 dat_penyusutan_awal, a.penyusutan penyusutan, a.akumulasi akumulasi, a.nilai_sisa buku FROM aset.kibs a JOIN kategoris kat ON kat.id = a.kategori_id WHERE a.thn_nilai = {tahun_ini} AND a.status < 9 UNION --SALDO AWAL SELECT 'SALDO_AWAL' mutasi, '' mutasi_type, 'PENETAPAN' mutasi_src, '' mutasi_ket, CASE WHEN p.kondisi IN ('AK') THEN '1.5.2' WHEN substr(kat.kode, 1, 5) IN ('1.5.3') OR p.kondisi IN ('ATB') THEN '1.5.3' WHEN p.kondisi IN ('RB') THEN '1.5.4.01.01.01' WHEN p.kondisi IN ('TGR') THEN '1.5.4.01.01.03' WHEN p.kondisi IN ('EC') THEN '1.6.1.01.01.01' WHEN p.kondisi IN ('BJ') THEN '1.1.7' ELSE substr(kat.kode, 1, 5) END AS barang_kd, p.cara_perolehan, p.th_beli, p.kib_id, p.departemen_id, p.kategori_id, p.kondisi kondisi_kib, CASE WHEN substr(kat.kode, 1, 5) IN ('1.5.3') AND p.kondisi NOT IN ('BJ') THEN 'ATB' WHEN p.kondisi IN ('B', 'KB') THEN 'B' ELSE p.kondisi END AS kondisi, --HIST p.departemen_id departemen_awal_id, p.departemen_id departemen_akhir_id, p.kategori_id kategori_awal_id, p.kategori_id kategori_akhir_id, p.kondisi kondisi_awal, p.kondisi kondisi_akhir, --JML p.jumlah jml_awal, 0 jml_tambah, 0 jml_kurang, --TRX p.harga + p.koreksi saldo_awal, 0 mutasi_tambah, 0 mutasi_kurang, --SST p.akumulasi akumulasi_awal, p.penyusutan penyusutan_awal, 0 akumulasi_tambah, 0 akumulasi_kurang, 0 dat_akumulasi_awal, 0 dat_penyusutan_awal, 0 penyusutan, 0 akumulasi, 0 buku FROM aset.penetapan p JOIN kategoris kat ON kat.id = p.kategori_id WHERE p.thn_nilai = {tahun_lalu} UNION --PEROLEHAN THN_INI --PEROLEHAN REG_THN_INI = THN_INI = THN_INI SELECT CASE WHEN upper(a.cara_perolehan) IN ('PEMBELIAN') THEN 'THN_INI_MT_01' WHEN upper(a.cara_perolehan) IN ('BARJAS') THEN 'THN_INI_MT_05' WHEN upper(a.cara_perolehan) IN ('HIBAH') THEN 'THN_INI_MT_07' WHEN upper(a.cara_perolehan) IN ('KEWAJIBAN') THEN 'THN_INI_MT_10' WHEN upper(a.cara_perolehan) IN ('INVENTARISASI') THEN 'THN_LALU_MT_10' ELSE '' end as mutasi, '' mutasi_type, 'PEROLEHAN' mutasi_src, '' mutasi_ket, CASE WHEN p.kondisi IN ('AK') THEN '1.5.2' WHEN substr(kat.kode, 1, 5) IN ('1.5.3') OR p.kondisi IN ('ATB') THEN '1.5.3' WHEN p.kondisi IN ('RB') THEN '1.5.4.01.01.01' WHEN p.kondisi IN ('TGR') THEN '1.5.4.01.01.03' WHEN p.kondisi IN ('EC') THEN '1.6.1.01.01.01' WHEN p.kondisi IN ('BJ') THEN '1.1.7' ELSE substr(kat.kode, 1, 5) END AS barang_kd, a.cara_perolehan, a.th_beli, a.id kib_id, p.departemen_id, p.kategori_id, p.kondisi kondisi_kib, CASE WHEN substr(kat.kode, 1, 5) IN ('1.5.3') AND p.kondisi NOT IN ('BJ') THEN 'ATB' WHEN p.kondisi IN ('B', 'KB') THEN 'B' ELSE p.kondisi END AS kondisi, --HIST p.departemen_id departemen_awal_id, p.departemen_id departemen_akhir_id, p.kategori_id kategori_awal_id, p.kategori_id kategori_akhir_id, p.kondisi kondisi_awal, p.kondisi kondisi_akhir, --JML 0 jml_awal, a.jumlah jml_tambah, 0 jml_kurang, --TRX 0 saldo_awal, a.harga mutasi_tambah, 0 mutasi_kurang, --SST 0 akumulasi_awal, 0 penyusutan_awal, 0 akumulasi_tambah, 0 akumulasi_kurang, 0 dat_akumulasi_awal, 0 dat_penyusutan_awal, 0 penyusutan, 0 akumulasi, 0 buku FROM aset.kibs a JOIN aset.perolehan_items p ON p.id = a.perolehan_item_id JOIN kategoris kat ON kat.id = p.kategori_id LEFT JOIN aset.penetapan b ON b.kib_id = a.id AND b.thn_nilai = {tahun_lalu} WHERE p.tahun = {tahun_ini} AND p.th_beli = {tahun_ini} AND b.kib_id IS NULL UNION --PEROLEHAN REG_THN_INI = THN_INI <> THN_BELI SELECT CASE WHEN upper(a.cara_perolehan) IN ('PEMBELIAN') THEN 'THN_INI_MT_01' WHEN upper(a.cara_perolehan) IN ('HIBAH') THEN 'THN_LALU_MT_07' WHEN upper(a.cara_perolehan) IN ('INVENTARISASI') THEN 'THN_LALU_MT_10' ELSE '' END AS mutasi, '' mutasi_type, 'PEROLEHAN' mutasi_src, '' mutasi_ket, CASE WHEN p.kondisi IN ('AK') THEN '1.5.2' WHEN substr(kat.kode, 1, 5) IN ('1.5.3') OR p.kondisi IN ('ATB') THEN '1.5.3' WHEN p.kondisi IN ('RB') THEN '1.5.4.01.01.01' WHEN p.kondisi IN ('TGR') THEN '1.5.4.01.01.03' WHEN p.kondisi IN ('EC') THEN '1.6.1.01.01.01' WHEN p.kondisi IN ('BJ') THEN '1.1.7' ELSE substr(kat.kode, 1, 5) END AS barang_kd, a.cara_perolehan, a.th_beli, a.id kib_id, p.departemen_id, p.kategori_id, p.kondisi kondisi_kib, CASE WHEN substr(kat.kode, 1, 5) IN ('1.5.3') AND p.kondisi NOT IN ('BJ') THEN 'ATB' WHEN p.kondisi IN ('B', 'KB') THEN 'B' ELSE p.kondisi END AS kondisi, --HIST p.departemen_id departemen_awal_id, p.departemen_id departemen_akhir_id, p.kategori_id kategori_awal_id, p.kategori_id kategori_akhir_id, p.kondisi kondisi_awal, p.kondisi kondisi_akhir, --JML 0 jml_awal, a.jumlah jml_tambah, 0 jml_kurang, --TRX 0 saldo_awal, a.harga mutasi_tambah, 0 mutasi_kurang, --SST 0 akumulasi_awal, 0 penyusutan_awal, a.akumulasi - a.penyusutan akumulasi_tambah, 0 akumulasi_kurang, 0 dat_akumulasi_awal, 0 dat_penyusutan_awal, 0 penyusutan, 0 akumulasi, 0 buku FROM aset.kibs a JOIN aset.perolehan_items p ON p.id = a.perolehan_item_id JOIN kategoris kat ON kat.id = p.kategori_id LEFT JOIN aset.penetapan b ON b.kib_id = a.id AND b.thn_nilai = {tahun_lalu} WHERE p.tahun = {tahun_ini} AND p.th_beli <> {tahun_ini} AND b.kib_id IS NULL UNION --KEWAJIBAN MT PIUTANG REG_THN_INI = THN_INI <> THN_BELI SELECT 'THN_INI_MT_10' AS mutasi, '' mutasi_type, 'PEROLEHAN' mutasi_src, '' mutasi_ket, CASE WHEN a.kondisi IN ('AK') THEN '1.5.2' WHEN substr(kat.kode, 1, 5) IN ('1.5.3') OR a.kondisi IN ('ATB') THEN '1.5.3' WHEN a.kondisi IN ('RB') THEN '1.5.4.01.01.01' WHEN a.kondisi IN ('TGR') THEN '1.5.4.01.01.03' WHEN a.kondisi IN ('EC') THEN '1.6.1.01.01.01' WHEN a.kondisi IN ('BJ') THEN '1.1.7' ELSE substr(kat.kode, 1, 5) END AS barang_kd, a.cara_perolehan, a.th_beli, 0 kib_id, a.departemen_id, a.kategori_id, a.kondisi kondisi_kib, CASE WHEN substr(kat.kode, 1, 5) IN ('1.5.3') AND a.kondisi NOT IN ('BJ') THEN 'ATB' WHEN a.kondisi IN ('B', 'KB') THEN 'B' ELSE a.kondisi END AS kondisi, --HIST a.departemen_id departemen_awal_id, a.departemen_id departemen_akhir_id, a.kategori_id kategori_awal_id, a.kategori_id kategori_akhir_id, a.kondisi kondisi_awal, a.kondisi kondisi_akhir, --JML 0 jml_awal, a.jumlah jml_tambah, 0 jml_kurang, --TRX 0 saldo_awal, a.harga + a.biaya_umum mutasi_tambah, 0 mutasi_kurang, --SST 0 akumulasi_awal, 0 penyusutan_awal, 0 akumulasi_tambah, 0 akumulasi_kurang, 0 dat_akumulasi_awal, 0 dat_penyusutan_awal, 0 penyusutan, 0 akumulasi, 0 buku FROM aset.kewajibans a JOIN kategoris kat ON kat.id = a.kategori_id WHERE a.tahun = {tahun_ini} AND a.th_beli <> {tahun_ini} UNION --KEWAJIBAN MK PIUTANG REG_THN_INI = THN_INI <> THN_BELI SELECT 'THN_INI_MK_08' AS mutasi, '' mutasi_type, 'PEROLEHAN' mutasi_src, '' mutasi_ket, CASE WHEN a.kondisi IN ('AK') THEN '1.5.2' WHEN substr(kat.kode, 1, 5) IN ('1.5.3') OR a.kondisi IN ('ATB') THEN '1.5.3' WHEN a.kondisi IN ('RB') THEN '1.5.4.01.01.01' WHEN a.kondisi IN ('TGR') THEN '1.5.4.01.01.03' WHEN a.kondisi IN ('EC') THEN '1.6.1.01.01.01' WHEN a.kondisi IN ('BJ') THEN '1.1.7' ELSE substr(kat.kode, 1, 5) END AS barang_kd, a.cara_perolehan, a.th_beli, 0 kib_id, a.departemen_id, a.kategori_id, a.kondisi kondisi_kib, CASE WHEN substr(kat.kode, 1, 5) IN ('1.5.3') AND a.kondisi NOT IN ('BJ') THEN 'ATB' WHEN a.kondisi IN ('B', 'KB') THEN 'B' ELSE a.kondisi END AS kondisi, --HIST a.departemen_id departemen_awal_id, a.departemen_id departemen_akhir_id, a.kategori_id kategori_awal_id, a.kategori_id kategori_akhir_id, a.kondisi kondisi_awal, a.kondisi kondisi_akhir, --JML 0 jml_awal, 0 jml_tambah, a.jumlah jml_kurang, --TRX 0 saldo_awal, 0 mutasi_tambah, a.harga + a.biaya_umum mutasi_kurang, --SST 0 akumulasi_awal, 0 penyusutan_awal, 0 akumulasi_tambah, 0 akumulasi_kurang, 0 dat_akumulasi_awal, 0 dat_penyusutan_awal, 0 penyusutan, 0 akumulasi, 0 buku FROM aset.kewajibans a JOIN kategoris kat ON kat.id = a.kategori_id WHERE a.tahun = {tahun_ini} AND a.th_beli <> {tahun_ini} UNION --MUTASI MT KIB SELECT 'THN_INI_MT_02' mutasi, CASE WHEN substr(kat_awal.kode, 1, 5) <> substr(kat_akhir.kode, 1, 5) THEN 'EKSTRA' ELSE 'INTRA' END AS mutasi_type, 'REKLASIFIKASI_KIB' mutasi_src, 'AWAL : ' || kat_awal.kode || ' - ' || kat_awal.nama || ', AKHIR : ' || kat_akhir.kode || ' - ' || kat_akhir.nama AS mutasi_ket, CASE WHEN p.kondisi IN ('AK') THEN '1.5.2' WHEN substr(kat_akhir.kode, 1, 5) IN ('1.5.3') OR p.kondisi IN ('ATB') THEN '1.5.3' WHEN p.kondisi IN ('RB') THEN '1.5.4.01.01.01' WHEN p.kondisi IN ('TGR') THEN '1.5.4.01.01.03' WHEN p.kondisi IN ('EC') THEN '1.6.1.01.01.01' WHEN p.kondisi IN ('BJ') THEN '1.1.7' ELSE substr(kat_akhir.kode, 1, 5) END AS barang_kd, a.cara_perolehan, a.th_beli, a.id kib_id, p.departemen_id, a.kategori_id, p.kondisi kondisi_kib, CASE WHEN substr(kat_akhir.kode, 1, 5) IN ('1.5.3') AND p.kondisi NOT IN ('BJ') THEN 'ATB' WHEN p.kondisi IN ('B', 'KB') THEN 'B' ELSE p.kondisi END AS kondisi, --HIST p.departemen_id departemen_awal_id, p.departemen_id departemen_akhir_id, p.kategori_id kategori_awal_id, a.kategori_id kategori_akhir_id, p.kondisi kondisi_awal, p.kondisi kondisi_akhir, --JML 0 jml_awal, a.jumlah jml_tambah, 0 jml_kurang, --TRX 0 saldo_awal, a.harga mutasi_tambah, 0 mutasi_kurang, --SST 0 akumulasi_awal, 0 penyusutan_awal, 0 akumulasi_tambah, 0 akumulasi_kurang, 0 dat_akumulasi_awal, 0 dat_penyusutan_awal, 0 penyusutan, 0 akumulasi, 0 buku FROM aset.kibs a JOIN aset.perolehan_items p ON p.id = a.perolehan_item_id JOIN kategoris kat_awal ON kat_awal.id = p.kategori_id JOIN kategoris kat_akhir ON kat_akhir.id = a.kategori_id LEFT JOIN aset.penetapan b ON b.kib_id = a.id AND b.thn_nilai = {tahun_lalu} WHERE p.tahun = {tahun_ini} AND p.kategori_id != a.kategori_id AND b.kib_id IS NULL UNION --MUTASI MK KIB SELECT 'THN_INI_MK_02' mutasi, CASE WHEN substr(kat_awal.kode, 1, 5) <> substr(kat_akhir.kode, 1, 5) THEN 'EKSTRA' ELSE 'INTRA' END AS mutasi_type, 'REKLASIFIKASI_KIB' mutasi_src, 'AWAL : ' || kat_awal.kode || ' - ' || kat_awal.nama || ', AKHIR : ' || kat_akhir.kode || ' - ' || kat_akhir.nama AS mutasi_ket, CASE WHEN p.kondisi IN ('AK') THEN '1.5.2' WHEN substr(kat_awal.kode, 1, 5) IN ('1.5.3') OR p.kondisi IN ('ATB') THEN '1.5.3' WHEN p.kondisi IN ('RB') THEN '1.5.4.01.01.01' WHEN p.kondisi IN ('TGR') THEN '1.5.4.01.01.03' WHEN p.kondisi IN ('EC') THEN '1.6.1.01.01.01' WHEN p.kondisi IN ('BJ') THEN '1.1.7' ELSE substr(kat_awal.kode, 1, 5) END AS barang_kd, a.cara_perolehan, a.th_beli, a.id kib_id, p.departemen_id, p.kategori_id, p.kondisi kondisi_kib, CASE WHEN substr(kat_awal.kode, 1, 5) IN ('1.5.3') AND p.kondisi NOT IN ('BJ') THEN 'ATB' WHEN p.kondisi IN ('B', 'KB') THEN 'B' ELSE p.kondisi END AS kondisi, --HIST p.departemen_id departemen_awal_id, p.departemen_id departemen_akhir_id, p.kategori_id kategori_awal_id, a.kategori_id kategori_akhir_id, p.kondisi kondisi_awal, p.kondisi kondisi_akhir, --JML 0 jml_awal, 0 jml_tambah, a.jumlah jml_kurang, --TRX 0 saldo_awal, 0 mutasi_tambah, a.harga mutasi_kurang, --SST 0 akumulasi_awal, 0 penyusutan_awal, 0 akumulasi_tambah, 0 akumulasi_kurang, 0 dat_akumulasi_awal, 0 dat_penyusutan_awal, 0 penyusutan, 0 akumulasi, 0 buku FROM aset.kibs a JOIN aset.perolehan_items p ON p.id = a.perolehan_item_id JOIN kategoris kat_awal ON kat_awal.id = p.kategori_id JOIN kategoris kat_akhir ON kat_akhir.id = a.kategori_id LEFT JOIN aset.penetapan b ON b.kib_id = a.id AND b.thn_nilai = {tahun_lalu} WHERE p.tahun = {tahun_ini} AND p.kategori_id != a.kategori_id AND b.kib_id IS NULL UNION --REKLASIFIKASI SIKLUS I --MUTASI MT REKLASIFIKASI SELECT CASE WHEN p.kondisi IN ('B', 'KB') AND a.kondisi IN ('EC') THEN 'THN_INI_MT_03' WHEN p.kondisi IN ('B', 'KB') AND a.kondisi IN ('BJ') THEN 'THN_INI_MT_05' END AS mutasi, CASE WHEN p.kondisi IN ('B', 'KB') AND a.kondisi IN ('B', 'KB') THEN 'INTRA' ELSE 'EKSTRA' END AS mutasi_type, 'REKLASIFIKASI' mutasi_src, 'AWAL : ' || p.kondisi || ', AKHIR : ' || a.kondisi mutasi_ket, CASE WHEN a.kondisi IN ('AK') THEN '1.5.2' WHEN substr(kat.kode, 1, 5) IN ('1.5.3') OR a.kondisi IN ('ATB') THEN '1.5.3' WHEN a.kondisi IN ('RB') THEN '1.5.4.01.01.01' WHEN a.kondisi IN ('TGR') THEN '1.5.4.01.01.03' WHEN a.kondisi IN ('EC') THEN '1.6.1.01.01.01' WHEN a.kondisi IN ('BJ') THEN '1.1.7' ELSE substr(kat.kode, 1, 5) END AS barang_kd, a.cara_perolehan, a.th_beli, a.id kib_id, a.departemen_id, a.kategori_id, a.kondisi kondisi_kib, CASE WHEN substr(kat.kode, 1, 5) IN ('1.5.3') AND a.kondisi NOT IN ('BJ') THEN 'ATB' WHEN a.kondisi IN ('B', 'KB') THEN 'B' ELSE a.kondisi END AS kondisi, --HIST a.departemen_id departemen_awal_id, a.departemen_id departemen_akhir_id, a.kategori_id kategori_awal_id, a.kategori_id kategori_akhir_id, p.kondisi kondisi_awal, a.kondisi kondisi_akhir, --JML 0 jml_awal, a.jumlah jml_tambah, 0 jml_kurang, --TRX 0 saldo_awal, a.harga mutasi_tambah, 0 mutasi_kurang, --SST 0 akumulasi_awal, 0 penyusutan_awal, 0 akumulasi_tambah, 0 akumulasi_kurang, 0 dat_akumulasi_awal, 0 dat_penyusutan_awal, 0 penyusutan, 0 akumulasi, 0 buku FROM aset.kibs a JOIN aset.perolehan_items p ON p.id = a.perolehan_item_id JOIN kategoris kat ON kat.id = a.kategori_id LEFT JOIN aset.penetapan b ON b.kib_id = a.id AND b.thn_nilai = {tahun_lalu} WHERE p.tahun = {tahun_ini} AND p.departemen_id = a.departemen_id AND p.kondisi != a.kondisi AND b.kib_id IS NULL UNION --MUTASI MK REKLASIFIKASI SELECT CASE WHEN p.kondisi IN ('B', 'KB') AND a.kondisi IN ('EC') THEN 'THN_INI_MK_03' WHEN p.kondisi IN ('B', 'KB') AND a.kondisi IN ('BJ') THEN 'THN_INI_MK_05' END AS mutasi, CASE WHEN p.kondisi IN ('B', 'KB') AND a.kondisi IN ('B', 'KB') THEN 'INTRA' ELSE 'EKSTRA' END AS mutasi_type, 'REKLASIFIKASI' mutasi_src, 'AWAL : ' || p.kondisi || ', AKHIR : ' || a.kondisi mutasi_ket, CASE WHEN p.kondisi IN ('AK') THEN '1.5.2' WHEN substr(kat.kode, 1, 5) IN ('1.5.3') OR p.kondisi IN ('ATB') THEN '1.5.3' WHEN p.kondisi IN ('RB') THEN '1.5.4.01.01.01' WHEN p.kondisi IN ('TGR') THEN '1.5.4.01.01.03' WHEN p.kondisi IN ('EC') THEN '1.6.1.01.01.01' WHEN p.kondisi IN ('BJ') THEN '1.1.7' ELSE substr(kat.kode, 1, 5) END AS barang_kd, a.cara_perolehan, a.th_beli, a.id kib_id, a.departemen_id, a.kategori_id, p.kondisi kondisi_kib, CASE WHEN substr(kat.kode, 1, 5) IN ('1.5.3') AND p.kondisi NOT IN ('BJ') THEN 'ATB' WHEN p.kondisi IN ('B', 'KB') THEN 'B' ELSE p.kondisi END AS kondisi, --HIST a.departemen_id departemen_awal_id, a.departemen_id departemen_akhir_id, a.kategori_id kategori_awal_id, a.kategori_id kategori_akhir_id, p.kondisi kondisi_awal, a.kondisi kondisi_akhir, --JML 0 jml_awal, 0 jml_tambah, a.jumlah jml_kurang, --TRX 0 saldo_awal, 0 mutasi_tambah, a.harga mutasi_kurang, --SST 0 akumulasi_awal, 0 penyusutan_awal, 0 akumulasi_tambah, 0 akumulasi_kurang, 0 dat_akumulasi_awal, 0 dat_penyusutan_awal, 0 penyusutan, 0 akumulasi, 0 buku FROM aset.kibs a JOIN aset.perolehan_items p ON p.id = a.perolehan_item_id JOIN kategoris kat ON kat.id = a.kategori_id LEFT JOIN aset.penetapan b ON b.kib_id = a.id AND b.thn_nilai = {tahun_lalu} WHERE p.tahun = {tahun_ini} AND p.departemen_id = a.departemen_id AND p.kondisi != a.kondisi AND b.kib_id IS NULL UNION --REKLASIFIKASI SIKLUS II --MUTASI MT REKLASIFIKASI SELECT CASE WHEN p.kondisi IN ('B', 'KB') AND a.kondisi IN ('EC') THEN 'THN_INI_MT_03' WHEN p.kondisi IN ('B', 'KB') AND a.kondisi IN ('BJ') THEN 'THN_INI_MT_05' END AS mutasi, CASE WHEN p.kondisi IN ('B', 'KB') AND a.kondisi IN ('B', 'KB') THEN 'INTRA' ELSE 'EKSTRA' END AS mutasi_type, 'REKLASIFIKASI' mutasi_src, 'AWAL : ' || p.kondisi || ', AKHIR : ' || a.kondisi mutasi_ket, CASE WHEN a.kondisi IN ('AK') THEN '1.5.2' WHEN substr(kat.kode, 1, 5) IN ('1.5.3') OR a.kondisi IN ('ATB') THEN '1.5.3' WHEN a.kondisi IN ('RB') THEN '1.5.4.01.01.01' WHEN a.kondisi IN ('TGR') THEN '1.5.4.01.01.03' WHEN a.kondisi IN ('EC') THEN '1.6.1.01.01.01' WHEN a.kondisi IN ('BJ') THEN '1.1.7' ELSE substr(kat.kode, 1, 5) END AS barang_kd, a.cara_perolehan, a.th_beli, a.id kib_id, a.departemen_id, a.kategori_id, a.kondisi kondisi_kib, CASE WHEN substr(kat.kode, 1, 5) IN ('1.5.3') AND a.kondisi NOT IN ('BJ') THEN 'ATB' WHEN a.kondisi IN ('B', 'KB') THEN 'B' ELSE a.kondisi END AS kondisi, --HIST a.departemen_id departemen_awal_id, a.departemen_id departemen_akhir_id, a.kategori_id kategori_awal_id, a.kategori_id kategori_akhir_id, p.kondisi kondisi_awal, a.kondisi kondisi_akhir, --JML 0 jml_awal, a.jumlah jml_tambah, 0 jml_kurang, --TRX 0 saldo_awal, a.harga mutasi_tambah, 0 mutasi_kurang, --SST 0 akumulasi_awal, 0 penyusutan_awal, 0 akumulasi_tambah, 0 akumulasi_kurang, 0 dat_akumulasi_awal, 0 dat_penyusutan_awal, 0 penyusutan, 0 akumulasi, 0 buku FROM aset.kibs a JOIN aset.perolehan_items p ON p.id = a.perolehan_item_id JOIN kategoris kat ON kat.id = a.kategori_id LEFT JOIN aset.penetapan b ON b.kib_id = a.id AND b.thn_nilai = {tahun_lalu} WHERE p.tahun = {tahun_ini} AND p.departemen_id != a.departemen_id AND p.kondisi != a.kondisi AND b.kib_id IS NULL UNION --MUTASI MK REKLASIFIKASI SELECT CASE WHEN p.kondisi IN ('B', 'KB') AND a.kondisi IN ('EC') THEN 'THN_INI_MK_03' WHEN p.kondisi IN ('B', 'KB') AND a.kondisi IN ('BJ') THEN 'THN_INI_MK_05' END AS mutasi, CASE WHEN p.kondisi IN ('B', 'KB') AND a.kondisi IN ('B', 'KB') THEN 'INTRA' ELSE 'EKSTRA' END AS mutasi_type, 'REKLASIFIKASI' mutasi_src, 'AWAL : ' || p.kondisi || ', AKHIR : ' || a.kondisi mutasi_ket, CASE WHEN p.kondisi IN ('AK') THEN '1.5.2' WHEN substr(kat.kode, 1, 5) IN ('1.5.3') OR p.kondisi IN ('ATB') THEN '1.5.3' WHEN p.kondisi IN ('RB') THEN '1.5.4.01.01.01' WHEN p.kondisi IN ('TGR') THEN '1.5.4.01.01.03' WHEN p.kondisi IN ('EC') THEN '1.6.1.01.01.01' WHEN p.kondisi IN ('BJ') THEN '1.1.7' ELSE substr(kat.kode, 1, 5) END AS barang_kd, a.cara_perolehan, a.th_beli, a.id kib_id, a.departemen_id, a.kategori_id, p.kondisi kondisi_kib, CASE WHEN substr(kat.kode, 1, 5) IN ('1.5.3') AND p.kondisi NOT IN ('BJ') THEN 'ATB' WHEN p.kondisi IN ('B', 'KB') THEN 'B' ELSE p.kondisi END AS kondisi, --HIST a.departemen_id departemen_awal_id, a.departemen_id departemen_akhir_id, a.kategori_id kategori_awal_id, a.kategori_id kategori_akhir_id, p.kondisi kondisi_awal, a.kondisi kondisi_akhir, --JML 0 jml_awal, 0 jml_tambah, a.jumlah jml_kurang, --TRX 0 saldo_awal, 0 mutasi_tambah, a.harga mutasi_kurang, --SST 0 akumulasi_awal, 0 penyusutan_awal, 0 akumulasi_tambah, 0 akumulasi_kurang, 0 dat_akumulasi_awal, 0 dat_penyusutan_awal, 0 penyusutan, 0 akumulasi, 0 buku FROM aset.kibs a JOIN aset.perolehan_items p ON p.id = a.perolehan_item_id JOIN kategoris kat ON kat.id = a.kategori_id LEFT JOIN aset.penetapan b ON b.kib_id = a.id AND b.thn_nilai = {tahun_lalu} WHERE p.tahun = {tahun_ini} AND p.departemen_id != a.departemen_id AND p.kondisi != a.kondisi AND b.kib_id IS NULL UNION --MUTASI OPD SIKLUS I - REG_THN_INI = THN_INI = THN_BELI --MUTASI MT OPD SELECT 'THN_INI_MT_06' mutasi, CASE WHEN substr(d.kode, 1, 2) IN (substr(d2.kode, 1, 2)) THEN 'INTRA' ELSE 'EKSTRA' END AS mutasi_type, 'DROPPING_OPD' mutasi_src, 'AWAL : ' || d2.kode || ' - ' || d2.nama || ', AKHIR : ' || d.kode || ' - ' || d.nama mutasi_ket, CASE WHEN p.kondisi IN ('AK') THEN '1.5.2' WHEN substr(kat.kode, 1, 5) IN ('1.5.3') OR p.kondisi IN ('ATB') THEN '1.5.3' WHEN p.kondisi IN ('RB') THEN '1.5.4.01.01.01' WHEN p.kondisi IN ('TGR') THEN '1.5.4.01.01.03' WHEN p.kondisi IN ('EC') THEN '1.6.1.01.01.01' WHEN p.kondisi IN ('BJ') THEN '1.1.7' ELSE substr(kat.kode, 1, 5) END AS barang_kd, a.cara_perolehan, a.th_beli, a.id kib_id, a.departemen_id, p.kategori_id, p.kondisi kondisi_kib, CASE WHEN substr(kat.kode, 1, 5) IN ('1.5.3') AND p.kondisi NOT IN ('BJ') THEN 'ATB' WHEN p.kondisi IN ('B', 'KB') THEN 'B' ELSE p.kondisi END AS kondisi, --HIST p.departemen_id departemen_awal_id, a.departemen_id departemen_akhir_id, p.kategori_id kategori_awal_id, p.kategori_id kategori_akhir_id, p.kondisi kondisi_awal, p.kondisi kondisi_akhir, --JML 0 jml_awal, a.jumlah jml_tambah, 0 jml_kurang, --TRX 0 saldo_awal, a.harga mutasi_tambah, 0 mutasi_kurang, --SST 0 akumulasi_awal, 0 penyusutan_awal, 0 akumulasi_tambah, 0 akumulasi_kurang, 0 dat_akumulasi_awal, 0 dat_penyusutan_awal, 0 penyusutan, 0 akumulasi, 0 buku FROM aset.kibs a JOIN aset.perolehan_items p ON p.id = a.perolehan_item_id JOIN departemen d ON d.id = a.departemen_id JOIN departemen d2 ON d2.id = p.departemen_id JOIN kategoris kat ON kat.id = p.kategori_id LEFT JOIN aset.penetapan b ON b.kib_id = a.id AND b.thn_nilai = {tahun_lalu} WHERE p.tahun = {tahun_ini} AND p.th_beli = {tahun_ini} AND p.departemen_id != a.departemen_id AND b.kib_id IS NULL --END PEROLEHAN THN_INI UNION --PEROLEHAN THN_INI --MUTASI OPD SIKLUS I - REG_THN_INI = THN_INI = THN_BELI --MUTASI MT OPD SELECT 'THN_INI_MT_06' mutasi, CASE WHEN substr(d.kode, 1, 2) IN (substr(d2.kode, 1, 2)) THEN 'INTRA' ELSE 'EKSTRA' END AS mutasi_type, 'DROPPING_OPD' mutasi_src, 'AWAL : ' || d2.kode || ' - ' || d2.nama || ', AKHIR : ' || d.kode || ' - ' || d.nama mutasi_ket, CASE WHEN p.kondisi IN ('AK') THEN '1.5.2' WHEN substr(kat.kode, 1, 5) IN ('1.5.3') OR p.kondisi IN ('ATB') THEN '1.5.3' WHEN p.kondisi IN ('RB') THEN '1.5.4.01.01.01' WHEN p.kondisi IN ('TGR') THEN '1.5.4.01.01.03' WHEN p.kondisi IN ('EC') THEN '1.6.1.01.01.01' WHEN p.kondisi IN ('BJ') THEN '1.1.7' ELSE substr(kat.kode, 1, 5) END AS barang_kd, a.cara_perolehan, a.th_beli, a.id kib_id, a.departemen_id, p.kategori_id, p.kondisi kondisi_kib, CASE WHEN substr(kat.kode, 1, 5) IN ('1.5.3') AND p.kondisi NOT IN ('BJ') THEN 'ATB' WHEN p.kondisi IN ('B', 'KB') THEN 'B' ELSE p.kondisi END AS kondisi, --HIST p.departemen_id departemen_awal_id, a.departemen_id departemen_akhir_id, p.kategori_id kategori_awal_id, p.kategori_id kategori_akhir_id, p.kondisi kondisi_awal, p.kondisi kondisi_akhir, --JML 0 jml_awal, a.jumlah jml_tambah, 0 jml_kurang, --TRX 0 saldo_awal, a.harga mutasi_tambah, 0 mutasi_kurang, --SST 0 akumulasi_awal, 0 penyusutan_awal, 0 akumulasi_tambah, 0 akumulasi_kurang, 0 dat_akumulasi_awal, 0 dat_penyusutan_awal, 0 penyusutan, 0 akumulasi, 0 buku FROM aset.kibs a JOIN aset.perolehan_items p ON p.id = a.perolehan_item_id JOIN departemen d ON d.id = a.departemen_id JOIN departemen d2 ON d2.id = p.departemen_id JOIN kategoris kat ON kat.id = p.kategori_id LEFT JOIN aset.penetapan b ON b.kib_id = a.id AND b.thn_nilai = {tahun_lalu} WHERE p.tahun = {tahun_ini} AND p.th_beli = {tahun_ini} AND p.departemen_id != a.departemen_id AND b.kib_id IS NULL UNION --MUTASI MK OPD SELECT 'THN_INI_MK_01' mutasi, CASE WHEN substr(d.kode, 1, 2) IN (substr(d2.kode, 1, 2)) THEN 'INTRA' ELSE 'EKSTRA' END AS mutasi_type, 'DROPPING_OPD' mutasi_src, 'AWAL : ' || d2.kode || ' - ' || d2.nama || ', AKHIR : ' || d.kode || ' - ' || d.nama mutasi_ket, CASE WHEN p.kondisi IN ('AK') THEN '1.5.2' WHEN substr(kat.kode, 1, 5) IN ('1.5.3') OR p.kondisi IN ('ATB') THEN '1.5.3' WHEN p.kondisi IN ('RB') THEN '1.5.4.01.01.01' WHEN p.kondisi IN ('TGR') THEN '1.5.4.01.01.03' WHEN p.kondisi IN ('EC') THEN '1.6.1.01.01.01' WHEN p.kondisi IN ('BJ') THEN '1.1.7' ELSE substr(kat.kode, 1, 5) END AS barang_kd, a.cara_perolehan, a.th_beli, a.id kib_id, p.departemen_id, p.kategori_id, p.kondisi kondisi_kib, CASE WHEN substr(kat.kode, 1, 5) IN ('1.5.3') AND p.kondisi NOT IN ('BJ') THEN 'ATB' WHEN p.kondisi IN ('B', 'KB') THEN 'B' ELSE p.kondisi END AS kondisi, --HIST p.departemen_id departemen_awal_id, a.departemen_id departemen_akhir_id, p.kategori_id kategori_awal_id, p.kategori_id kategori_akhir_id, p.kondisi kondisi_awal, p.kondisi kondisi_akhir, --JML 0 jml_awal, 0 jml_tambah, a.jumlah jml_kurang, --TRX 0 saldo_awal, 0 mutasi_tambah, a.harga mutasi_kurang, --SST 0 akumulasi_awal, 0 penyusutan_awal, 0 akumulasi_tambah, 0 akumulasi_kurang, 0 dat_akumulasi_awal, 0 dat_penyusutan_awal, 0 penyusutan, 0 akumulasi, 0 buku FROM aset.kibs a JOIN aset.perolehan_items p ON p.id = a.perolehan_item_id JOIN departemen d ON d.id = a.departemen_id JOIN departemen d2 ON d2.id = p.departemen_id JOIN kategoris kat ON kat.id = p.kategori_id LEFT JOIN aset.penetapan b ON b.kib_id = a.id AND b.thn_nilai = {tahun_lalu} WHERE p.tahun = {tahun_ini} AND p.th_beli = {tahun_ini} AND p.departemen_id != a.departemen_id AND b.kib_id IS NULL UNION --MUTASI OPD SIKLUS II - REG_THN_INI = THN_INI <> THN_BELI --MUTASI MT OPD SELECT 'THN_LALU_MT_01' mutasi, CASE WHEN substr(d.kode, 1, 2) IN (substr(d2.kode, 1, 2)) THEN 'INTRA' ELSE 'EKSTRA' END AS mutasi_type, 'DROPPING_OPD' mutasi_src, 'AWAL : ' || d2.kode || ' - ' || d2.nama || ', AKHIR : ' || d.kode || ' - ' || d.nama mutasi_ket, CASE WHEN p.kondisi IN ('AK') THEN '1.5.2' WHEN substr(kat.kode, 1, 5) IN ('1.5.3') OR p.kondisi IN ('ATB') THEN '1.5.3' WHEN p.kondisi IN ('RB') THEN '1.5.4.01.01.01' WHEN p.kondisi IN ('TGR') THEN '1.5.4.01.01.03' WHEN p.kondisi IN ('EC') THEN '1.6.1.01.01.01' WHEN p.kondisi IN ('BJ') THEN '1.1.7' ELSE substr(kat.kode, 1, 5) END AS barang_kd, a.cara_perolehan, a.th_beli, a.id kib_id, a.departemen_id, p.kategori_id, p.kondisi kondisi_kib, CASE WHEN substr(kat.kode, 1, 5) IN ('1.5.3') AND p.kondisi NOT IN ('BJ') THEN 'ATB' WHEN p.kondisi IN ('B', 'KB') THEN 'B' ELSE p.kondisi END AS kondisi, --HIST p.departemen_id departemen_awal_id, a.departemen_id departemen_akhir_id, p.kategori_id kategori_awal_id, p.kategori_id kategori_akhir_id, p.kondisi kondisi_awal, p.kondisi kondisi_akhir, --JML 0 jml_awal, a.jumlah jml_tambah, 0 jml_kurang, --TRX 0 saldo_awal, a.harga mutasi_tambah, 0 mutasi_kurang, --SST 0 akumulasi_awal, 0 penyusutan_awal, 0 akumulasi_tambah, 0 akumulasi_kurang, 0 dat_akumulasi_awal, 0 dat_penyusutan_awal, 0 penyusutan, 0 akumulasi, 0 buku FROM aset.kibs a JOIN aset.perolehan_items p ON p.id = a.perolehan_item_id JOIN departemen d ON d.id = a.departemen_id JOIN departemen d2 ON d2.id = p.departemen_id JOIN kategoris kat ON kat.id = p.kategori_id LEFT JOIN aset.penetapan b ON b.kib_id = a.id AND b.thn_nilai = {tahun_lalu} WHERE p.tahun = {tahun_ini} AND p.th_beli <> {tahun_ini} AND p.departemen_id != a.departemen_id AND b.kib_id IS NULL UNION --MUTASI MK OPD SELECT 'THN_LALU_MK_01' mutasi, CASE WHEN substr(d.kode, 1, 2) IN (substr(d2.kode, 1, 2)) THEN 'INTRA' ELSE 'EKSTRA' END AS mutasi_type, 'DROPPING_OPD' mutasi_src, 'AWAL : ' || d2.kode || ' - ' || d2.nama || ', AKHIR : ' || d.kode || ' - ' || d.nama mutasi_ket, CASE WHEN p.kondisi IN ('AK') THEN '1.5.2' WHEN substr(kat.kode, 1, 5) IN ('1.5.3') OR p.kondisi IN ('ATB') THEN '1.5.3' WHEN p.kondisi IN ('RB') THEN '1.5.4.01.01.01' WHEN p.kondisi IN ('TGR') THEN '1.5.4.01.01.03' WHEN p.kondisi IN ('EC') THEN '1.6.1.01.01.01' WHEN p.kondisi IN ('BJ') THEN '1.1.7' ELSE substr(kat.kode, 1, 5) END AS barang_kd, a.cara_perolehan, a.th_beli, a.id kib_id, p.departemen_id, p.kategori_id, p.kondisi kondisi_kib, CASE WHEN substr(kat.kode, 1, 5) IN ('1.5.3') AND p.kondisi NOT IN ('BJ') THEN 'ATB' WHEN p.kondisi IN ('B', 'KB') THEN 'B' ELSE p.kondisi END AS kondisi, --HIST p.departemen_id departemen_awal_id, a.departemen_id departemen_akhir_id, p.kategori_id kategori_awal_id, p.kategori_id kategori_akhir_id, p.kondisi kondisi_awal, p.kondisi kondisi_akhir, --JML 0 jml_awal, 0 jml_tambah, a.jumlah jml_kurang, --TRX 0 saldo_awal, 0 mutasi_tambah, a.harga mutasi_kurang, --SST 0 akumulasi_awal, 0 penyusutan_awal, 0 akumulasi_tambah, 0 akumulasi_kurang, 0 dat_akumulasi_awal, 0 dat_penyusutan_awal, 0 penyusutan, 0 akumulasi, 0 buku FROM aset.kibs a JOIN aset.perolehan_items p ON p.id = a.perolehan_item_id JOIN departemen d ON d.id = a.departemen_id JOIN departemen d2 ON d2.id = p.departemen_id JOIN kategoris kat ON kat.id = p.kategori_id LEFT JOIN aset.penetapan b ON b.kib_id = a.id AND b.thn_nilai = {tahun_lalu} WHERE p.tahun = {tahun_ini} AND p.th_beli <> {tahun_ini} AND p.departemen_id != a.departemen_id AND b.kib_id IS NULL --END PEROLEHAN THN_INI UNION --PEROLEHAN THN_LALU --MUTASI MT OPD SELECT 'THN_LALU_MT_01' mutasi, CASE WHEN substr(d.kode, 1, 2) IN (substr(d2.kode, 1, 2)) THEN 'INTRA' ELSE 'EKSTRA' END AS mutasi_type, 'DROPPING_OPD' mutasi_src, 'AWAL : ' || d2.kode || ' - ' || d2.nama || ', AKHIR : ' || d.kode || ' - ' || d.nama mutasi_ket, CASE WHEN p.kondisi IN ('AK') THEN '1.5.2' WHEN substr(kat.kode, 1, 5) IN ('1.5.3') OR p.kondisi IN ('ATB') THEN '1.5.3' WHEN p.kondisi IN ('RB') THEN '1.5.4.01.01.01' WHEN p.kondisi IN ('TGR') THEN '1.5.4.01.01.03' WHEN p.kondisi IN ('EC') THEN '1.6.1.01.01.01' WHEN p.kondisi IN ('BJ') THEN '1.1.7' ELSE substr(kat.kode, 1, 5) END AS barang_kd, p.cara_perolehan, p.th_beli, p.kib_id, a.departemen_id, p.kategori_id, p.kondisi kondisi_kib, CASE WHEN substr(kat.kode, 1, 5) IN ('1.5.3') AND p.kondisi NOT IN ('BJ') THEN 'ATB' WHEN p.kondisi IN ('B', 'KB') THEN 'B' ELSE p.kondisi END AS kondisi, --HIST p.departemen_id departemen_awal_id, a.departemen_id departemen_akhir_id, p.kategori_id kategori_awal_id, p.kategori_id kategori_akhir_id, p.kondisi kondisi_awal, p.kondisi kondisi_akhir, --JML 0 jml_awal, a.jumlah jml_tambah, 0 jml_kurang, --TRX 0 saldo_awal, p.harga + p.koreksi mutasi_tambah, 0 mutasi_kurang, --SST 0 akumulasi_awal, 0 penyusutan_awal, p.akumulasi akumulasi_tambah, 0 akumulasi_kurang, p.akumulasi dat_akumulasi_awal, p.penyusutan dat_penyusutan_awal, 0 penyusutan, 0 akumulasi, 0 buku FROM aset.kibs a JOIN aset.penetapan p ON a.id = p.kib_id JOIN departemen d ON d.id = a.departemen_id JOIN departemen d2 ON d2.id = p.departemen_id JOIN kategoris kat ON kat.id = p.kategori_id WHERE p.departemen_id != a.departemen_id AND p.thn_nilai = {tahun_lalu} UNION --MUTASI MK OPD SELECT 'THN_LALU_MK_01' mutasi, CASE WHEN substr(d.kode, 1, 2) IN (substr(d2.kode, 1, 2)) THEN 'INTRA' ELSE 'EKSTRA' END AS mutasi_type, 'DROPPING_OPD' mutasi_src, 'AWAL : ' || d2.kode || ' - ' || d2.nama || ', AKHIR : ' || d.kode || ' - ' || d.nama mutasi_ket, CASE WHEN p.kondisi IN ('AK') THEN '1.5.2' WHEN substr(kat.kode, 1, 5) IN ('1.5.3') OR p.kondisi IN ('ATB') THEN '1.5.3' WHEN p.kondisi IN ('RB') THEN '1.5.4.01.01.01' WHEN p.kondisi IN ('TGR') THEN '1.5.4.01.01.03' WHEN p.kondisi IN ('EC') THEN '1.6.1.01.01.01' WHEN p.kondisi IN ('BJ') THEN '1.1.7' ELSE substr(kat.kode, 1, 5) END AS barang_kd, p.cara_perolehan, p.th_beli, p.kib_id, p.departemen_id, p.kategori_id, p.kondisi kondisi_kib, CASE WHEN substr(kat.kode, 1, 5) IN ('1.5.3') AND p.kondisi NOT IN ('BJ') THEN 'ATB' WHEN p.kondisi IN ('B', 'KB') THEN 'B' ELSE p.kondisi END AS kondisi, --HIST p.departemen_id departemen_awal_id, a.departemen_id departemen_akhir_id, p.kategori_id kategori_awal_id, p.kategori_id kategori_akhir_id, p.kondisi kondisi_awal, p.kondisi kondisi_akhir, --JML 0 jml_awal, 0 jml_tambah, p.jumlah jml_kurang, --TRX 0 saldo_awal, 0 mutasi_tambah, p.harga + p.koreksi mutasi_kurang, --SST 0 akumulasi_awal, 0 penyusutan_awal, 0 akumulasi_tambah, p.akumulasi akumulasi_kurang, p.akumulasi dat_akumulasi_awal, p.penyusutan dat_penyusutan_awal, 0 penyusutan, 0 akumulasi, 0 buku FROM aset.kibs a JOIN aset.penetapan p ON a.id = p.kib_id JOIN departemen d ON d.id = a.departemen_id JOIN departemen d2 ON d2.id = p.departemen_id JOIN kategoris kat ON kat.id = p.kategori_id WHERE a.departemen_id != p.departemen_id AND p.thn_nilai = {tahun_lalu} --PEROLEHAN THN_LALU UNION --PEROLEHAN THN_LALU --MUTASI REKLASIFIKASI SIKLUS I --MUTASI MT REKLASIFIKASI SELECT CASE WHEN p.kondisi IN ('BJ') AND a.kondisi IN ('KB', 'B') THEN 'THN_LALU_MT_11' WHEN p.kondisi IN ('KB', 'B') AND a.kondisi IN ('BJ') THEN 'THN_LALU_MT_11' WHEN p.kondisi IN ('KB') AND a.kondisi IN ('KB', 'B') THEN 'THN_LALU_MT_11' WHEN p.kondisi IN ('B', 'KB') AND a.kondisi IN ('KB') THEN 'THN_LALU_MT_11' WHEN p.kondisi IN ('EC') AND a.kondisi IN ('KB', 'B') THEN 'THN_LALU_MT_02' WHEN p.kondisi IN ('KB', 'B') AND a.kondisi IN ('EC') THEN 'THN_LALU_MT_02' WHEN p.kondisi IN ('RB') AND a.kondisi IN ('KB', 'B') THEN 'THN_LALU_MT_04' WHEN p.kondisi IN ('KB', 'B') AND a.kondisi IN ('RB') THEN 'THN_LALU_MT_04' WHEN p.kondisi IN ('TGR') AND a.kondisi IN ('KB', 'B') THEN 'THN_LALU_MT_05' WHEN p.kondisi IN ('KB', 'B') AND a.kondisi IN ('TGR') THEN 'THN_LALU_MT_05' WHEN p.kondisi IN ('TGR') AND a.kondisi IN ('RB') THEN 'THN_LALU_MT_05' WHEN p.kondisi IN ('RB') AND a.kondisi IN ('TGR') THEN 'THN_LALU_MT_05' WHEN p.kondisi IN ('AK') AND a.kondisi IN ('KB', 'B') THEN 'THN_LALU_MT_06' ELSE 'THN_LALU_MT_11' END AS mutasi, CASE WHEN p.kondisi IN ('KB', 'B') AND a.kondisi IN ('KB', 'B') THEN 'INTRA' ELSE 'EKSTRA' END AS mutasi_type, 'REKLASIFIKASI' mutasi_src, 'AWAL : ' || p.kondisi || ', AKHIR : ' || a.kondisi mutasi_ket, CASE WHEN a.kondisi IN ('AK') THEN '1.5.2' WHEN substr(kat.kode, 1, 5) IN ('1.5.3') OR a.kondisi IN ('ATB') THEN '1.5.3' WHEN a.kondisi IN ('RB') THEN '1.5.4.01.01.01' WHEN a.kondisi IN ('TGR') THEN '1.5.4.01.01.03' WHEN a.kondisi IN ('EC') THEN '1.6.1.01.01.01' WHEN a.kondisi IN ('BJ') THEN '1.1.7' ELSE substr(kat.kode, 1, 5) END AS barang_kd, p.cara_perolehan, p.th_beli, a.id kib_id, a.departemen_id, a.kategori_id, a.kondisi kondisi_kib, CASE WHEN substr(kat.kode, 1, 5) IN ('1.5.3') AND a.kondisi NOT IN ('BJ') THEN 'ATB' WHEN a.kondisi IN ('B', 'KB') THEN 'B' ELSE a.kondisi END AS kondisi, --HIST a.departemen_id departemen_awal_id, a.departemen_id departemen_akhir_id, a.kategori_id kategori_awal_id, a.kategori_id kategori_akhir_id, p.kondisi kondisi_awal, a.kondisi kondisi_akhir, --JML 0 jml_awal, p.jumlah jml_tambah, 0 jml_kurang, --TRX 0 saldo_awal, p.harga + p.koreksi mutasi_tambah, 0 mutasi_kurang, --SST 0 akumulasi_awal, 0 penyusutan_awal, p.akumulasi akumulasi_tambah, 0 akumulasi_kurang, p.akumulasi dat_akumulasi_awal, p.penyusutan dat_penyusutan_awal, 0 penyusutan, 0 akumulasi, 0 buku FROM aset.kibs a JOIN aset.penetapan p ON a.id = p.kib_id JOIN kategoris kat ON kat.id = a.kategori_id WHERE p.departemen_id = a.departemen_id AND p.thn_nilai = {tahun_lalu} AND a.kondisi != p.kondisi UNION --MUTASI MK REKLASIFIKASI SELECT CASE WHEN p.kondisi IN ('BJ') AND a.kondisi IN ('KB', 'B') THEN 'THN_LALU_MK_09' WHEN p.kondisi IN ('KB', 'B') AND a.kondisi IN ('BJ') THEN 'THN_LALU_MK_09' WHEN p.kondisi IN ('KB') AND a.kondisi IN ('KB', 'B') THEN 'THN_LALU_MK_09' WHEN p.kondisi IN ('B', 'KB') AND a.kondisi IN ('KB') THEN 'THN_LALU_MK_09' WHEN p.kondisi IN ('EC') AND a.kondisi IN ('KB', 'B') THEN 'THN_LALU_MK_02' WHEN p.kondisi IN ('KB', 'B') AND a.kondisi IN ('EC') THEN 'THN_LALU_MK_02' WHEN p.kondisi IN ('RB') AND a.kondisi IN ('KB', 'B') THEN 'THN_LALU_MK_04' WHEN p.kondisi IN ('KB', 'B') AND a.kondisi IN ('RB') THEN 'THN_LALU_MK_04' WHEN p.kondisi IN ('RB') AND a.kondisi IN ('TGR') THEN 'THN_LALU_MK_05' WHEN p.kondisi IN ('TGR') AND a.kondisi IN ('RB') THEN 'THN_LALU_MK_05' WHEN p.kondisi IN ('TGR') AND a.kondisi IN ('KB', 'B') THEN 'THN_LALU_MK_05' WHEN p.kondisi IN ('KB', 'B') AND a.kondisi IN ('TGR') THEN 'THN_LALU_MK_05' WHEN p.kondisi IN ('AK') AND a.kondisi IN ('KB', 'B') THEN 'THN_LALU_MK_06' ELSE 'THN_LALU_MK_09' END AS mutasi, CASE WHEN p.kondisi IN ('KB', 'B') AND a.kondisi IN ('KB', 'B') THEN 'INTRA' ELSE 'EKSTRA' END AS mutasi_type, 'REKLASIFIKASI' mutasi_src, 'AWAL : ' || p.kondisi || ', AKHIR : ' || a.kondisi mutasi_ket, CASE WHEN p.kondisi IN ('AK') THEN '1.5.2' WHEN substr(kat.kode, 1, 5) IN ('1.5.3') OR p.kondisi IN ('ATB') THEN '1.5.3' WHEN p.kondisi IN ('RB') THEN '1.5.4.01.01.01' WHEN p.kondisi IN ('TGR') THEN '1.5.4.01.01.03' WHEN p.kondisi IN ('EC') THEN '1.6.1.01.01.01' WHEN p.kondisi IN ('BJ') THEN '1.1.7' ELSE substr(kat.kode, 1, 5) END AS barang_kd, p.cara_perolehan, p.th_beli, a.id kib_id, a.departemen_id, a.kategori_id, p.kondisi kondisi_kib, CASE WHEN substr(kat.kode, 1, 5) IN ('1.5.3') AND p.kondisi NOT IN ('BJ') THEN 'ATB' WHEN p.kondisi IN ('B', 'KB') THEN 'B' ELSE p.kondisi END AS kondisi, --HIST a.departemen_id departemen_awal_id, a.departemen_id departemen_akhir_id, a.kategori_id kategori_awal_id, a.kategori_id kategori_akhir_id, p.kondisi kondisi_awal, a.kondisi kondisi_akhir, --JML 0 jml_awal, 0 jml_tambah, p.jumlah jml_kurang, --TRX 0 saldo_awal, 0 mutasi_tambah, p.harga + p.koreksi mutasi_kurang, --SST 0 akumulasi_awal, 0 penyusutan_awal, 0 akumulasi_tambah, p.akumulasi akumulasi_kurang, p.akumulasi dat_akumulasi_awal, p.penyusutan dat_penyusutan_awal, 0 penyusutan, 0 akumulasi, 0 buku FROM aset.kibs a JOIN aset.penetapan p ON a.id = p.kib_id JOIN kategoris kat ON kat.id = a.kategori_id WHERE p.departemen_id = a.departemen_id AND p.thn_nilai = {tahun_lalu} AND a.kondisi != p.kondisi UNION --MUTASI REKLASIFIKASI SIKLUS II --MUTASI MT REKLASIFIKASI SELECT CASE WHEN p.kondisi IN ('BJ') AND a.kondisi IN ('KB', 'B') THEN 'THN_LALU_MT_11' WHEN p.kondisi IN ('KB', 'B') AND a.kondisi IN ('BJ') THEN 'THN_LALU_MT_11' WHEN p.kondisi IN ('KB') AND a.kondisi IN ('KB', 'B') THEN 'THN_LALU_MT_11' WHEN p.kondisi IN ('B', 'KB') AND a.kondisi IN ('KB') THEN 'THN_LALU_MT_11' WHEN p.kondisi IN ('EC') AND a.kondisi IN ('KB', 'B') THEN 'THN_LALU_MT_02' WHEN p.kondisi IN ('KB', 'B') AND a.kondisi IN ('EC') THEN 'THN_LALU_MT_02' WHEN p.kondisi IN ('RB') AND a.kondisi IN ('KB', 'B') THEN 'THN_LALU_MT_04' WHEN p.kondisi IN ('KB', 'B') AND a.kondisi IN ('RB') THEN 'THN_LALU_MT_04' WHEN p.kondisi IN ('TGR') AND a.kondisi IN ('KB', 'B') THEN 'THN_LALU_MT_05' WHEN p.kondisi IN ('KB', 'B') AND a.kondisi IN ('TGR') THEN 'THN_LALU_MT_05' WHEN p.kondisi IN ('AK') AND a.kondisi IN ('KB', 'B') THEN 'THN_LALU_MT_06' ELSE 'THN_LALU_MT_11' END AS mutasi, CASE WHEN p.kondisi IN ('KB', 'B') AND a.kondisi IN ('KB', 'B') THEN 'INTRA' ELSE 'EKSTRA' END AS mutasi_type, 'REKLASIFIKASI' mutasi_src, 'AWAL : ' || p.kondisi || ', AKHIR : ' || a.kondisi mutasi_ket, CASE WHEN a.kondisi IN ('AK') THEN '1.5.2' WHEN substr(kat.kode, 1, 5) IN ('1.5.3') OR a.kondisi IN ('ATB') THEN '1.5.3' WHEN a.kondisi IN ('RB') THEN '1.5.4.01.01.01' WHEN a.kondisi IN ('TGR') THEN '1.5.4.01.01.03' WHEN a.kondisi IN ('EC') THEN '1.6.1.01.01.01' WHEN a.kondisi IN ('BJ') THEN '1.1.7' ELSE substr(kat.kode, 1, 5) END AS barang_kd, p.cara_perolehan, p.th_beli, a.id kib_id, a.departemen_id, a.kategori_id, a.kondisi kondisi_kib, CASE WHEN substr(kat.kode, 1, 5) IN ('1.5.3') AND a.kondisi NOT IN ('BJ') THEN 'ATB' WHEN a.kondisi IN ('B', 'KB') THEN 'B' ELSE a.kondisi END AS kondisi, --HIST a.departemen_id departemen_awal_id, a.departemen_id departemen_akhir_id, a.kategori_id kategori_awal_id, a.kategori_id kategori_akhir_id, p.kondisi kondisi_awal, a.kondisi kondisi_akhir, --JML 0 jml_awal, p.jumlah jml_tambah, 0 jml_kurang, --TRX 0 saldo_awal, p.harga + p.koreksi mutasi_tambah, 0 mutasi_kurang, --SST 0 akumulasi_awal, 0 penyusutan_awal, p.akumulasi akumulasi_tambah, 0 akumulasi_kurang, p.akumulasi dat_akumulasi_awal, p.penyusutan dat_penyusutan_awal, 0 penyusutan, 0 akumulasi, 0 buku FROM aset.kibs a JOIN aset.penetapan p ON a.id = p.kib_id JOIN kategoris kat ON kat.id = a.kategori_id WHERE p.departemen_id != a.departemen_id AND p.thn_nilai = {tahun_lalu} AND a.kondisi != p.kondisi UNION --MUTASI MK REKLASIFIKASI SELECT CASE WHEN p.kondisi IN ('BJ') AND a.kondisi IN ('KB', 'B') THEN 'THN_LALU_MK_09' WHEN p.kondisi IN ('KB', 'B') AND a.kondisi IN ('BJ') THEN 'THN_LALU_MK_09' WHEN p.kondisi IN ('KB') AND a.kondisi IN ('KB', 'B') THEN 'THN_LALU_MK_09' WHEN p.kondisi IN ('B', 'KB') AND a.kondisi IN ('KB') THEN 'THN_LALU_MK_09' WHEN p.kondisi IN ('EC') AND a.kondisi IN ('KB', 'B') THEN 'THN_LALU_MK_02' WHEN p.kondisi IN ('KB', 'B') AND a.kondisi IN ('EC') THEN 'THN_LALU_MK_02' WHEN p.kondisi IN ('RB') AND a.kondisi IN ('KB', 'B') THEN 'THN_LALU_MK_04' WHEN p.kondisi IN ('KB', 'B') AND a.kondisi IN ('RB') THEN 'THN_LALU_MK_04' WHEN p.kondisi IN ('TGR') AND a.kondisi IN ('KB', 'B') THEN 'THN_LALU_MK_05' WHEN p.kondisi IN ('KB', 'B') AND a.kondisi IN ('TGR') THEN 'THN_LALU_MK_05' WHEN p.kondisi IN ('AK') AND a.kondisi IN ('KB', 'B') THEN 'THN_LALU_MK_06' ELSE 'THN_LALU_MK_09' END AS mutasi, CASE WHEN p.kondisi IN ('KB', 'B') AND a.kondisi IN ('KB', 'B') THEN 'INTRA' ELSE 'EKSTRA' END AS mutasi_type, 'REKLASIFIKASI' mutasi_src, 'AWAL : ' || p.kondisi || ', AKHIR : ' || a.kondisi mutasi_ket, CASE WHEN p.kondisi IN ('AK') THEN '1.5.2' WHEN substr(kat.kode, 1, 5) IN ('1.5.3') OR p.kondisi IN ('ATB') THEN '1.5.3' WHEN p.kondisi IN ('RB') THEN '1.5.4.01.01.01' WHEN p.kondisi IN ('TGR') THEN '1.5.4.01.01.03' WHEN p.kondisi IN ('EC') THEN '1.6.1.01.01.01' WHEN p.kondisi IN ('BJ') THEN '1.1.7' ELSE substr(kat.kode, 1, 5) END AS barang_kd, p.cara_perolehan, p.th_beli, a.id kib_id, a.departemen_id, a.kategori_id, p.kondisi kondisi_kib, CASE WHEN substr(kat.kode, 1, 5) IN ('1.5.3') AND p.kondisi NOT IN ('BJ') THEN 'ATB' WHEN p.kondisi IN ('B', 'KB') THEN 'B' ELSE p.kondisi END AS kondisi, --HIST a.departemen_id departemen_awal_id, a.departemen_id departemen_akhir_id, a.kategori_id kategori_awal_id, a.kategori_id kategori_akhir_id, p.kondisi kondisi_awal, a.kondisi kondisi_akhir, --JML 0 jml_awal, 0 jml_tambah, p.jumlah jml_kurang, --TRX 0 saldo_awal, 0 mutasi_tambah, p.harga + p.koreksi mutasi_kurang, --SST 0 akumulasi_awal, 0 penyusutan_awal, 0 akumulasi_tambah, p.akumulasi akumulasi_kurang, p.akumulasi dat_akumulasi_awal, p.penyusutan dat_penyusutan_awal, 0 penyusutan, 0 akumulasi, 0 buku FROM aset.kibs a JOIN aset.penetapan p ON a.id = p.kib_id JOIN kategoris kat ON kat.id = a.kategori_id WHERE p.departemen_id != a.departemen_id AND p.thn_nilai = {tahun_lalu} AND a.kondisi != p.kondisi UNION --PENINGKATAN --PENINGKATAN MT ATAS REG_THN_INI (PEMBELIAN) SELECT 'THN_INI_MT_01' mutasi, '' mutasi_type, 'PEROLEHAN' mutasi_src, 'PENINGKATAN' mutasi_ket, CASE WHEN k.kondisi IN ('AK') THEN '1.5.2' WHEN substr(kat.kode, 1, 5) IN ('1.5.3') OR k.kondisi IN ('ATB') THEN '1.5.3' WHEN k.kondisi IN ('RB') THEN '1.5.4.01.01.01' WHEN k.kondisi IN ('TGR') THEN '1.5.4.01.01.03' WHEN k.kondisi IN ('EC') THEN '1.6.1.01.01.01' WHEN k.kondisi IN ('BJ') THEN '1.1.7' ELSE substr(kat.kode, 1, 5) END AS barang_kd, a.cara_perolehan, k.th_beli, a.kib_id, a.departemen_id, k.kategori_id, k.kondisi kondisi_kib, CASE WHEN substr(kat.kode, 1, 5) IN ('1.5.3') AND k.kondisi NOT IN ('BJ') THEN 'ATB' WHEN k.kondisi IN ('B', 'KB') THEN 'B' ELSE k.kondisi END AS kondisi, --HIST a.departemen_id departemen_awal_id, a.departemen_id departemen_akhir_id, k.kategori_id kategori_awal_id, k.kategori_id kategori_akhir_id, k.kondisi kondisi_awal, k.kondisi kondisi_akhir, --JML 0 jml_awal, 0 jml_tambah, 0 jml_kurang, --TRX 0 saldo_awal, a.biaya_umum + a.harga mutasi_tambah, 0 mutasi_kurang, --SST 0 akumulasi_awal, 0 penyusutan_awal, --0 akumulasi_tambah, CASE WHEN k.th_beli = a.th_pemeliharaan THEN 0 ELSE k.penyusutan END akumulasi_tambah, 0 akumulasi_kurang, 0 dat_akumulasi_awal, 0 dat_penyusutan_awal, 0 penyusutan, 0 akumulasi, 0 buku FROM aset.pemeliharaans a JOIN aset.kibs k ON k.id = a.kib_id JOIN kategoris kat ON kat.id = k.kategori_id WHERE k.departemen_id = a.departemen_id AND k.thn_nilai = {tahun_ini} AND a.th_pemeliharaan = {tahun_ini} AND upper(coalesce(a.cara_perolehan, '')) = 'PEMBELIAN' UNION --PENINGKATAN MT ATAS REG_THN_INI (KOREKSI / INVENTARISASI) SELECT 'THN_LALU_MT_10' mutasi, '' mutasi_type, 'INVENTARISASI' mutasi_src, 'PENINGKATAN' mutasi_ket, CASE WHEN k.kondisi IN ('AK') THEN '1.5.2' WHEN substr(kat.kode, 1, 5) IN ('1.5.3') OR k.kondisi IN ('ATB') THEN '1.5.3' WHEN k.kondisi IN ('RB') THEN '1.5.4.01.01.01' WHEN k.kondisi IN ('TGR') THEN '1.5.4.01.01.03' WHEN k.kondisi IN ('EC') THEN '1.6.1.01.01.01' WHEN k.kondisi IN ('BJ') THEN '1.1.7' ELSE substr(kat.kode, 1, 5) END AS barang_kd, a.cara_perolehan, k.th_beli, a.kib_id, a.departemen_id, k.kategori_id, k.kondisi kondisi_kib, CASE WHEN substr(kat.kode, 1, 5) IN ('1.5.3') AND k.kondisi NOT IN ('BJ') THEN 'ATB' WHEN k.kondisi IN ('B', 'KB') THEN 'B' ELSE k.kondisi END AS kondisi, --HIST a.departemen_id departemen_awal_id, a.departemen_id departemen_akhir_id, k.kategori_id kategori_awal_id, k.kategori_id kategori_akhir_id, k.kondisi kondisi_awal, k.kondisi kondisi_akhir, --JML 0 jml_awal, 0 jml_tambah, 0 jml_kurang, --TRX 0 saldo_awal, a.biaya_umum + a.harga mutasi_tambah, 0 mutasi_kurang, --SST 0 akumulasi_awal, 0 penyusutan_awal, --0 akumulasi_tambah, CASE WHEN k.th_beli = a.th_pemeliharaan THEN 0 ELSE k.penyusutan END akumulasi_tambah, 0 akumulasi_kurang, 0 dat_akumulasi_awal, 0 dat_penyusutan_awal, 0 penyusutan, 0 akumulasi, 0 buku FROM aset.pemeliharaans a JOIN aset.kibs k ON k.id = a.kib_id JOIN kategoris kat ON kat.id = k.kategori_id WHERE k.departemen_id = a.departemen_id AND k.thn_nilai = {tahun_ini} AND a.th_pemeliharaan = {tahun_ini} AND upper(coalesce(a.cara_perolehan, '')) = 'INVENTARISASI' UNION --PENINGKATAN KDP BARJAS --PENINGKATAN MT ATAS KDP THN_LALU + PEMBELIAN THN_INI (KDP) SELECT 'THN_LALU_MT_03' mutasi, 'EKSTRA' mutasi_type, 'REKLASIFIKASI_KIB' mutasi_src, 'PENINGKATAN' mutasi_ket, CASE WHEN k.kondisi IN ('AK') THEN '1.5.2' WHEN substr(kat.kode, 1, 5) IN ('1.5.3') OR k.kondisi IN ('ATB') THEN '1.5.3' WHEN k.kondisi IN ('RB') THEN '1.5.4.01.01.01' WHEN k.kondisi IN ('TGR') THEN '1.5.4.01.01.03' WHEN k.kondisi IN ('EC') THEN '1.6.1.01.01.01' WHEN k.kondisi IN ('BJ') THEN '1.1.7' ELSE substr(kat.kode, 1, 5) END AS barang_kd, a.cara_perolehan, k.th_beli, a.kib_id, a.departemen_id, k.kategori_id, k.kondisi kondisi_kib, CASE WHEN substr(kat.kode, 1, 5) IN ('1.5.3') AND k.kondisi NOT IN ('BJ') THEN 'ATB' WHEN k.kondisi IN ('B', 'KB') THEN 'B' ELSE k.kondisi END AS kondisi, --HIST a.departemen_id departemen_awal_id, a.departemen_id departemen_akhir_id, k.kategori_id kategori_awal_id, k.kategori_id kategori_akhir_id, k.kondisi kondisi_awal, k.kondisi kondisi_akhir, --JML 0 jml_awal, 0 jml_tambah, 0 jml_kurang, --TRX 0 saldo_awal, a.biaya_umum mutasi_tambah, 0 mutasi_kurang, --SST 0 akumulasi_awal, 0 penyusutan_awal, --0 akumulasi_tambah, CASE WHEN k.th_beli = a.th_pemeliharaan THEN 0 ELSE k.penyusutan END akumulasi_tambah, 0 akumulasi_kurang, 0 dat_akumulasi_awal, 0 dat_penyusutan_awal, 0 penyusutan, 0 akumulasi, 0 buku FROM aset.pemeliharaans a JOIN aset.kibs k ON k.id = a.kib_id JOIN kategoris kat ON kat.id = k.kategori_id WHERE k.departemen_id = a.departemen_id AND k.thn_nilai = {tahun_ini} AND k.th_beli <> {tahun_ini} AND a.th_pemeliharaan = {tahun_ini} AND upper(coalesce(a.cara_perolehan, '')) = 'KDP BARJAS' UNION --PENINGKATAN MT ATAS KDP THN_LALU + PEMBELIAN THN_INI (BARJAS) SELECT 'THN_INI_MT_05' mutasi, '' mutasi_type, 'PEROLEHAN' mutasi_src, 'PENINGKATAN' mutasi_ket, CASE WHEN k.kondisi IN ('AK') THEN '1.5.2' WHEN substr(kat.kode, 1, 5) IN ('1.5.3') OR k.kondisi IN ('ATB') THEN '1.5.3' WHEN k.kondisi IN ('RB') THEN '1.5.4.01.01.01' WHEN k.kondisi IN ('TGR') THEN '1.5.4.01.01.03' WHEN k.kondisi IN ('EC') THEN '1.6.1.01.01.01' WHEN k.kondisi IN ('BJ') THEN '1.1.7' ELSE substr(kat.kode, 1, 5) END AS barang_kd, a.cara_perolehan, k.th_beli, a.kib_id, a.departemen_id, k.kategori_id, k.kondisi kondisi_kib, CASE WHEN substr(kat.kode, 1, 5) IN ('1.5.3') AND k.kondisi NOT IN ('BJ') THEN 'ATB' WHEN k.kondisi IN ('B', 'KB') THEN 'B' ELSE k.kondisi END AS kondisi, --HIST a.departemen_id departemen_awal_id, a.departemen_id departemen_akhir_id, k.kategori_id kategori_awal_id, k.kategori_id kategori_akhir_id, k.kondisi kondisi_awal, k.kondisi kondisi_akhir, --JML 0 jml_awal, 0 jml_tambah, 0 jml_kurang, --TRX 0 saldo_awal, a.harga mutasi_tambah, 0 mutasi_kurang, --SST 0 akumulasi_awal, 0 penyusutan_awal, --0 akumulasi_tambah, CASE WHEN k.th_beli = a.th_pemeliharaan THEN 0 ELSE k.penyusutan END akumulasi_tambah, 0 akumulasi_kurang, 0 dat_akumulasi_awal, 0 dat_penyusutan_awal, 0 penyusutan, 0 akumulasi, 0 buku FROM aset.pemeliharaans a JOIN aset.kibs k ON k.id = a.kib_id JOIN kategoris kat ON kat.id = k.kategori_id WHERE k.departemen_id = a.departemen_id AND k.thn_nilai = {tahun_ini} AND k.th_beli <> {tahun_ini} AND a.th_pemeliharaan = {tahun_ini} AND upper(coalesce(a.cara_perolehan, '')) = 'KDP BARJAS' UNION --PENINGKATAN BARJAS BM --PENINGKATAN MT ATAS BARJAS THN_INI + PEMBELIAN THN_INI (BARJAS) SELECT 'THN_INI_MT_05' mutasi, '' mutasi_type, 'PEROLEHAN' mutasi_src, 'PENINGKATAN' mutasi_ket, CASE WHEN k.kondisi IN ('AK') THEN '1.5.2' WHEN substr(kat.kode, 1, 5) IN ('1.5.3') OR k.kondisi IN ('ATB') THEN '1.5.3' WHEN k.kondisi IN ('RB') THEN '1.5.4.01.01.01' WHEN k.kondisi IN ('TGR') THEN '1.5.4.01.01.03' WHEN k.kondisi IN ('EC') THEN '1.6.1.01.01.01' WHEN k.kondisi IN ('BJ') THEN '1.1.7' ELSE substr(kat.kode, 1, 5) END AS barang_kd, a.cara_perolehan, k.th_beli, a.kib_id, a.departemen_id, k.kategori_id, k.kondisi kondisi_kib, CASE WHEN substr(kat.kode, 1, 5) IN ('1.5.3') AND k.kondisi NOT IN ('BJ') THEN 'ATB' WHEN k.kondisi IN ('B', 'KB') THEN 'B' ELSE k.kondisi END AS kondisi, --HIST a.departemen_id departemen_awal_id, a.departemen_id departemen_akhir_id, k.kategori_id kategori_awal_id, k.kategori_id kategori_akhir_id, k.kondisi kondisi_awal, k.kondisi kondisi_akhir, --JML 0 jml_awal, 0 jml_tambah, 0 jml_kurang, --TRX 0 saldo_awal, a.biaya_umum mutasi_tambah, 0 mutasi_kurang, --SST 0 akumulasi_awal, 0 penyusutan_awal, --0 akumulasi_tambah, CASE WHEN k.th_beli = a.th_pemeliharaan THEN 0 ELSE k.penyusutan END akumulasi_tambah, 0 akumulasi_kurang, 0 dat_akumulasi_awal, 0 dat_penyusutan_awal, 0 penyusutan, 0 akumulasi, 0 buku FROM aset.pemeliharaans a JOIN aset.kibs k ON k.id = a.kib_id JOIN kategoris kat ON kat.id = k.kategori_id WHERE k.departemen_id = a.departemen_id AND k.thn_nilai = {tahun_ini} AND k.th_beli <> {tahun_ini} AND a.th_pemeliharaan = {tahun_ini} AND upper(coalesce(a.cara_perolehan, '')) = 'BARJAS BM' UNION --PENINGKATAN MT ATAS BARJAS THN_INI + PEMBELIAN THN_INI (PEMBELIAN) SELECT 'THN_INI_MT_01' mutasi, '' mutasi_type, 'PEROLEHAN' mutasi_src, 'PENINGKATAN' mutasi_ket, CASE WHEN k.kondisi IN ('AK') THEN '1.5.2' WHEN substr(kat.kode, 1, 5) IN ('1.5.3') OR k.kondisi IN ('ATB') THEN '1.5.3' WHEN k.kondisi IN ('RB') THEN '1.5.4.01.01.01' WHEN k.kondisi IN ('TGR') THEN '1.5.4.01.01.03' WHEN k.kondisi IN ('EC') THEN '1.6.1.01.01.01' WHEN k.kondisi IN ('BJ') THEN '1.1.7' ELSE substr(kat.kode, 1, 5) END AS barang_kd, a.cara_perolehan, k.th_beli, a.kib_id, a.departemen_id, k.kategori_id, k.kondisi kondisi_kib, CASE WHEN substr(kat.kode, 1, 5) IN ('1.5.3') AND k.kondisi NOT IN ('BJ') THEN 'ATB' WHEN k.kondisi IN ('B', 'KB') THEN 'B' ELSE k.kondisi END AS kondisi, --HIST a.departemen_id departemen_awal_id, a.departemen_id departemen_akhir_id, k.kategori_id kategori_awal_id, k.kategori_id kategori_akhir_id, k.kondisi kondisi_awal, k.kondisi kondisi_akhir, --JML 0 jml_awal, 0 jml_tambah, 0 jml_kurang, --TRX 0 saldo_awal, a.harga mutasi_tambah, 0 mutasi_kurang, --SST 0 akumulasi_awal, 0 penyusutan_awal, --0 akumulasi_tambah, CASE WHEN k.th_beli = a.th_pemeliharaan THEN 0 ELSE k.penyusutan END akumulasi_tambah, 0 akumulasi_kurang, 0 dat_akumulasi_awal, 0 dat_penyusutan_awal, 0 penyusutan, 0 akumulasi, 0 buku FROM aset.pemeliharaans a JOIN aset.kibs k ON k.id = a.kib_id JOIN kategoris kat ON kat.id = k.kategori_id WHERE k.departemen_id = a.departemen_id AND k.thn_nilai = {tahun_ini} AND k.th_beli <> {tahun_ini} AND a.th_pemeliharaan = {tahun_ini} AND upper(coalesce(a.cara_perolehan, '')) = 'BARJAS BM' UNION --PENINGKATAN MT ATAS KDP THN_LALU SELECT 'THN_INI_MT_02' mutasi, '' mutasi_type, 'REKLASIFIKASI_KIB' mutasi_src, 'PENINGKATAN' mutasi_ket, CASE WHEN k.kondisi IN ('AK') THEN '1.5.2' WHEN substr(kat.kode, 1, 5) IN ('1.5.3') OR k.kondisi IN ('ATB') THEN '1.5.3' WHEN k.kondisi IN ('RB') THEN '1.5.4.01.01.01' WHEN k.kondisi IN ('TGR') THEN '1.5.4.01.01.03' WHEN k.kondisi IN ('EC') THEN '1.6.1.01.01.01' WHEN k.kondisi IN ('BJ') THEN '1.1.7' ELSE substr(kat.kode, 1, 5) END AS barang_kd, a.cara_perolehan, k.th_beli, a.kib_id, a.departemen_id, k.kategori_id, k.kondisi kondisi_kib, CASE WHEN substr(kat.kode, 1, 5) IN ('1.5.3') AND k.kondisi NOT IN ('BJ') THEN 'ATB' WHEN k.kondisi IN ('B', 'KB') THEN 'B' ELSE k.kondisi END AS kondisi, --HIST a.departemen_id departemen_awal_id, a.departemen_id departemen_akhir_id, k.kategori_id kategori_awal_id, k.kategori_id kategori_akhir_id, k.kondisi kondisi_awal, k.kondisi kondisi_akhir, --JML 0 jml_awal, 0 jml_tambah, 0 jml_kurang, --TRX 0 saldo_awal, a.biaya_umum + a.harga mutasi_tambah, 0 mutasi_kurang, --SST 0 akumulasi_awal, 0 penyusutan_awal, --0 akumulasi_tambah, CASE WHEN k.th_beli = a.th_pemeliharaan THEN 0 ELSE k.penyusutan END akumulasi_tambah, 0 akumulasi_kurang, 0 dat_akumulasi_awal, 0 dat_penyusutan_awal, 0 penyusutan, 0 akumulasi, 0 buku FROM aset.pemeliharaans a JOIN aset.kibs k ON k.id = a.kib_id JOIN kategoris kat ON kat.id = k.kategori_id WHERE k.departemen_id = a.departemen_id AND k.thn_nilai = {tahun_ini} AND k.th_beli = {tahun_ini} AND a.th_pemeliharaan = {tahun_ini} AND upper(coalesce(a.cara_perolehan, '')) = 'KDP' --END PENINGKATAN UNION --PENGHAPUSAN SELECT 'THN_LALU_MK_08' mutasi, '' mutasi_type, 'PENGHAPUSAN' mutasi_src, '' mutasi_ket, CASE WHEN k.kondisi IN ('AK') THEN '1.5.2' WHEN substr(kat.kode, 1, 5) IN ('1.5.3') OR k.kondisi IN ('ATB') THEN '1.5.3' WHEN k.kondisi IN ('RB') THEN '1.5.4.01.01.01' WHEN k.kondisi IN ('TGR') THEN '1.5.4.01.01.03' WHEN k.kondisi IN ('EC') THEN '1.6.1.01.01.01' WHEN k.kondisi IN ('BJ') THEN '1.1.7' ELSE substr(kat.kode, 1, 5) END AS barang_kd, k.cara_perolehan, k.th_beli, k.id kib_id, d.departemen_id, k.kategori_id, k.kondisi kondisi_kib, CASE WHEN substr(kat.kode, 1, 5) IN ('1.5.3') AND k.kondisi NOT IN ('BJ') THEN 'ATB' WHEN k.kondisi IN ('B', 'KB') THEN 'B' ELSE k.kondisi END AS kondisi, --HIST d.departemen_id departemen_awal_id, d.departemen_id departemen_akhir_id, k.kategori_id kategori_awal_id, k.kategori_id kategori_akhir_id, k.kondisi kondisi_awal, k.kondisi kondisi_akhir, --JML 0 jml_awal, 0 jml_tambah, k.jumlah jml_kurang, --TRX 0 saldo_awal, 0 mutasi_tambah, k.harga + k.koreksi mutasi_kurang, --SST 0 akumulasi_awal, 0 penyusutan_awal, 0 akumulasi_tambah, p.akumulasi akumulasi_kurang, p.akumulasi dat_akumulasi_awal, p.penyusutan dat_penyusutan_awal, 0 penyusutan, 0 akumulasi, 0 buku FROM aset.kib_deletes d JOIN aset.kib_delete_items di ON di.del_id = d.id JOIN aset.kibs k ON k.id = di.kib_id JOIN kategoris kat ON kat.id = k.kategori_id LEFT JOIN aset.penetapan p ON p.kib_id = k.id AND p.thn_nilai = {tahun_lalu} WHERE k.departemen_id = d.departemen_id AND extract(year FROM d.tanggal) = {tahun_ini} AND k.status = 9 UNION --MUTASI MT KIB SELECT 'THN_LALU_MT_03' mutasi, CASE WHEN substr(kat_awal.kode, 1, 5) IN (substr(kat_akhir.kode, 1, 5)) THEN 'INTRA' ELSE 'EKSTRA' END AS mutasi_type, 'REKLASIFIKASI_KIB' mutasi_src, 'AWAL : ' || kat_awal.kode || ' - ' || kat_awal.nama || ', AKHIR : ' || kat_akhir.kode || ' - ' || kat_akhir.nama mutasi_ket, CASE WHEN p.kondisi IN ('AK') THEN '1.5.2' WHEN substr(kat_akhir.kode, 1, 5) IN ('1.5.3') OR p.kondisi IN ('ATB') THEN '1.5.3' WHEN p.kondisi IN ('RB') THEN '1.5.4.01.01.01' WHEN p.kondisi IN ('TGR') THEN '1.5.4.01.01.03' WHEN p.kondisi IN ('EC') THEN '1.6.1.01.01.01' WHEN p.kondisi IN ('BJ') THEN '1.1.7' ELSE substr(kat_akhir.kode, 1, 5) END AS barang_kd, a.cara_perolehan, a.th_beli, a.id kib_id, a.departemen_id, a.kategori_id, p.kondisi kondisi_kib, CASE WHEN substr(kat_akhir.kode, 1, 5) IN ('1.5.3') AND p.kondisi NOT IN ('BJ') THEN 'ATB' WHEN p.kondisi IN ('B', 'KB') THEN 'B' ELSE p.kondisi END AS kondisi, --HIST a.departemen_id departemen_awal_id, a.departemen_id departemen_akhir_id, p.kategori_id kategori_awal_id, a.kategori_id kategori_akhir_id, p.kondisi kondisi_awal, p.kondisi kondisi_akhir, --JML 0 jml_awal, p.jumlah jml_tambah, 0 jml_kurang, --TRX 0 saldo_awal, p.harga + p.koreksi mutasi_tambah, 0 mutasi_kurang, --SST 0 akumulasi_awal, 0 penyusutan_awal, p.akumulasi akumulasi_tambah, 0 akumulasi_kurang, p.akumulasi dat_akumulasi_awal, p.penyusutan dat_penyusutan_awal, 0 penyusutan, 0 akumulasi, 0 buku FROM aset.kibs a JOIN aset.penetapan p ON a.id = p.kib_id JOIN kategoris kat_awal ON kat_awal.id = p.kategori_id JOIN kategoris kat_akhir ON kat_akhir.id = a.kategori_id WHERE p.thn_nilai = {tahun_lalu} AND a.kategori_id != p.kategori_id UNION --MUTASI MK KIB SELECT 'THN_LALU_MK_03' mutasi, CASE WHEN substr(kat_awal.kode, 1, 5) IN (substr(kat_akhir.kode, 1, 5)) THEN 'INTRA' ELSE 'EKSTRA' END AS mutasi_type, 'REKLASIFIKASI_KIB' mutasi_src, 'AWAL : ' || kat_awal.kode || ' - ' || kat_awal.nama || ', AKHIR : ' || kat_akhir.kode || ' - ' || kat_akhir.nama mutasi_ket, CASE WHEN p.kondisi IN ('AK') THEN '1.5.2' WHEN substr(kat_awal.kode, 1, 5) IN ('1.5.3') OR p.kondisi IN ('ATB') THEN '1.5.3' WHEN p.kondisi IN ('RB') THEN '1.5.4.01.01.01' WHEN p.kondisi IN ('TGR') THEN '1.5.4.01.01.03' WHEN p.kondisi IN ('EC') THEN '1.6.1.01.01.01' WHEN p.kondisi IN ('BJ') THEN '1.1.7' ELSE substr(kat_awal.kode, 1, 5) END AS barang_kd, a.cara_perolehan, a.th_beli, a.id kib_id, a.departemen_id, p.kategori_id, p.kondisi kondisi_kib, CASE WHEN substr(kat_awal.kode, 1, 5) IN ('1.5.3') AND p.kondisi NOT IN ('BJ') THEN 'ATB' WHEN p.kondisi IN ('B', 'KB') THEN 'B' ELSE p.kondisi END AS kondisi, --HIST a.departemen_id departemen_awal_id, a.departemen_id departemen_akhir_id, p.kategori_id kategori_awal_id, a.kategori_id kategori_akhir_id, p.kondisi kondisi_awal, p.kondisi kondisi_akhir, --JML 0 jml_awal, 0 jml_tambah, p.jumlah jml_kurang, --TRX 0 saldo_awal, 0 mutasi_tambah, p.harga + p.koreksi mutasi_kurang, --SST 0 akumulasi_awal, 0 penyusutan_awal, 0 akumulasi_tambah, p.akumulasi akumulasi_kurang, p.akumulasi dat_akumulasi_awal, p.penyusutan dat_penyusutan_awal, 0 penyusutan, 0 akumulasi, 0 buku FROM aset.kibs a JOIN aset.penetapan p ON a.id = p.kib_id JOIN kategoris kat_awal ON kat_awal.id = p.kategori_id JOIN kategoris kat_akhir ON kat_akhir.id = a.kategori_id WHERE p.thn_nilai = {tahun_lalu} AND a.kategori_id != p.kategori_id UNION --MUTASI MK KIB (PENGGABUNGAN) SELECT 'THN_LALU_MK_03' mutasi, CASE WHEN substr(kat_awal.kode, 1, 5) IN (substr(kat_akhir.kode, 1, 5)) THEN 'INTRA' ELSE 'EKSTRA' END AS mutasi_type, 'REKLASIFIKASI_KIB' mutasi_src, 'PENGGABUNGAN' mutasi_ket, CASE WHEN a.kondisi IN ('AK') THEN '1.5.2' WHEN substr(kat_akhir.kode, 1, 5) IN ('1.5.3') OR a.kondisi IN ('ATB') THEN '1.5.3' WHEN a.kondisi IN ('RB') THEN '1.5.4.01.01.01' WHEN a.kondisi IN ('TGR') THEN '1.5.4.01.01.03' WHEN a.kondisi IN ('EC') THEN '1.6.1.01.01.01' WHEN a.kondisi IN ('BJ') THEN '1.1.7' ELSE substr(kat_akhir.kode, 1, 5) END AS barang_kd, a.cara_perolehan, a.th_beli, a.id kib_id, a.departemen_id, a.kategori_id, a.kondisi kondisi_kib, CASE WHEN substr(kat_akhir.kode, 1, 5) IN ('1.5.3') AND a.kondisi NOT IN ('BJ') THEN 'ATB' WHEN a.kondisi IN ('B', 'KB') THEN 'B' ELSE a.kondisi END AS kondisi, --HIST a.departemen_id departemen_awal_id, a.departemen_id departemen_akhir_id, a.kategori_id kategori_awal_id, a.kategori_id kategori_akhir_id, a.kondisi kondisi_awal, a.kondisi kondisi_akhir, --JML 0 jml_awal, 0 jml_tambah, p.jumlah jml_kurang, --TRX 0 saldo_awal, 0 mutasi_tambah, p.harga + p.koreksi mutasi_kurang, --SST 0 akumulasi_awal, 0 penyusutan_awal, 0 akumulasi_tambah, p.akumulasi akumulasi_kurang, p.akumulasi dat_akumulasi_awal, p.penyusutan dat_penyusutan_awal, 0 penyusutan, 0 akumulasi, 0 buku FROM aset.kibs a JOIN aset.penetapan p ON a.id = p.kib_id JOIN kategoris kat_awal ON kat_awal.id = p.kategori_id JOIN kategoris kat_akhir ON kat_akhir.id = a.kategori_id WHERE p.thn_nilai = {tahun_lalu} AND a.kategori_id != p.kategori_id AND a.status = 11) a ON a.kategori_id = kat.id LEFT JOIN kibs k ON k.id = a.kib_id JOIN departemen d ON d.id = a.departemen_id JOIN departemen d1 ON d1.kode = substr(d.kode, 1, 5) JOIN departemen d2 ON d2.kode = substr(d.kode, 1, 2) JOIN aset.kategoris kat2 ON kat2.id = a.kategori_id JOIN aset.kategoris kat3 ON kat3.kode = substr(kat2.kode, 1, {level_id}) --PARAMS LEVEL WHERE a.kondisi NOT IN ('BJ') AND a.departemen_id IN ({departemen_id}) --PARAMS DEP ), kategoris AS ( --KATEGORIS SELECT kat.id barang_id, kat.kode barang_kd, upper(kat.nama) barang_nm, kat.susut_id, kat.susut_kd, CASE WHEN substr(kat.kode, 1, 5) IN ('1.3.1') THEN 'TANAH' WHEN substr(kat.kode, 1, 5) IN ('1.3.2') THEN 'PM' WHEN substr(kat.kode, 1, 5) IN ('1.3.3') THEN 'GB' WHEN substr(kat.kode, 1, 5) IN ('1.3.4') THEN 'JIJ' WHEN substr(kat.kode, 1, 5) IN ('1.3.5') THEN 'ATL' WHEN substr(kat.kode, 1, 5) IN ('1.3.6') THEN 'KDP' WHEN substr(kat.kode, 1, 5) IN ('1.5.3') THEN 'ATB' WHEN substr(kat.kode, 1, 14) IN ('1.5.4.01.01.01') THEN 'RB' WHEN substr(kat.kode, 1, 15) IN ('1.5.4.01.01.03') THEN 'AAL' WHEN substr(kat.kode, 1, 5) IN ('1.5.2') THEN 'KSP' WHEN substr(kat.kode, 1, 14) IN ('1.6.1.01.01.01') THEN 'EC' ELSE '' END AS golongan_nm FROM kategoris kat WHERE (kat.level = 3 AND substring(kat.kode, 1, 3) BETWEEN '1.3' AND '1.4' AND substring(kat.kode, 1, 5) != '1.3.7') OR (kat.level = 3 AND substring(kat.kode, 1, 5) BETWEEN '1.5.1' AND '1.5.3') OR (kat.level = 3 AND substring(kat.kode, 1, 5) = '1.5.4') OR (kat.level = 6 AND substring(kat.kode, 1, 5) = '1.5.4') OR (kat.level = 6 AND substring(kat.kode, 1, 3) = '1.6') ORDER BY kat.kode), kategori_mutasi AS ( --KATEGORI MUTASI SELECT id, kode, nama, src, mutasi FROM kategori_mutasi) SELECT t.departemen_kd, t.departemen_nm, --'00'::text departemen_kd, 'ALL SKPD'::text departemen_nm, CASE WHEN substr(kat.barang_kd, 1, 3) IN ('1.3', '1.5') THEN 'POSISI BMD DI NERACA' ELSE 'BMD NON NERACA' END akun_neraca, CASE WHEN substr(kat.barang_kd, 1, 3) IN ('1.3') THEN 'ASET TETAP' WHEN substr(kat.barang_kd, 1, 3) IN ('1.5') THEN 'ASET LAINNYA' WHEN substr(kat.barang_kd, 1, 3) IN ('1.6') THEN 'EXTRACOMPTABLE' ELSE '' END akun_aset, km.id mutasi_id, km.mutasi mutasi_jenis, km.src mutasi_src, t.mutasi mutasi_kd, km.nama mutasi_nm, t.mutasi_src entry_src, t.mutasi_type entry_type, --t.mutasi_ket, kat.barang_id, kat.barang_kd, kat.barang_nm, t.sub_barang_id, t.sub_barang_kd, t.sub_barang_nm, kat_sst.id barang_sst_id, kat_sst.kode barang_sst_kd, upper(kat_sst.nama) barang_sst_nm, t.sub_barang_sst_id, t.sub_barang_sst_kd, kat_sst_det.nama, sum(t.jml_awal) jml_awal, sum(t.jml_tambah) jml_tambah, sum(t.jml_kurang) jml_kurang, sum(t.saldo_awal) saldo_awal, sum(t.mutasi_tambah) mutasi_tambah, sum(t.mutasi_kurang) mutasi_kurang, sum(t.dat_penyusutan_awal) dat_penyusutan_awal, sum(t.dat_akumulasi_awal) dat_akumulasi_awal, sum(t.dat_penyusutan_akhir) dat_penyusutan_akhir, sum(t.dat_akumulasi_akhir) dat_akumulasi_akhir, sum(t.dat_buku_akhir) dat_buku_akhir, sum(t.akumulasi_awal) akumulasi_awal, sum(t.akumulasi_tambah) akumulasi_tambah, sum(t.akumulasi_kurang) akumulasi_kurang, sum(t.penyusutan) penyusutan, sum(t.akumulasi) akumulasi, sum(t.buku) buku FROM transaksi t JOIN kategoris kat ON kat.barang_kd = t.barang_kd LEFT JOIN aset.kategoris kat_sst ON CASE WHEN substr(kat.barang_kd, 1, 3) IN ('1.5') THEN kat_sst.kode = kat.susut_kd ELSE kat_sst.kode = substr(t.sub_barang_sst_kd, 1, 8) END LEFT JOIN aset.kategoris kat_sst_det ON kat_sst_det.id = t.sub_barang_sst_id JOIN kategori_mutasi km ON km.kode = t.mutasi WHERE t.mutasi NOT IN ('SALDO_AWAL', 'PENILAIAN', 'THN_INI_MT_01') GROUP BY 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23 ORDER BY 1, 3, barang_kd