Files
2026-01-30 13:07:53 +07:00

127 lines
6.5 KiB
PHP

<?php
/*******************************************************************
App. Name : SISTEM INFORMASI PERENCANAAN PEMBANGUNAN DAERAH
Module : /apps/php/xls/renja_opd.php
Desc. : PHP - Export Data Renja OPD
Created By : Siau Pheng ([email protected]).
Created Date : January 4th, 2020.
Last Modified : June 6th, 2024.
(c) 2014 - 2024, 3FONIA Software; WWW.3FONIA.COM.
*******************************************************************/
ini_set("pcre.backtrack_limit", 100000000);
require_once(__DIR__."/../../../../../vendor/autoload.php");
require_once(__DIR__."/../func/report.php");
use siaupheng\fonia3\DB\MySQL;
use siaupheng\fonia3\Web\Param;
use siaupheng\fonia3\Web\Form;
use siaupheng\fonia3\Data\SimpleXLS;
function Lo_Dana($arec, $id) {
return ($arec['DanaID']==$id?$arec['Ini_Pagu']:0);
}
$db = (is_resource($db)) ? $db : new MySQL();
$ajson = [];
$data = Param::Get("data");
$tahun = Param::Get("Tahun", $_SESSION['__WEB_APP']['RENC_THN']);
$id_opd = Param::Get("OPDID", 0);
$ak_o = Param::Get("OAksi", 0);
if ( $data == "excel" ) {
$tsql = " WHERE Tahun='".$tahun."' AND Ini_Pagu>0";
$tsql .= ($id_opd==0) ? "" : " AND OPDID='".$id_opd."'";
$tsql .= ($ak_o==9) ? "" : " AND OAksi='".$ak_o."'";
$tglheader = "TAHUN RENJA ".$tahun;
$db->Query("SELECT O.K_OPD KO_OPD,BU.K_BidangU KO_BIDU,PR.K_Prog KO_PROG,T.K_RKA,T.K_Keg,T.N_Keg,O.N_OPD N_OPD,BU.N_BidangU N_BIDU,P.N_Prog N_PROG,T.DanaID,T.OPDID,T.ProgID,T.KegID,T.RKegID,T.Ini_Pagu,T.Dpn_Pagu,T.Keg_Indi,T.Keg_Target,T.Sasaran,T.Lokasi,D.K_Dana,R.DanaID DanaID2,R.KelID,R.ID,R.Kode,R.Uraian,R.Volume,R.SatuanID,S.N_Satuan,R.Rupiah,R.Ini_Pagu Ini_Pagu2,R.Dpn_Pagu Dpn_Pagu2,R.UsulanLID,R.UsulanDID,IFNULL(L.K_Desa,'') K_Desa,IFNULL(L.N_Desa,'') N_Desa,IFNULL(L.N_Kec,'') N_Kec,PR.Prog_Indi,PR.Prog_Target FROM (SELECT *,LEFT(K_Keg,4) K_BidangU FROM renja_keg".$tsql.") T LEFT JOIN renja_prog PR ON (T.Tahun=PR.Tahun AND T.OPDID=PR.OPDID AND T.ProgID=PR.ProgID) LEFT JOIN para_opd O ON (O.OPDID=T.OPDID) LEFT JOIN para_program P ON (P.ProgID=T.ProgID) LEFT JOIN para_bidang_u BU ON (BU.K_BidangU=T.K_BidangU) LEFT JOIN para_dana D ON (D.DanaID=T.DanaID) INNER JOIN (SELECT * FROM renja_rincian WHERE Tahun='".$tahun."' AND Ini_Pagu>0) R ON (R.K_RKA=T.K_RKA) LEFT JOIN para_satuan S ON (R.SatuanID=S.SatuanID) LEFT JOIN vi_para_desa L ON (R.KelID=L.DesaID) ORDER BY T.K_OPD,T.K_BidangU,PR.K_Prog,T.K_Keg,R.Kode");
$xls = new SimpleXLS([
'title'=>"Data Renja OPD",
'desc'=>"Export Data Renja OPD"
]);
$xls->add_header("<b>".$_SESSION['__WEB_APP']['REG_NAME']."</b>");
$xls->add_header("<b>DATA RENJA OPD</b>");
$xls->add_header($tglheader);
$xls->add_field("OPD", 6, "L");
$xls->add_field("BU", 5, "L");
$xls->add_field("PROG", 13, "L");
$xls->add_field("KEG", 16, "L");
$xls->add_field("Nama OPD", 20, "L");
$xls->add_field("Nama BU", 20, "L");
$xls->add_field("Nama Prog", 20, "L");
$xls->add_field("Nama Keg", 20, "L");
$xls->add_field("Dana", 11, "L");
$xls->add_field("Pagu ".$tahun, 15, "R,N");
$xls->add_field("Pagu N+1", 15, "R,N");
$xls->add_field("Indikator", 20, "L");
$xls->add_field("Target", 20, "L");
$xls->add_field("Sasaran", 20, "L");
$xls->add_field("Lokasi", 20, "L");
$xls->add_field("Rinci", 5, "C");
$xls->add_field("Uraian Rincian", 20, "L");
$xls->add_field("Volume", 7, "R,N0");
$xls->add_field("Satuan", 10, "L");
$xls->add_field("Nilai @", 12, "R,N");
$xls->add_field("Jumlah", 15, "R,N");
$xls->add_field("Pagu N+1", 15, "R,N");
$xls->add_field("Kode Desa", 30, "L");
$xls->add_field("Nama Desa", 30, "L");
$xls->add_field("Nama Kecamatan", 30, "L");
$xls->add_field("Indikator Program", 30, "L");
$xls->add_field("Target Program", 30, "L");
$xls->add_field("Kode UNIQ", 12, "L");
$xls->add_field("ID UNIQ", 8, "L,N0");
$xls->add_field("ID OPD", 8, "L,N0");
$xls->add_field("ID Prog", 8, "L,N0");
$xls->add_field("ID Keg", 8, "L,N0");
$xls->add_field("ID Dana", 8, "L,N0");
$xls->add_field("ID Rinci", 8, "L,N0");
$xls->add_field("ID Kel", 8, "L,N0");
$xls->add_field("ID Satuan", 10, "L,N0");
$xls->add_field("ID Usul Desa", 10, "L,N0");
$xls->add_field("ID Usul Dewan", 10, "L,N0");
$xls->add_sheet("Renja ".$tahun, false);
$xls->show_headers();
while ($db->Next()) {
$xls->add_value($db->Row("KO_OPD"), $db->Row("KO_BIDU"), $db->Row("KO_PROG"), $db->Row("K_Keg"), $db->Row("N_OPD"), $db->Row("N_BIDU"), $db->Row("N_PROG"), $db->Row("N_Keg"), $db->Row("K_Dana"), $db->RowFloat("Ini_Pagu"), $db->RowFloat("Dpn_Pagu"), $db->Row("Keg_Indi"), $db->Row("Keg_Target"), $db->Row("Sasaran"), $db->Row("Lokasi"),$db->Row("Kode"), $db->Row("Uraian"), $db->RowFloat("Volume"), $db->Row("N_Satuan"), $db->RowFloat("Rupiah"), $db->RowFloat("Ini_Pagu2"), $db->RowFloat("Dpn_Pagu2"), $db->Row("K_Desa"), $db->Row("N_Desa"), $db->Row("N_Kec"), $db->Row("Prog_Indi"), $db->Row("Prog_Target"), $db->Row("K_RKA"), $db->Row("RKegID"), $db->Row("OPDID"), $db->Row("ProgID"), $db->Row("KegID"), $db->Row("DanaID"), $db->Row("ID"), $db->Row("KelID"), $db->Row("SatuanID"), $db->Row("UsulanLID"), $db->Row("UsulanDID"));
}
$xls->add_stamp(1, true);
$xls->send("Data Renja OPD.xlsx");
unset($xls);
} else if ( $data == "default") {
$q_opd = ($_SESSION['__WEB_USER']['Level']==3) ? " AND OPDID IN (".$_SESSION['__WEB_USER']['AK_OPD'].")" : "";
$form = new Form($db);
$ttahun = $form->option_db("_", "Tahun", $tahun, true, false, "para_periode", array("Tahun","Tahun"), "Tahun BETWEEN '".$_SESSION['__WEB_APP']['Tahun_Min']."' AND '".$_SESSION['__WEB_APP']['Tahun_Max']."'");
$topd = $form->option_db("_", "OPDID", 0, true, false, "vi_para90_opd", array("OPDID","Nama_OPD"), "IV=0 AND Aktif=1".$q_opd." ORDER BY K_OPD", ($_SESSION['__WEB_USER']['Level']==3?"":array(0,"SEMUA OPD")));
$toaksi = $form->radio("_", "OAksi", 9, true, true, [9=>"Semua",1=>"Diterima",2=>"Ditolak",0=>"Belum"]);
echo '
<div class="row mb-1">
<label class="col-sm-4 col-lg-3 col-form-label" for="Tahun">Tahun Data</label>
<div class="col-sm-4 col-lg-5">'.$ttahun.'</div>
</div>
<div class="row mb-1">
<label class="col-sm-4 col-lg-3 col-form-label" for="OPDID">Nama Perangkat Daerah</label>
<div class="col">'.$topd.'</div>
</div>
<div class="row mb-1">
<label class="col-sm-4 col-lg-3 col-form-label" for="OAksi">Asistensi Renja</label>
<div class="col col-form-label">'.$toaksi.'</div>
</div>';
}
send_json($ajson);
?>