• Tidak ada hasil yang ditemukan

IMPLEMENTASI SISTEM

IV.2. Tampilan Program dan Penjelasan

IV.2.4. Halaman Bagian Administrasi

Pada halaman ini user diberi hak akses untuk menambah data transaksi

proyek(transaksi biasa, jurnal penyesuaian, kasbon, pertanggungjawaban kasbon)

$qry = "SELECT kode_proyek, nama_proyek, alamat_lokasi, status_dana, nilai_proyek,

tgl_mulai, tgl_deadline, tgl_selesai, nama_mitra, nama_perwalian FROM proyek, mitra

WHERE kode_proyek = '$kode_proyek' AND mitra.kode_mitra = proyek.kode_mitra";

104

serta melihat data transaksi dalam bentuk jurnal umum, buku besar, laporan laba-rugi

dan daftar saldo. Berikut adalah submenu dari halaman administrasi:

a) Tampilan Halaman Utama bagian Administrasi

Halaman ini akan muncul pertama kali setelah user bagian

administrasi sukses melakukan login. Halaman ini dikhususkan untuk

melakukan pencarian data transaksi dan penyesuaian transaksi.

Tampilannya adalah seperti gambar di bawah ini:

Gambar 4.23. Halaman Utama Bagian Administrasi

Untuk melakukan pencarian transaksi caranya juga hampir sama dengan

pencarian data pegawai atau proyek atau juga yang lainnya. Perintahnya

b) Tampilan Halaman Transaksi

Pada halaman transaksi terdapat menu-menu pengolahan data

transaksi yaitu: tambah transaksi, tambah kasbon, kasbon pegawai, jurnal

penyesuaian, rincian transaksi, jurnal umum, laporan. Berikut adalah

tampilan dari halaman transaksi:

Gambar 4.24. Halaman Pengolahan Data Transaksi $qry = "SELECT kode_proyek, no_nota, tgl_transaksi, keterangan,

id_account, nama_account, debet, kredit, nama_transaksi FROM transaksi a, account b

WHERE a.id_account = b.id_account AND (a.nama_transaksi LIKE '%$keyword%'

OR a.id_account LIKE '$keyword'

OR a.tgl_transaksi LIKE '%$keyword%' OR a.keterangan LIKE '%$keyword%'

OR b.nama_account LIKE '$keyword%' OR a.no_nota LIKE '%$keyword%%')

ORDER BY a.kode_transaksi LIMIT $awal, $hal";

106

Menu pertama pada navigasi sebelah kiri adalah tombol tambah transaksi

yang digunakan untuk menambah data transaksi. Tampilannya adalah

seperti gambar di bawah ini:

Gambar 4.25. Form Input Data Transaksi

Jenis transaksi di atas ada tiga belas macam namun query untuk

menginputkan data ke dalam databae relatif sama. Di bawah ini adalah

contoh dari perintah yang digunakan untuk menambah transaksi

untukjenis transaksi pelunasan piutang usaha. Perintahnya adalah:

$qryx = "INSERT INTO Transaksi(no_nota, kode_proyek, id_account, nama_transaksi, debet, kredit, tgl_transaksi, keterangan)

VALUES ('$no_nota2','$kode_proyek', '100','Pelunasan Piutang Usaha', '$nominal', 0, '$tgl_transaksi', '$keterangan')";

Submenu berikutnya adalah tambah kasbon, tampilannya adalah

sebagai berikut ini:

Gambar 4.26. Form Input Data Kasbon Pegawai

Perintah untuk menambah data kasbon pegawai adalah sebagai berikut:

$qry2x = "INSERT INTO Transaksi(no_nota,kode_proyek, id_account, nama_transaksi, debet, kredit, tgl_transaksi, keterangan)

VALUES ('$no_nota2','$kode_proyek', '104', 'Pelunasan Piutang Usaha', 0, '$nominal', '$tgl_transaksi', '$keterangan')";

mysql_query($qry2x);

$qry2y = mysql_query("SELECT saldo_d AS s_d FROM account WHERE id_account = '100'");

