function CetakKehadiranMhsw($mhsw) { global $_lf; $s = "select pm.*, j.Kehadiran, j.JadwalSer, \n j.MKKode, LEFT(j.Nama, 30) as NamaMK, j.NamaKelas, j.JenisJadwalID, j.SKS,\n sum(pm.Nilai) as JML\n from presensimhsw pm\n left outer join jadwal j on pm.JadwalID=j.JadwalID\n where pm.MhswID='{$mhsw['MhswID']}' and j.TahunID='{$_SESSION['tahun']}' \n group by pm.JadwalID"; $r = _query($s); // buat file $nmf = "tmp\\{$_SESSION['_Login']}.dwoprn"; $f = fopen($nmf, 'w'); // parameter $mxc = 114; $mxb = 60; $grs = str_pad('-', $mxc, '-') . $_lf; $thn = GetaField('tahun', "ProgramID='{$mhsw['ProgramID']}' and ProdiID='{$mhsw['ProdiID']}' and TahunID", $_SESSION['tahun'], 'Nama'); $hdr = str_pad('*** Rekap Kehadiran per Mahasiswa ***', $mxc, ' ', STR_PAD_BOTH) . $_lf . "Tahun Akd : {$_SESSION['tahun']} - {$thn} " . $_lf . "Mahasiswa : {$mhsw['MhswID']} - {$mhsw['Nama']} " . $_lf . $grs . str_pad('No.', 4) . str_pad('Kode', 8) . str_pad('Matakuliah', 31) . str_pad('Kls', 4) . str_pad("Dosen", 6) . str_pad(' Hadir', 10) . $_lf . $grs; fwrite($f, $hdr); $n = 0; while ($w = _fetch_array($r)) { $n++; $persen = $w['Kehadiran'] == 0 ? 0 : $w['JML'] / $w['Kehadiran'] * 100; $Jen = $w['JenisJadwalID'] == 'R' ? "(R)" : ''; $_persen = number_format($persen, 2); fwrite($f, str_pad($n . '.', 4) . str_pad($w['MKKode'], 8) . str_pad($w['NamaMK'] . $Jen, 31) . str_pad($w['NamaKelas'], 4) . str_pad($w['Kehadiran'] . ' X', 5, ' ', STR_PAD_LEFT) . str_pad($_persen . '%', 9, ' ', STR_PAD_LEFT) . $_lf); AmbilDetail($f, $mhsw, $w); } fwrite($f, $grs); fwrite($f, chr(12)); fclose($f); TampilkanFileDWOPRN($nmf, 'lap.hadir.permhsw'); }
function Ambilkan($mhsw) { $s = "select k.*\r\n from khs k\r\n where k.MhswID='{$mhsw['MhswID']}'\r\n order by k.Sesi"; $r = _query($s); echo "<p><table class=box cellspacing=1 cellpadding=4>\r\n <tr><th class=ttl>Sesi</th>\r\n <th class=ttl>Semester</th>\r\n <th class=ttl>Biaya</th>\r\n <th class=ttl>Potongan</th>\r\n <th class=ttl>Pembayaran</th>\r\n <th class=ttl>Tarikan</th>\r\n <th class=ttl>Balance</th>\r\n <th class=ttl>Ambilan</th>\r\n <th class=ttl>Detail Trx Pengambilan</th>\r\n </tr>"; while ($w = _fetch_array($r)) { $c = $w['TahunID'] == $_SESSION['tahun'] ? "class=ul" : "class=nac"; $bia = number_format($w['Biaya']); $pot = number_format($w['Potongan']); $byr = number_format($w['Bayar']); $trk = number_format($w['Tarik']); $bal = -$w['Biaya'] - $w['Tarik'] + $w['Potongan'] + $w['Bayar']; $_bal = number_format($bal); $cb = $bal >= 0 ? "class=ul" : "class=wrn"; $amb = $bal > 0 ? "<a href='?mnux=mhswkeu.ambil&gos=TrxAmbil&mhswid={$mhsw['MhswID']}&khsid={$w['KHSID']}'><img src='img/edit.png'> Ambil</a>" : " "; $det = $w['TahunID'] == $_SESSION['tahun'] ? AmbilDetail($mhsw, $w) : ' '; echo "<tr><td class=inp>{$w['Sesi']}</td>\r\n <td {$c}>{$w['TahunID']}</td>\r\n <td {$c} align=right>{$bia}</td>\r\n <td {$c} align=right>{$pot}</td>\r\n <td {$c} align=right>{$byr}</td>\r\n <td {$c} align=right>{$trk}</td>\r\n <td {$cb} align=right><b>{$_bal}</b></td>\r\n <td {$cb} align=center>{$amb}</td>\r\n <td class=ul valign=top>{$det}</td>\r\n </tr>"; } echo "</table></p>"; }
function fnEditHondok() { global $arrBulan; $_honDosenID = $_REQUEST['_honDosenID']; $md = $_REQUEST['md'] + 0; $_honID = $_REQUEST['_honID'] + 0; $_honTahunID = $_REQUEST['_honTahunID']; $dsn = GetFields('dosen', "Login='******' and KodeID", KodeID, "*"); if ($md == 0) { $w = GetFields('honordosen', 'HonorDosenID', $_honID, '*'); $jdl = "Edit Honor Dosen <sup>{$_honTahunID}</sup>"; $_SESSION['_honMinggu'] = $w['Minggu']; } elseif ($md == 1) { $w = array(); $w['TahunID'] = $_honTahunID; $w['Minggu'] = $_SESSION['_honMinggu']; //GetaField('minggu', 'Def', 'Y', 'MingguID'); $w['Tahun'] = $_SESSION['_honTahun']; $w['Bulan'] = $_SESSION['_honBulan']; $w['DosenID'] = $_honDosenID; $w['ProdiID'] = $dsn['ProdiID']; $pajak = GetaField("prodi", "ProdiID = '{$dsn['Homebase']}' and KodeID", KodeID, "PajakHonorDosen"); $w['Pajak'] = $pajak; $jdl = "Tambah Honor Dosen <sup>{$_honTahunID}</sup>"; } else { die(ErrorMsg("Error", "Mode edit <b>{$md}</b> tidak dikenali oleh sistem.<br />\r\n Hubungi Sysadmin untuk informasi lebih lanjut.\r\n <hr size=1 color=silver />\r\n <input type=button name='btnClose' value='Tutup' onClick='window.close()' />")); } $homebase = GetaField('prodi', "ProdiID='{$dsn['Homebase']}' and KodeID", KodeID, 'Nama'); $optminggu = GetOption2('minggu', "concat(MingguID, ' - ', Nama)", 'MingguID', $_SESSION['_honMinggu'], '', 'MingguID'); $stt = GetaField('statusdosen', 'StatusDosenID', $dsn['StatusDosenID'], 'Nama'); $stt = empty($stt) ? '× (Belum diset)' : $dsn['StatusDosenID'] . ' − ' . $stt; // Tampilan TampilkanJudul($jdl); echo <<<ESD <table class=bsc cellspacing=1 width=100%> <form name='frmMenuHondok' action='?' method=POST> <input type=hidden name='_honTahunID' value='{$_honTahunID}' /> <input type=hidden name='_honTahun' value='{$_SESSION['_honTahun']}' /> <input type=hidden name='_honBulan' value='{$w['Bulan']}' /> <input type=hidden name='_honDosenID' value='{$w['DosenID']}' /> <input type=hidden name='_honID' value='{$_honID}' /> <input type=hidden name='gos' value='fnEditHondok' /> <input type=hidden name='md' value='{$md}' /> <tr><td class=inp>Dosen:</td> <td class=ul1>{$dsn['Nama']} <sup>{$dsn['Gelar']}</sup></td> <td class=inp>Homebase:</td> <td class=ul1>{$homebase} <sup>{$dsn['Homebase']}</sup></td> </tr> <tr><td class=inp>Bulan:</td> <td class=ul1>{$_SESSION['_honBulan']}−{$_SESSION['_honTahun']}</td> <td class=inp>Minggu:</td> <td class=ul1><select name='_honMinggu' onChange='this.form.submit()'>{$optminggu}</select></td> </tr> <tr><td class=inp>Status:</td> <td class=ul1 colspan=3>{$stt}</td> </tr> </form> </table> <table class=bsc cellspacing=1 width=100%> <form name='frmEditHondok' action='?' method=POST> <input type=hidden name='_honTahunID' value='{$_honTahunID}' /> <input type=hidden name='_honTahun' value='{$_SESSION['_honTahun']}' /> <input type=hidden name='_honBulan' value='{$w['Bulan']}' /> <input type=hidden name='_honDosenID' value='{$w['DosenID']}' /> <input type=hidden name='_honID' value='{$_honID}' /> <input type=hidden name='_honMinggu' value='{$_SESSION['_honMinggu']}' /> <input type=hidden name='gos' value='fnSimpanHondok' /> <input type=hidden name='md' value='{$md}' /> <tr><td class=inp nowrap> Pajak :</td> <td class=ul1 colspan=6><input type=text name='_honPajak' value='{$w['Pajak']}' size=4 maxlength=4 /> %</td> </tr> <tr> <th class=ttl width=25>Nmr</th> <th class=ttl width=80>Presensi</th> <th class=ttl>Matakuliah</th> <th class=ttl width=40>SKS</th> <th class=ttl width=40>Tunjangan<br />SKS(per SKS)</th> <th class=ttl width=40>Tunjangan<br />Transport</th> <th class=ttl width=40>Tunjangan<br />Tetap</th> </tr> ESD; // Ambil detailnya AmbilDetail($_honID, $_honDosenID, $_honTahunID); echo <<<ESD <tr><td class=ul1 colspan=10 align=center> <input type=submit name='btnSimpan' value='Simpan' /> <input type=button name='btnBatal' value='Batal' onClick='Tutup()' /> </td></tr> </form> </table> ESD; }
BuatHeader($jdwl, $Kolom, $pdf); // Buat rekap kehadiran dan tanda tangan BuatEnding($jdwl, $Kolom, $pdf); // Buat footer BuatFooter($jdwl, $i + 2, $totalpage, $pdf); } else { $s1 = "select k.MhswID, m.Nama\r\n\t\tfrom krs k\r\n\t\t left outer join mhsw m on m.MhswID = k.MhswID and m.KodeID = '" . KodeID . "'\r\n\t\twhere k.JadwalID = '{$jdwl['JadwalID']}'\r\n\t\torder by k.MhswID\r\n\t\tlimit {$start}, {$maxentryperpage}"; $r1 = _query($s1); $pdf->AddPage('L'); $pdf->SetAutoPageBreak(true, 5); // Buat Header Logo HeaderLogo("DAFTAR PRESENSI MAHASISWA", $pdf, 'L'); // Buat header dulu BuatHeader($jdwl, $Kolom, $pdf); // Tampilkan datanya AmbilDetail($jdwl, $r1, $start, $Kolom, $pdf); // Buat rekap kehadiran dan tanda tangan BuatEnding($jdwl, $Kolom, $pdf); // Buat footer BuatFooter($jdwl, $i + 1, $totalpage, $pdf); } $pdf->Output(); // *** Functions *** function BuatEnding($jdwl, $Kolom, $p) { global $arrID; $lbrkolom = 12; $t = 8; // Footer $p->Cell(78, $t, 'Jumlah Mahasiswa Hadir :', 'LBR', 0, 'R'); $p->Cell($lbrkolom, $t, '', 'BR', 0);
else if($SKS == 3) $totalentry = 16; else if($SKS == 4) $totalentry = 14; else $totalentry = 14; */ $totalentry = GetaField('jadwal', "KodeID='" . KodeID . "' and JadwalID", $_REQUEST['JadwalID'], 'RencanaKehadiran'); // Buat semua halaman tanpa footer $s1 = "select k.MhswID, m.Nama\r\n\tfrom krs k\r\n\t left outer join mhsw m on m.MhswID = k.MhswID and m.KodeID = '" . KodeID . "'\r\n\twhere k.JadwalID = '{$jdwl['JadwalID']}'\r\n\torder by k.MhswID"; $r1 = _query($s1); $pdf->AddPage('P'); $pdf->SetAutoPageBreak(true, 5); // Buat Header Logo HeaderLogo("DAFTAR PRESENSI DOSEN", $pdf, 'P'); // Buat header dulu BuatHeader($jdwl, $pdf); // Tampilkan datanya AmbilDetail($jdwl, $totalentry, $pdf); //Buat halaman terakhir dengan footer $pdf->Output(); // *** Functions *** function AmbilDetail($jdwl, $numberofentry, $p) { $t = 13; $p->SetFont('Helvetica', '', 9); for ($i = 1; $i <= $numberofentry; $i++) { $p->Cell(30, $t, $i, 'LBR', 0, 'C'); $p->Cell(40, $t, '', 'BR', 0); $p->Cell(80, $t, '', 'BR', 0); $p->Cell(40, $t, '', 'BR', 0); $p->Ln($t); } }