Belajar Membuat Sistem Informasi PHP – PART 10

Salam. Selamat datang kembali di sistemit.com. Sebelumnya saya sangat berterimakasih karena antusias teman teman dalam mempelajari pembuatan sistem informasi mulai dari part 1 hingga part 10. Pada Part 10 ini kita akan memasuki pembuatan laporan. Adapun target pembelajaran sistem informasi pada postingan ini adalah

Target Part 10

1. Dapat membuat Laporan Langsung (direct dengan menggunakan klink link)
2. Dapat membuat Laporan Dinamis berdasarkan Tanggal yang di input

Download Bahan

DOWNLOAD SOURCE CODE PART 10

PENDAHULUAN

Apa itu FPDF
Dalam membuat laporan sistem informasi berbasis web yang sudah umum digunakan adalah FPDF. FPDF merupakan suatu kumpulan class (library) PHP yang memungkinkan penggunanya dapat membuat halaman PDF dengan mudah dengan mengikuti aturan penulisan kode tanpa perlu melakukan penginstallan yang ribet. Cukup dengan copy library fpdf saja.. FPDF dapat didoewnload secara gratis melalui situs resmi FPDF pada link berikut :

http://fpdf.org/en/download.php

Yang saya gunakan dalam membuat laporan adalah versi fpdf 1.8.2. Baik untuk tidak memperpanjang artikel, langsung saja kita memasuki tutorial atau pembelajaran mengenai bagaimana membuat laporan pada sistem informasi berbasis web.

Langkah-langkah Membuat Laporan Fpdf

Adapun langkah-langkah dalam membuat laporan PDF adalah sangat mudah sama seperti menampilkan data pada umumnya, namun kita hanya mengikuti rules yang ada oleh Library FPDF.

Berikut ada 2 Jenis Laporan yang saya contohkan, Yaitu laporan dengan direct link (laporan barang) dan laporan dinamis berdasarkan tanggal, yang mana user harus memilih tanggal terlebih dahulu, kemudian barulah laporan di tampilkan.

1. Laporan dengan Direct Link (Laporan Barang)

Langkah 1. Siapkan Folder Class fpdf yang sudah di download, dan letakkan di bagian index sistem. Lihat gambar berikut :

Langkah 2. Buatlah file bernama “cetaklaporanbarang.php” dan letakkan di dalam folder modul dengan kode sebagai berikut :

<?php
define('FPDF_FONTPATH','font/');
require('../fpdf/fpdf.php');
include "../koneksi/koneksi.php";
class PDF extends FPDF
{
//Page header
function Header()
{
$this->Ln(10);
$this->SetFont('Arial','B',13);
$this->Cell(80);
$this->Cell(30,0,'Data Barang',0,0,'C');
$this->Ln(20);
$this->PageFormats=array('a3'=>array(841.89,1190.55),
'a4'=>array(595.28,841.89), 'a5'=>array(549.94,595.28),
'letter'=>array(612,792), 'legal'=>array(612,1008));
}
function Footer()
{
    $this->SetY(-10);
    $this->SetFont('Arial','I',8);
    $this->Cell(0,10,'Halaman '.$this->PageNo().'/{nb}',0,0,'C');
}
}
$pdf=new PDF('P','mm','A4');
$pdf->AliasNbPages();
$pdf->AddPage();
$pdf->SetFont('Times','',10);
$sql = mysqli_query($conn,'select * from tbl_barang');
$no = 1;
$pdf->setFillColor(142,160,243);
$pdf->SetX(25);
$pdf->CELL(8,6,'NO',1,0,'C',1);
$pdf->CELL(25,6,'Kode Barang',1,0,'C',1);
$pdf->CELL(80,6,'Nama Barang',1,0,'C',1);
$pdf->CELL(13,6,'Stok',1,0,'C',1);
$pdf->CELL(35,6,'Harga Barang',1,1,'C',1);
while($tampil = mysqli_fetch_array($sql)){
$pdf->SetX(25);
$pdf->setFillColor(255,255,255);
$pdf->CELL(8,6,$no,1,0,'C',1);
$pdf->CELL(25,6,$tampil['kode_barang'],1,0,'L',1);
$pdf->CELL(80,6,$tampil['nama_barang'],1,0,'L',1);
$pdf->CELL(13,6,$tampil['stok'],1,0,'L',1);
$pdf->CELL(35,6,$tampil['harga_barang'],1,1,'L',1);
$no++;
}
$pdf->Output();
?>

Langkah 3. Selanjutnya tinggal mengubah link menu untuk mengakses laporan berikut ini. Silahkan mengakses file menu.php dan copykan kode berikut :

<li><a style='color:white' href='modul/cetaklaporanbarang.php' target='_blank'>Laporan Data Barang</a></li>

Jika diakses maka Laporan Barang akan tampil :

2. Contoh Laporan dengan data Dinamis (Barang Keluar)