$row1 = mysql_fetch_object($qry2y); $s_d = $row1->s_d;

$qry2z = mysql_query("SELECT saldo_k AS s_k FROM account WHERE id_account = '104'");

$row2 = mysql_fetch_object($qry2z); $s_k = $row2->s_k;

$new1 = $s_d + $nominal; $new2 = $s_k + $nominal;

$upd = mysql_query("UPDATE account SET saldo_d = '$new1' WHERE id_account = '100'");

$upd2 = mysql_query("UPDATE account SET saldo_k = '$new2' WHERE id_account = '104'");

108

Untuk transaksi tambah kasbon selain menambah transaksi

akun piutang karyawan di sisi debet dan akun kas di sisi kredit juga

menambah data kasbon pegawai di tabel kasbon. Ini ditunjukkan oleh

variabel $kbBB. Dan juga saldo debet pada akun piutang karyawan juga

diupdate begitu pula saldo kredit pada akun kas.

$no_nota = getIDNota('NOFKBN'); //Pembuatan nota kasbon oleh sistem $qwry = "INSERT INTO transaksi(no_nota, kode_proyek, id_account, nama_transaksi, debet, kredit, tgl_transaksi, keterangan)

VALUES ('$no_nota', '$kode_proyek', '105','Kasbon Pegawai untuk Biaya Bahan Baku', '$jml_kasbon', 0, '$tgl_transaksi', '$keterangan')";

mysql_query($qwry);

$qwry2 = "INSERT INTO transaksi(no_nota, kode_proyek, id_account, nama_transaksi, debet, kredit, tgl_transaksi, keterangan)

VALUES ('$no_nota','$kode_proyek', '100','Kasbon Pegawai untuk Biaya Bahan Baku', '0', $jml_kasbon, '$tgl_transaksi', '$keterangan')";

mysql_query($qwry2);

kbBB = "INSERT INTO kasbon(no_nota, nip, kode_proyek, jml_kasbon, tgl_kasbon, status)

VALUES ('$no_nota','$nip2', '$kode_proyek', '$jml_kasbon', '$tgl_transaksi', '0')";

mysql_query($kbBB);

$qry2y = mysql_query("SELECT saldo_d AS s_d FROM account WHERE id_account = '105'");

$row1 = mysql_fetch_object($qry2y); $s_d = $row1->s_d;

$qry2z = mysql_query("SELECT saldo_k AS s_k FROM account WHERE id_account = '100'");

$row2 = mysql_fetch_object($qry2z); $s_k = $row2->s_k;

$new1 = $s_d + $jml_kasbon; $new2 = $s_k + $jml_kasbon;

$upd = mysql_query("UPDATE account SET saldo_d = '$new1' WHERE id_account = '105'");

$upd2 = mysql_query("UPDATE account SET saldo_k = '$new2' WHERE id_account = '100'");

Submenu berikutnya adalah kasbon pegawai. Pada submenu ini

sistem menampilkan siapa saja pegawai yang kasbon, baik kasbon itu

sudah dipertanggung jawabkan atau belum, user dapat memilih tipenya

apakah kasbon yang sudah lunas atau kasbon yang belum lunas. Berikut

adalah tampilannya:

Gambar 4.27. Daftar Kasbon Belum Lunas

Untuk form pertanggungjawaban kasbon tampilannya adalah seperti

110

Gambar 4.28. Form Pertanggungjawaban Kasbon

Pertama user akan mengisikan jumlah nota, misal 2 maka aka muncul

tampilan seperti gambar di bawah ini:

Gambar di atas adalah detail transaksi kasbon untuk biaya bahan baku

terdiri dari dua jenis field yaitu nominal dan keterangan. Untuk input

pertanggungjawaban kasbon perintahnya adalah sebagai berikut:

$total = 0; //variabel utk menampung total nominal tiap nota for($i = 1; $i <= $jml_nota; $i++)

{

$total = $total + $nominal[$i]; }

