Aplikasi Web yang dihasilkan oleh PHPMaker memiliki kemampuan untuk mengekspor data ke berbagai tipe atau format data, di antaranya Printer Friendly, Export to Excel, Export to CSV, Export to PDF, dan lain sebagainya. Anda cukup mengaktifkan pilihan yang terdapat di bawah tab menu PHP -> Page Options (Global) -> Export sebelum men-generate file script dari PHPMaker.
Kadang-kadang, Anda sebagai Web Developer harus mengubah link atau URL untuk fitur Export Data tadi. Misalnya, untuk URL Export to PDF, Anda harus mengubahnya dengan mengarahkan ke file kostum yang Anda buat sendiri untuk menghasilkan invoice dalam format file PDF. Pernah mengalami hal ini?
Beruntunglah Anda jika membangun Aplikasi Web dengan menggunakan PHPMaker, karena hal ini dapat diatasi dengan sangat mudah dan cepat. Anda dapat mengubah URL Export to PDF tadi dengan menyisipkan sedikit kode PHP berikut ke dalam server event Page_Render dari halaman yang Anda inginkan (List atau View):
global $Language; $this->ExportPdfUrl = "url-export-anda-di-sini.php"; // <-- pastikan Anda menyesuaikan kode ini sesuai kebutuhan! $item = &$this->ExportOptions->Add("pdf"); $item->Body = "<a href=\"" . $this->ExportPdfUrl . "\" class=\"ewExportLink ewPdf\" title=\"" . ew_HtmlEncode($Language->Phrase("ExportToPDFText")) . "\" data-caption=\"" . ew_HtmlEncode($Language->Phrase("ExportToPDFText")) . "\">" . $Language->Phrase("ExportToPDF") . "</a>"; $item->Visible = TRUE;
Perhatikan kode tersebut. Kita cukup meng-override URL Export to PDF melalui property ExportPdfUrl milik object Table atau Page. Karena URL ini diproteksi kodenya di dalam property ExportOptions yang memiliki method Add, maka kita harus menggunakan kode seperti di atas tadi.
Perlu diketahui juga, bahwa kode tersebut sebenarnya disalin dari kode yang dibangkitkan oleh PHPMaker pada function SetupExportOptions yang terdapat di halaman terkait (List atau View). Artinya, Anda dapat melihat kode yang terkait dengan tipe Export lainnya di function tersebut.
PHPMaker memang keren, ya? 😀
Lilis amalia mengatakan
Makasih Gan untuk infonya, sy jadi tau triknya.. mau sy praktekan..
terimakasih
Masino Sinaga mengatakan
Sama-sama.
pujiarahman mengatakan
Pak Masino apakah triks code yg dimaksud diatas adalah:
Saya sudah membuat file costume sendiri dengan PHPreport,
lalu saya generate phpmaker dan phpreportnya pada saat saya ingin mengeksport ke pdf, cukup saya klik listnya dan akan langsunk ngelink ke file custome yg saya buat dengan data2 yg sudah terisi.
Masino Sinaga mengatakan
Iya, bisa seperti itu contoh pemakaiannya.
noldy mengatakan
Klu cra mengexport halaman list yg di buka ke fpdf gimna ya pak…rencaany mau di rubah tampiln halmn list ke fpdf….trimakasih
Masino Sinaga mengatakan
Pastikan Anda sudah mengaktifkan pilihan PDF dari menu PHP -> Page Options (Global) -> Export. Saat Anda mengaktifkan pilihan tadi, baca dan ikuti petunjuk pada pesan yang muncul.
pujiarahman mengatakan
Pak masino, terimakasih triks nya.. is worked
Masino Sinaga mengatakan
Sama-sama.
pujiarahman mengatakan
Pak Masino, untuk anggap saya memiliki
3 list
1. PT A
2. PT B
3. PT C
saat export ke PT A, sudah langsung ke data nya ..
tapi saat export ke PT B dan PT C masih lari ke PT A
Kira2 dimana ya pak kurangnya trims
Masino Sinaga mengatakan
Berarti kondisi untuk mengubah URL-nya yang perlu disesuaikan supaya bisa menangani PT B dan PT C.
pujiarahman mengatakan
berikut code-nya apakah ada yg kurang pak Masino
saya hanya menambahkan ini
http://localhost/crm/survey_wireless_pelanggansmry.php
Masino Sinaga mengatakan
Sekarang saya tanya balik, menurut Anda apa kalau membandingkan dengan contoh pada artikel di atas? 🙂
sidik mengatakan
sama pak gk ada yg beda.. cuma mengubah url nya ini seperti yg bapak sampaikan ..
saat di klik a ke a
saat di klik b ke b
saat di klik c ke c
saya belum berhasil
Masino Sinaga mengatakan
Silahkan bandingkan lagi dengan teliti dengan contoh kode pada artikel ini.
creat mengatakan
selamat siang pak, mau tanya
saya stuck ga bisa force download
gmn caranya pak untuk mendapatkan link/url file pdfnya?
mohon bantuannya pak,
Terimakasih
Masino Sinaga mengatakan
Kode yang Anda sertakan di komentar tersebut terkirim tidak sempurna.
Nugroho mengatakan
Failed to Export
Warning: “continue” targeting switch is equivalent to “break”. Did you mean to use “continue 2”? in C:\xampp1\htdocs\bissmillah\dompdf080\src\Dompdf.php on line 600
Warning: “continue” targeting switch is equivalent to “break”. Did you mean to use “continue 2”? in C:\xampp1\htdocs\bissmillah\dompdf080\src\Dompdf.php on line 621
Warning: “continue” targeting switch is equivalent to “break”. Did you mean to use “continue 2”? in C:\xampp1\htdocs\bissmillah\dompdf080\lib\Cpdf.php on line 469
Warning: “continue” targeting switch is equivalent to “break”. Did you mean to use “continue 2”? in C:\xampp1\htdocs\bissmillah\dompdf080\lib\Cpdf.php on line 476
Warning: “continue” targeting switch is equivalent to “break”. Did you mean to use “continue 2”? in C:\xampp1\htdocs\bissmillah\dompdf080\lib\Cpdf.php on line 483
Warning: “continue” targeting switch is equivalent to “break”. Did you mean to use “continue 2”? in C:\xampp1\htdocs\bissmillah\dompdf080\lib\Cpdf.php on line 490
Warning: “continue” targeting switch is equivalent to “break”. Did you mean to use “continue 2”? in C:\xampp1\htdocs\bissmillah\dompdf080\src\Css\Stylesheet.php on line 1340
Fatal error: Uncaught Dompdf\Exception: No block-level parent found. Not good. in C:\xampp1\htdocs\bissmillah\dompdf080\src\Positioner\Inline.php:45 Stack trace: #0 C:\xampp1\htdocs\bissmillah\dompdf080\src\FrameDecorator\AbstractFrameDecorator.php(872): Dompdf\Positioner\Inline->position(Object(Dompdf\FrameDecorator\Text)) #1 C:\xampp1\htdocs\bissmillah\dompdf080\src\FrameReflower\Text.php(368): Dompdf\FrameDecorator\AbstractFrameDecorator->position() #2 C:\xampp1\htdocs\bissmillah\dompdf080\src\FrameDecorator\AbstractFrameDecorator.php(893): Dompdf\FrameReflower\Text->reflow(NULL) #3 C:\xampp1\htdocs\bissmillah\dompdf080\src\FrameReflower\Page.php(141): Dompdf\FrameDecorator\AbstractFrameDecorator->reflow() #4 C:\xampp1\htdocs\bissmillah\dompdf080\src\FrameDecorator\AbstractFrameDecorator.php(893): Dompdf\FrameReflower\Page->reflow(NULL) #5 C:\xampp1\htdocs\bissmillah\dompdf080\src\Dompdf.php(831): Dompdf\FrameDecorator\AbstractFrameDecorator->reflow() #6 C:\xampp1\htdocs\bissmillah\phpfn14.php(1044): Dompdf\Dompdf->re in C:\xampp1\htdocs\bissmillah\dompdf080\src\Positioner\Inline.php on line 45
Ketika saya ingin mengekport PDF pada view selalu muncul pesan seperti itu pak ??
apakah bapak bisa membantu saya ?
Masino Sinaga mengatakan
Coba pakai PHPMaker yang terbaru, yaitu versi 2020. Sepertinya Anda masih menggunakan PHPMaker 2018 ya?
Nugroho mengatakan
Iyaa pak bener sekali saya masih menggunakan PHPMaker 2018
Masino Sinaga mengatakan
Baiklah. Sudah saatnya Anda segera beralih ke PHPMaker 2020. Rugi rasanya jika tidak menggunakan fitur-fitur terbaru yang sangat banyak dan powerful di versi 2020 ini.
Masino Sinaga mengatakan
Bahkan, sekarang sudah ada PHPMaker 2021. Rugi jika belum menggunakan PHPMaker 2021.
Nanang mengatakan
Pagi pak, bagaimana caranya membuat halaman dapat di export
datanya jika telah di verifikasi data tsb.
Masino Sinaga mengatakan
Tinggal tambahkan aja satu field yang berisi nilai penanda apakah record tersebut sudah diverifikasi atau belum.
Selanjutnya tinggal filter aja record-record yang sudah diverifikasi di table tadi, dan gunakan untuk report yang bertalian.
bagus mengatakan
pagi Bang. Mohon sarannya soal export to excel.Saya pake versi 2019, punya tabel tanpa image: master detail ( master ada 80an row dan detail ada 20 an row ). export to excel memakai extention bawaan. Kenapa kalo data yang tampil di list view tampil lancar. Ada 700 an row keatas saat export to excel / csv ada error Failed to Export Connection Timed Out. kalo cuma 300 ok. Server VPS centos, vCPU 19,2 GHz RAM 8 GB. saya salah dimananya pak ? design tabelnya atau RAM kurang atau ada export to excel yang lebih mudah dan ringan ? terimakasih sebelumnya
Masino Sinaga mengatakan
Kalau error Connection Timed Out, artinya waktunya perlu ditambah. Coba perbesar nilai dari Tools -> Advanced Settings -> Export all time limit, misalnya menjadi 300.
bagus mengatakan
eh maaf bang. salah info: master detail ( master ada 80an kolom dan detail ada 20 an kolom ) . dan ambil kode juga dari tabel master kode dan tabel user. thanks
Masino Sinaga mengatakan
Kalau 80 kolom itu terlalu banyak untuk di-export, sehingga butuh waktu tambahan dari waktu default 120 detik yang digunakan oleh PHPMaker.