Langkah 1. Buat file bernama laporanbarangkeluar.php, lalu letakkan di dalam folder modul dengan kode sebagai berikut :

<?php
switch($_GET['aksi']){
case "tampil":
echo "<span style='font-size:18pt; font-weight:bold;'>Laporan Barang Keluar</span></br></br>
<form method='POST' action='modul/cetaklaporanbarangkeluar.php' target='_blank'>
<table class='forminput'>
<tr>
<td>Dari Tanggal</td>
<td>:
<input type='date' name='dari' maxlength='10' required='required' />
</td>
</tr>
<tr>
<td>Sampai tanggal</td>
<td>: <input type='date' name='sampai' maxlength='20' required='required' /></td>
</tr>
<tr>
<td colspan='2'><input type='submit' value='Cetak'/><input type='button' value='Batal' onclick='self.history.back()'/>
</form>
</tr>
<tr></tr>
</table>
";
break;
}

Langkah 2. Buat file bernama cetaklaporanbarangkeluar.php, lalu letakkan di dalam folder modul dengan kode sebagai berikut :

<?php
define('FPDF_FONTPATH','font/');
require('../fpdf/fpdf.php');
include "../koneksi/koneksi.php";
class PDF extends FPDF
{
//Page header
function Header()
{
$this->Ln(10);
$this->SetFont('Arial','B',13);
$this->Cell(120);
$this->Cell(30,0,'Laporan Barang Keluar',0,0,'C');
$this->Ln(10);
$this->PageFormats=array('a3'=>array(841.89,1190.55),
'a4'=>array(595.28,841.89), 'a5'=>array(549.94,595.28),
'letter'=>array(612,792), 'legal'=>array(612,1008));
}
function Footer()
{
    $this->SetY(-10);
    $this->SetFont('Arial','I',8);
    $this->Cell(0,10,'Halaman '.$this->PageNo().'/{nb}',0,0,'C');
}
}
$pdf=new PDF('L','mm','A4');
$pdf->AliasNbPages();
$pdf->AddPage();
$pdf->SetFont('Times','',10);
$dari = $_POST['dari'];
$sampai = $_POST['sampai'];
$sql=mysqli_query($conn,"SELECT * FROM tbl_pengeluaran 
INNER JOIN tbl_barang ON tbl_pengeluaran .kode_barang = tbl_barang.kode_barang
where tanggal_keluar between '$dari' and '$sampai'
ORDER BY kode_pengeluaran"); 
$no = 1;
$pdf->SetX(15);
$pdf->CELL(40,6,'Dari Tanggal',0,0,'L',0);
$pdf->CELL(40,6,": $dari",0,1,'L',0);
$pdf->SetX(15);
$pdf->CELL(40,6,'Sampai Tanggal',0,0,'L',0);
$pdf->CELL(40,6,": $sampai",0,1,'L',0);
$pdf->Ln(5);
$pdf->setFillColor(142,160,243);
$pdf->SetX(15);
$pdf->CELL(8,6,'NO',1,0,'C',1);
$pdf->CELL(35,6,'Kode Keluar',1,0,'C',1);
$pdf->CELL(25,6,'Kode Barang',1,0,'C',1);
$pdf->CELL(80,6,'Nama Barang',1,0,'C',1);
$pdf->CELL(70,6,'Tgl Keluar',1,0,'C',1);
$pdf->CELL(40,6,'Jumlah',1,1,'C',1);
while($tampil = mysqli_fetch_array($sql)){
$pdf->SetX(15);
$pdf->setFillColor(255,255,255);
$pdf->CELL(8,6,$no,1,0,'C',1);
$pdf->CELL(35,6,$tampil['kode_pengeluaran'],1,0,'L',1);
$pdf->CELL(25,6,$tampil['kode_barang'],1,0,'L',1);
$pdf->CELL(80,6,$tampil['nama_barang'],1,0,'L',1);
$pdf->CELL(70,6,$tampil['tanggal_keluar'],1,0,'L',1);
$pdf->CELL(40,6,$tampil['jumlah_keluar'],1,1,'L',1);

$no++;
}
$pdf->Output();
?>

Langkah 3. Jangan Lupa menambahkan modul laporanbarangkeluar pada file index.php dengan tambahan kode berikut :

	case "laporanbarangkeluar":
	include "modul/laporanbarangkeluar.php";
	break;

Langkah 4. Tambahkan Link Menu Laporan Barang Keluar Pada menu.php

<li><a style='color:white' href='index.php?modul=laporanbarangkeluar&aksi=tampil'>Laporan Barang Keluar</a></li>

Selanjutnya dengan langkah yang sama dapat dilakukan untuk cetak laporan barang masuk untuk laporan dinamis.

Demikianlah tutorial membuat laporan dengan menggunakan fpdf dengan php. Terimakasih. Sampai jumpa pada artikel tutorial belajar sistem informasi selanjutnya.

Related posts