if($total > $jml_kasbon) {

echo "<script>alert('Jumlah nominal pertanggungjawaban kasbon lebih besar daripada jumlah kasbonnya...!!!')</script>";

} else {

for($i = 1; $i <= $jml_nota; $i++) {

$qwry = "INSERT INTO transaksi(no_nota, kode_proyek, id_account, nama_transaksi, debet, kredit, tgl_transaksi, keterangan)

VALUES ('$no_nota', '$kode_proyek', '201','Pertanggungjawaban Kasbon Pegawai untuk Biaya Bahan Baku', '$nominal[$i]', 0,

'$tgl_transaksi', '$keterangan[$i]')"; mysql_query($qwry);

$qry2y = mysql_query("SELECT saldo_d AS s_d FROM account WHERE id_account = '201'");

$row1 = mysql_fetch_object($qry2y); $s_d = $row1->s_d;

$qry2z = mysql_query("SELECT saldo_k AS s_k FROM account WHERE id_account = '105'");

$row2 = mysql_fetch_object($qry2z); $s_k = $row2->s_k;

$new1 = $s_d + $total; $new2 = $s_k + $total;

$upd = mysql_query("UPDATE account SET saldo_d = '$new1' WHERE id_account = '201'");

$upd2 = mysql_query("UPDATE account SET saldo_k = '$new2' WHERE id_account = '105'");

if($total < $jml_kasbon) {

$kml = $jml_kasbon - $total;

$qwry3 = "INSERT INTO transaksi(no_nota, kode_proyek, id_account, nama_transaksi, debet, kredit, tgl_transaksi, keterangan)

VALUES ('$no_nota','$kode_proyek', '100','Pertanggungjawaban Kasbon Pegawai untuk Biaya Bahan Baku', '$kml', 0, '$tgl_transaksi', 'Sisa kembalian')";

112

Pada transaksi pertanggungjawaban kasbon yang pertama-tama

adalah menhitung total nominal semua nota menggunakan perulangan

dan disimpan dalam variabel $total kemudian akan di cek apakah

jumlah nominal seluruh nota lebih besar daripada nominal kasbon? Jika

benar maka akan muncul pesan kesalahan jika tidak maka tiap nota yang

diinputkan tadi akan dimasukkan ke dalam database. Kemudian akan

dicek kembali apakah total nominal nota lebih kecil daripada nominal

$qwry4 = "INSERT INTO transaksi(no_nota, kode_proyek, id_account, nama_transaksi, debet, kredit, tgl_transaksi, keterangan)

VALUES ('$no_nota','$kode_proyek', '105','Pertanggungjawaban Kasbon Pegawai untuk Biaya Bahan Baku', '0', $kml, '$tgl_transaksi', 'Sisa kembalian')";

mysql_query($qwry4); }

$qry3y = mysql_query("SELECT saldo_d AS sd FROM account WHERE id_account = '100'");

$row2 = mysql_fetch_object($qry3y); $sd = $row2->sd;

$qry3z = mysql_query("SELECT saldo_k AS sk FROM account WHERE id_account = '105'");

$row3 = mysql_fetch_object($qry3z); $sk = $row3->sk;

$new3 = $sd + $kml; $new4 = $sk + $kml;

$upd3 = mysql_query("UPDATE account SET saldo_d = '$new3' WHERE id_account = '100'");

$upd4 = mysql_query("UPDATE account SET saldo_k = '$new4' WHERE id_account = '105'");

//echo "$upd3<br>"; //echo "$upd4<br>";

$upKB = "UPDATE kasbon SET status = '1', tgl_lunas = ‘$tgl_transaksi’ WHERE no_nota = '$no_nota'";

$res = mysql_query($upKB); }

kasbon? Jika benar maka akan dimasukkan transaksi tambahan yaitu sisa

kembalian uang, akun kas didebet dan akun piutang karyawan dikredit

agar seimbang. Kemudian saldo debet dan kredit pada tabel account

juga diupdate untuk semua transaksi di atas.

Untuk melihat kasbon yang sudah lunas user dapat melihat

pada gambar di atas lalu memilih tipe kasbon sudah lunas. Tampilannya

adalah sebagai berikut:

Gambar 4.30. Daftar Kasbon Sudah Lunas

Pada field Kasbon angka nominal tersebut bila diklik akan muncul

rincian transaksi biaya bahan baku dari kasbon tersebut, tampilannya

114

Gambar 4.31. Detail Transaksi Kasbon Biaya Bahan Baku

Perintah untuk menampilkan data rincian biaya bahan baku

dari kasbon tersebut adalah

Submenu selanjutnya adalah jurnal penyesuaian yang

digunakan untuk melakukan koreksi transaksi. Tampilannya seperti

gambar di bawah ini:

$qryB = "SELECT no_nota, tgl_transaksi, debet, kredit, keterangan FROM transaksi

WHERE no_nota = '$no_nota' AND kode_proyek = '$kode_proyek' AND (id_account = '201' OR id_account = '100')

AND nama_transaksi LIKE 'Pertanggungjawaban%'"; $res = mysql_query($qryB);

Gambar 4.32. Form Input Jurnal Penyesuaian

Perintah yang digunakan untuk memasukkan koreksi transaksi atau

inputpenyesuaian adalah sebagai berikut:

$qry = "INSERT INTO transaksi(no_nota, kode_proyek, id_account, nama_transaksi, debet, kredit, tgl_transaksi, keterangan)

VALUES ('$no_nota', '$kode_proyek', '$kor_debet', 'Koreksi $nama_transaksi', $nominal, 0, '$tgl_transaksi', '$keterangan')";

$res1 = mysql_query($qry);

$qry2 = "INSERT INTO transaksi(no_nota, kode_proyek, id_account, nama_transaksi, debet, kredit, tgl_transaksi, keterangan)

VALUES ('$no_nota','$kode_proyek', '$kor_kredit', 'Koreksi $nama_transaksi', 0, '$nominal', '$tgl_transaksi', '$keterangan')";

$res2 = mysql_query($qry2);

$qryD = mysql_query("SELECT saldo_d FROM account WHERE id = '$kor_debet'");

$row2 = mysql_fetch_object($qryD); $deb = $row2->saldo_d;

$qryK = mysql_query("SELECT saldo_k FROM account WHERE id = '$kor_kredit'");

$row3 = mysql_fetch_object($qryK); $kre = $row3->saldo_k;

116

Cara penambahan data koreksi transaksi penyesuaian sama dengan

penambahan transaksi biasa hanya saja bila tipe transaksinya

berhubungan dengan piutang karyawan seperti yang ditunjukkan oleh

baris perintah:

if(($kor_debet == '105' and $kor_kredit == '100') or ($kor_debet == '100' and $kor_kredit == '105'))

maka data kasbon pegawai juga diubah yaitu pada fieldjml_kasbon. Hal itu ditunjukkan pada vaiabel$ksb.

$nilaiD = $deb + $nominal; $nilaiK = $kre + $nominal;

$kor = mysql_query("UPDATE account SET saldo_d = '$nilaiD' WHERE id = '$kor_debet'");

$kor2 = mysql_query ("UPDATE account SET saldo_k = '$nilaiK' WHERE id = '$kor_kredit'");

if(($kor_debet == '105' and $kor_kredit == '100') or ($kor_debet == '100' and $kor_kredit == '105'))

{

//echo "Koreksi Kasbon<br>";

$kor = "SELECT SUM(debet) - SUM(kredit) AS jml FROM transaksi

WHERE id_account = '105' AND no_nota = '$no_nota' AND kode_proyek = '$kode_proyek'";

$res_kor = mysql_query($kor); $row = mysql_fetch_object($res_kor); $jml_baru = $row->jml;

$ksb = "UPDATE kasbon SET jml_kasbon = '$jml_baru' WHERE no_nota = '$no_nota'";

$res_ksb = mysql_query($ksb); }

Submenu selanjutnya adalah rincian transaksi yaitu rincian data

transaksi tiap proyek atau buku pembantu proyek. Tampilannya adalah

sebagai berikut:

Gambar 4.33. Buku Pembantu Proyek

118

$qry9 = "SELECT nama_account, SUM(debet) - SUM(kredit) AS jml4 FROM transaksi a, account b

WHERE a.kode_proyek = '$kode_proyek' AND a.id_account = '104' AND a.id_account = b.id

GROUP BY kode_proyek"; $qry10 = mysql_query($qry9);

$qry11 = "SELECT nilai_proyek FROM proyek WHERE kode_proyek = '$kode_proyek'";

$qry12 = mysql_query($qry11);

$qry13 = "SELECT SUM(debet) - SUM(kredit) AS Biaya_TK_dibayar FROM transaksi

WHERE kode_proyek = '$kode_proyek' AND id_account = '400' AND nama_transaksi LIKE '%Pelunasan Hutang Biaya Tenaga Kerja'";

$qry14 = mysql_query($qry13);

$qry15 = "SELECT SUM(debet) - SUM(kredit) AS Biaya_BB_dibayar FROM transaksi

WHERE kode_proyek = '$kode_proyek' AND id_account = '400' AND nama_transaksi LIKE '%Pelunasan Hutang Biaya Bahan Baku'";

$qry16 = mysql_query($qry15);

$qry17 = "SELECT SUM(debet) - SUM(kredit) AS Biaya_KP_dibayar FROM transaksi

WHERE kode_proyek = '$kode_proyek' AND id_account = '400' AND nama_transaksi LIKE '%Pelunasan Hutang Biaya Komisi Pegawai'";

$qry18 = mysql_query($qry17);

$qry19 = "SELECT SUM(debet) - SUM(kredit) AS Biaya_LL_dibayar FROM transaksi

WHERE kode_proyek = '$kode_proyek' AND id_account = '400' AND nama_transaksi LIKE '%Pelunasan Hutang Biaya Lain-lain'";

$qry20 = mysql_query($qry19);

$qry21 = "SELECT SUM(kredit) - SUM(debet) AS Hutang_Biaya_TK FROM transaksi

WHERE kode_proyek = '$kode_proyek' AND id_account = '400' AND nama_transaksi LIKE '%Biaya Tenaga Kerja Dicatat%'";

$qry22 = mysql_query($qry21);

$qry23 = "SELECT SUM(kredit) - SUM(debet) AS Hutang_Biaya_BB FROM transaksi

WHERE kode_proyek = '$kode_proyek' AND id_account = '400' AND nama_transaksi LIKE '%Biaya Bahan Baku Dicatat%'";

Submenu selanjutnya adalah jurnal, tampilannya adalah sebagai berikut:

FROM transaksi

WHERE kode_proyek = '$kode_proyek' AND id_account = '400' AND nama_transaksi LIKE '%Biaya Komisi Pegawai Dicatat%'";

$qry26 = mysql_query($qry25);

$qry27 = "SELECT SUM(kredit) - SUM(debet) AS Hutang_Biaya_LL FROM transaksi

WHERE kode_proyek = '$kode_proyek' AND id_account = '400' AND nama_transaksi LIKE '%Biaya Lain-lain Dicatat%'";

$qry28 = mysql_query($qry27);

$piutang = $nilai_proyek - $pendapatan;

$labaSementara = $pendapatan - ($biaya_TK + $biaya_BB + $biaya_KP + $biaya_LL);

$laba = $nilai_proyek - ($biaya_TK + $biaya_BB + $biaya_KP + $biaya_LL);

$total_biaya = $biaya_TK + $biaya_BB + $biaya_KP + $biaya_LL; if($pendapatan == 0 AND $total_biaya == 0)

{ $bar_income = 0; $bar_cost = 0; $bar_laba = 0; else {

$bar_income = (($nilai_proyek / ($nilai_proyek + $total_biaya)) * 100); $bar_cost = (($total_biaya / ($nilai_proyek + $total_biaya)) * 100); }

if($laba > 0)

$bar_laba = (($laba / ($nilai_proyek + $total_biaya)) * 100); elseif($laba < 0)

$bar_laba = ((($laba * -1) / ($nilai_proyek + $total_biaya)) * 100); else

$bar_laba = 0;

$total_hutang = $Hutang_Biaya_TK + $Hutang_Biaya_BB + $Hutang_Biaya_KP + $Hutang_Biaya_LL;

$total_sisa_hutang = ($Hutang_Biaya_TK - $Biaya_TK_dibayar) + ($Hutang_Biaya_BB $Biaya_BB_dibayar) + ($Hutang_Biaya_KP -$Biaya_KP_dibayar) + ($Hutang_Biaya_LL - $Biaya_LL_dibayar);

120

Gambar 4.34. Jurnal

Perintah yang digunakan untuk menampilkan data di atas adalah:

Submenu selanjutnya adalah laporan, tampilannya adalah

sebagai berikut:

$qry = "SELECT tgl_transaksi, debet, kredit, keterangan, nama_account, id_account FROM Transaksi, Account

WHERE Transaksi.id_account = Account.id AND tgl_transaksi LIKE '$thn-$bln-%' ORDER Bytgl_transaksi, kode_transaksi ASC LIMIT $awal, $hal";

Gambar 4.35. Daftar laporan

Daftar laporan-laporan yang bisa dilihat oleh user bagian

administrasi adalah laporan laba rugi, laporan grafik bulanan dan laporan

daftar saldo. Untuk laporan laba rugi tampilannya adalah sebagai berikut:

122

Perintah yang digunakan untuk menampilkan laporan laba rugi

adalah sebagai berikut:

$qry = "SELECT SUM(kredit) - SUM(debet) AS income FROM transaksi WHERE id_account = '103'

AND tgl_transaksi LIKE '$thn% AND kode_proyek NOT LIKE 'xxx''"; $qry2 = mysql_query($qry);

while($row = mysql_fetch_object($qry2)) {

$totalPendapatan = $row->income; }

$qry3 = "SELECT SUM(debet) - SUM(kredit) AS totalBiayaTK FROM transaksi WHERE id_account LIKE '200'

AND tgl_transaksi LIKE '$thn% AND kode_proyek NOT LIKE 'xxx''"; $qry4 = mysql_query($qry3);

while($row1 = mysql_fetch_object($qry4)) {

$totalBiayaTK = $row1->totalBiayaTK; }

$qry5 = "SELECT SUM(debet) - SUM(kredit) AS totalBiayaBB FROM transaksi

WHERE id_account LIKE '201'

AND tgl_transaksi LIKE '$thn% AND kode_proyek NOT LIKE 'xxx''"; $qry6 = mysql_query($qry5);

while($row2 = mysql_fetch_object($qry6)) {

$totalBiayaBB = $row2->totalBiayaBB; }

$qry7 = "SELECT SUM(debet) - SUM(kredit) AS totalBiayaKP FROM transaksi

WHERE id_account LIKE '202'

AND tgl_transaksi LIKE '$thn% AND kode_proyek NOT LIKE 'xxx''"; $qry8 = mysql_query($qry7);

while($row3 = mysql_fetch_object($qry8)) {

$totalBiayaKP = $row3->totalBiayaKP; }

$qry9 = "SELECT SUM(debet) - SUM(kredit) AS totalBiayaLL FROM transaksi

WHERE id_account LIKE '203'

AND tgl_transaksi LIKE '$thn% AND kode_proyek NOT LIKE 'xxx''"; $qry10 = mysql_query($qry9);

while($row4 = mysql_fetch_object($qry10)) {

$totalBiayaLL = $row4->totalBiayaLL; }

Pada laporan laba rugi di atas ada lima buah akun yang ditampilkan

yaitu pendapatan, biaya bahan baku, biaya tenaga kerja, biaya komisi

pegawai, biaya lain-lain. Variabel $totalPendapatan digunakan untuk

menampung total nilai pendapatan dalam setahun, query yang ditunjukkan

dalam variabel $qry digunakan untuk menghitung selisih total field kredit

dan field debet dimana id_accountnya sama dengan 103 karena pendapatan

bertambah di sisi kredit dan bila ada penyesuaian, pendapatan berkurang di

sisi debit. Sedangkan pada biaya(semua kategori biaya), querynya adalah

menghitung selisih field debet dan kredit karena biaya bertambah di sisi

debet dan berkurang di sisi kredit seperti ditunjukkan pada variabel $qry3,

$qry5, $qry7, $qry9. variabel $totalAllBiaya digunakan untuk menampung

jumlah seluruh biaya(semua kategori biaya) dan variabel $laba digunakan

untuk menghitung selisih total pendapatan dan total biaya

Selanjutnya adalah laporan grafik bulanan, yaitu laporan laba rugi

yang ditampilkan per bulan dan disertai dengan grafik. Tampilannya adalah

seperti gambar di bawah ini:

$totalAllBiaya = $totalBiayaTK + $totalBiayaBB + $totalBiayaKP + $totalBiayaLL;

124

Gambar 4.37. Laporan Grafik Bulanan

Perintah untuk menampilkan laporan laba rugi bulanan hampir

sama dengan laporan laba rugi tahunan perbedaannya adalah pada interval

waktunya. Ini ditunjukkan pada potongan query yang dicetak tebal di bawah ini.

Selanjutnya adalah laporan daftar saldo yaitu laporan yang

menampilkan saldo akun terkini. Tampilannya adalah sebagai berikut:

$qry1 = "SELECT SUM(kredit) - SUM(debet) AS pendapatan FROM transaksi

WHERE id_account = '103' ANDtgl_transaksi LIKE '$tahun-$bulan-%'" AND kode_proyek NOT LIKE 'xxx';

$res_q = mysql_query($qry1);

while($row1 = mysql_fetch_object($res_q)) {

$pendapatan = $row1->pendapatan; }

Gambar 4.38. Laporan Daftar Saldo

Perintah yang digunakan untuk menampilkan laporan daftar

saldo di atas adalah sebagai berikut:

$qry = mysql_query("SELECT * FROM account"); while($row = mysql_fetch_object($qry))

{

$sAkun = $row->saldo_d - $row->saldo_k; if($sAkun < 0)

{

$sAkun = $sAkun * -1; }

$saldoAkun = array('saldoAkun' => $sAkun); $wrn = pilWarna($i);

$warna = array('warna' => $wrn);

$arrGabung = array_merge($row, $warna, $saldoAkun); array_push($arrData, $arrGabung);

$i++; }

$qry2 = mysql_query("SELECT SUM(saldo_d) AS deb, SUM(saldo_k) AS kre FROM account");

126

Didalam laporan tersebut ada dua buah tombol yaitu “Lihat

Rekap ” dan “Tutup Buku”. Tombol “Lihat Rekap” digunakan untuk

melihat selisih debet dan kredit tiap akun, setelah tombol ditekan

tampilannya adalah seperti dibawah ini:

Gambar 4.39. Rekapitulasi Daftar Saldo

Perintah yang digunakan untuk menampilkan rekap saldo

tersebut adalah sebagai berikut:

$temp1 = "CREATE TEMPORARY TABLE temp_saldo (

no_akun VARCHAR(4) NOT NULL , nama VARCHAR(30) NOT NULL , debitx BIGINT(20) NOT NULL , kreditx BIGINT(20) NOT NULL, PRIMARY KEY(no_akun)

)";

$res_temp = mysql_query($temp1);

$qry = "SELECT id_account, nama_account, SUM(saldo_d)- SUM(saldo_k) AS sal

FROM account

GROUP BY id_account"; $qry2 = mysql_query($qry);

while($row = mysql_fetch_object($qry2)) {

if($row->sal > 0) {

$ttp = "INSERT INTO temp_saldo(no_akun, nama, debitx, kreditx) VALUES('$row->id_account', '$row->nama_account', '$row->sal', '0')";

$tes = mysql_query($ttp); //echo "$ttp<br>"; } else { $sal = $row->sal * -1;

$ttp3 = "INSERT INTO temp_saldo(no_akun, nama, debitx, kreditx) VALUES('$row->id_account', '$row->nama_account', '0', '$sal')";

$tes3 = mysql_query($ttp3); //echo "$ttp3<br>";

} }

$arrData = array();

$out = "SELECT * FROM temp_saldo"; $out2 = mysql_query($out); $i = 1; while($row2 = mysql_fetch_object($out2)) { $wrn = pilWarna($i); $warna = array('warna' => $wrn);

$arrGabung = array_merge($row2, $warna); array_push($arrData, $arrGabung);

$i++;

//echo ">no_akun, >nama, >debitx, $row2->kreditx";

}

$sum = "SELECT SUM(debitx) AS sal_d, SUM(kreditx) AS sal_k FROM temp_saldo";

$sum1 = mysql_query($sum); $row3 = mysql_fetch_object($sum1); $sal_d = $row3->sal_d;

128

Pada listing di atas pertama-tama kita membuat tabel sementara

dengan nama temp_saldo, querynya ditunjukkan pada variabel $temp1, setelah itu kita menghitung selisih nilai saldo debet dan saldo kredit pada

tabel account dan dikelompokkan berdasarkan id_account, ini ditunjukkan

pada varibel $qry. Kemudian dicek apakah nilai selisihnya adalah positif?

Jika positif maka nilai selisih saldo tersebut disimpan di sisi debet(pada field

debitx) dan sisi kredit di set nol sedangkan jika negatif nilai selisih saldo

tersebut disimpan di sisi kredit(pada field kreditx) dan sisi debet di set nol.

Data pada field id_account dan nama_account pada tabel account juga

dicopydalam tabel temp_saldo. Kemudian setelah semuanya dicopy,semua

data pada tabel temp_saldo akan ditampilkan, ini ditunjukkan pada variabel

$out, dan jumlah saldo debet dan kredit semua akun juga akan ditampilkan,

ini ditunjukkan pada variabel$sum.

Selanjutanya adalah tombol “Tutup Buku”. Tombol ini hanya

akan aktif pada akhir tahun (31 Desember) yang digunakan untuk

menutup buku besar. Perintah yang digunakan dalam proses tutup buku

$tgl = date('d'); $bln = date('m'); $thn = date('Y');

$tgl_transaksi = $thn."-".$bln."-".$tgl;

$qry = "SELECT SUM(kredit) - SUM(debet) AS income FROM transaksi WHERE id_account = '103'

AND tgl_transaksi LIKE '$thn%' AND kode_proyek NOT LIKE 'xxx'"; $qry2 = mysql_query($qry);

while($row = mysql_fetch_object($qry2)) {

$totalPendapatan = $row->income; }

$qry3 = "SELECT SUM(debet) - SUM(kredit) AS totalBiayaTK FROM transaksi WHERE id_account LIKE '200'

AND tgl_transaksi LIKE '$thn%' AND kode_proyek NOT LIKE 'xxx'"; $qry4 = mysql_query($qry3);

while($row1 = mysql_fetch_object($qry4)) {

$totalBiayaTK = $row1->totalBiayaTK; }

$qry5 = "SELECT SUM(debet) - SUM(kredit) AS totalBiayaBB FROM transaksi WHERE id_account LIKE '201'

AND tgl_transaksi LIKE '$thn%' AND kode_proyek NOT LIKE 'xxx'"; $qry6 = mysql_query($qry5);

while($row2 = mysql_fetch_object($qry6)) {

$totalBiayaBB = $row2->totalBiayaBB; }

$qry7 = "SELECT SUM(debet) - SUM(kredit) AS totalBiayaKP FROM transaksi WHERE id_account LIKE '202'

AND tgl_transaksi LIKE '$thn%' AND kode_proyek NOT LIKE 'xxx'"; $qry8 = mysql_query($qry7);

while($row3 = mysql_fetch_object($qry8)) {

$totalBiayaKP = $row3->totalBiayaKP; }

$qry9 = "SELECT SUM(debet) - SUM(kredit) AS totalBiayaLL FROM transaksi

WHERE id_account LIKE '203'

AND tgl_transaksi LIKE '$thn%' AND kode_proyek NOT LIKE 'xxx'"; $qry10 = mysql_query($qry9);

while($row4 = mysql_fetch_object($qry10)) {

$totalBiayaLL = $row4->totalBiayaLL; }

130

$laba = ($totalPendapatan - ($totalBiayaTK + $totalBiayaBB +

Dokumen terkait