Para masta Yii, ane lagi butuh bantuannya nih.
Ane kan udah bikin report format pdf di Yii pake Zend, udah berhasil
sebelumnay sy download zend, saya simpan di ../protocted/vendor/zend
ini codingannya:
protected/view/rapatItem/print.php
<?php
foreach($Rapats as $rapat){
$id = $rapat->rapat_id;
$judul = $rapat->judul;
$tanggal = $rapat->tanggal;
$jam = $rapat->jam;
$lokasi = $rapat->lokasi;
$narasumber = $rapat->narasumber;
$metode = $rapat->metode_id;
}
?>
<?php
// Memastikan bahwa Zend di-include-kan
Yii::import('application.vendors.*');
require_once('Zend/Pdf.php');
// Create stream pdf baru
$pdf1 = new Zend_Pdf();
// definisi halaman
$page = new Zend_Pdf_Page(Zend_Pdf_Page::SIZE_A4_LANDSCAPE);
// definisi font
$font = Zend_Pdf_Font::fontWithName(Zend_Pdf_Font::FONT_HELVETICA);
// apply font
$page->setFont($font, 12);
//line rectangle header
$page->drawRectangle(50, 470, ($page->getWidth()-50), 540, Zend_Pdf_Page::SHAPE_DRAW_STROKE);
$page->setLineColor(new Zend_Pdf_Color_Rgb(0,0,0));
//line vertical
$page->drawLine(150, 470, 150, 540);
//line horizontal
$page->drawLine(150, 505, ($page->getWidth()-50), 505);
//image logo
$image = Zend_Pdf_Image::imageWithPath('images/pgn.jpg');
$page->drawImage($image, 70, 480, 130, 530);
//text first
$color1 = new Zend_Pdf_Color_Html('#111111');
$page->setFillColor($color1);
$page->drawText("PT PERUSAHAAN GAS NEGARA (Persero) Tbk", 330, 520);
$page->drawText("FORMULIR NOTULENSI KNOWLEDGE SHARING", 320, 490);
// menuliskan text ke page
//$color1 = new Zend_Pdf_Color_Html('#3366FF');
//$page->setFillColor($color1);
$page->drawText("Judul", 50, 440);
$page->drawText(" : ".$judul, 150, 440);
$page->drawText("Waktu & Lokasi", 50, 425);
$page->drawText(" : ".$tanggal.", ".$lokasi, 150, 425);
$page->drawText("Narasumber", 50, 410);
$page->drawText(" : ".$narasumber, 150, 410);
$page->drawText("Fasilitator", 50, 395);
$page->drawText(" : ".$name, 150, 395);
$page->drawText("Metode", 50, 380);
$page->drawText(" : ".$metode, 150, 380);
$page->drawText("Notulis", 50, 365);
$page->drawText(" : ".$name, 150, 365);
$page->drawText("Lampiran", 50, 350);
$page->drawText(" : ".$name, 150, 350);
//mengetahui
$page->drawText("Mengetahui", 650, 100);
$page->drawText("Fasilitator Knowledge Sharing,", 600, 85);
$page->drawText("(", 610, 65);
$page->drawText("..........", 620, 65);
$page->drawText(")", 750, 65);
$str = "Mary had a little lamb. It's fleece was white as snow. And everywhere that Mary went, the lamb was sure to go";
//$page->drawTextBlock($str, 10, 500, 200, 300, Zend_Pdf_Page::ALIGN_RIGHT);
// line footer
$page->drawLine(50, 25, ($page->getWidth()-50), 25);
// add footer text
//$page->drawText('Copyright My Company 2010. All rights reserved.', ($page->getWidth()/3), 10);
// memasukkan page tersebut ke file pdf
$pdf1->pages[] = $page;
// mengambil hasil pdf yang di-generate
$pdfcontents = $pdf1->render();
// me-render ke browser - jangan lupa setting header untuk Content-Type
header('Content-Type: application/pdf');
$this->layout = true;
$this->renderText($pdfcontents);
?>
Cuma untuk generate tabel itu saya masih bingung.
ni recomend dari zend:
http://devzone.zend.com/article/12492
terus saya tambahkan coding ini untuk nampilin datanya bentul tabel (msh gagal)
while ($record = $stmt->fetch()) {
$row = new My_Pdf_Table_Row();
$cols = array();
foreach ($record as $k => $v) {
$col = new My_Pdf_Table_Column();
$col->setText($v);
$cols[] = $col;
}
$row->setColumns($cols);
$row->setFont($font, 14);
$row->setBorder(My_Pdf::TOP, new Zend_Pdf_Style());
$row->setBorder(My_Pdf::BOTTOM, new Zend_Pdf_Style());
$row->setBorder(My_Pdf::LEFT, new Zend_Pdf_Style());
$row->setCellPaddings(array(10,10,10,10));
$table->addRow($row);
}
muncul pesan error ini gan
padahal My_Pdf_Table udah saya download tapi gmn cara include di Yiinya ya, di taroh di folder mana? masalahnya kalo di zend itu diminta dipindahkan ke folder Library, mohon bantuannya gan…!!!