Dokumen ini menjelaskan cara export data dari grid ke Excel dan PDF menggunakan library DHTMLX. Hanya membutuhkan satu baris kode untuk proses export dengan menggunakan method grid.toExcel() dan grid.toPDF(). Library yang dibutuhkan adalah grid-excel-php dan grid-pdf-php yang berisi komponen penyusun seperti PHP Excel dan TCPDF. Kode program terdiri dari file index.html untuk view grid dan file grid.php sebagai controller.
2. EXPORT GRID KE XLSX/PDF
Pada tulisan kali ini akan dibahas bagaimana caranya export data dari Grid ke Excel dan PDF.
DHTMLX menyediakan library yang dipersiapkan sedemikian rupa sehingga hanya
membutuhkan sebaris kode. Untuk proses export ini, hal penting yang perlu diingat adalah:
- Jumlah data yang akan di-export, semakin banyak maka waktu yang dibutuhkan semakin
lama
- Module XDebug yang diaktifkan(enabled) pada PHP akan membuat proses export jauh
lebih lama dari biasanya , anda bisa melihat dengan phpinfo()
Library yang dibutuhkan :
1. Grid-pdf-php, dengan komponen penyusun yang utamanya TCPDF
(http://dhtmlx.com/x/download/regular/grid-pdf-php.zip)
2. Grid-excel-php, dengan komponen penyusun yang utamanya PHP Excel
(http://dhtmlx.com/x/download/regular/grid-excel-php.zip)
Setelah library diatas didownload, extract ke dalam directory/folder codebase, misalnya pada
xampp (htdocs/codebase)
3. Kita menulis kode program pada 2 file terpisah yaitu:
1. index.html (untuk view)
2. grid.php (untuk controller grid)
Langsung saja pada kode program,
1. index.html
1. <!DOCTYPE html>
2. <html>
3. <head>
4. <title>DHTMLX Web Apps</title>
5. <style>
6. html,body {
7. width: 100%;
8. height: 100%;
9. margin: 0px;
10. overflow: hidden;
}
11. </style>
12. <link rel="stylesheet" href="../../codebase/dhtmlx.css">
13. <script src="../../codebase/dhtmlx.js"></script>
14. </head>
15. <body>
16. <div id="myID" style="width: 600px; height: 300px"></div>
17.
18. <script>
19. var myGrid = new dhtmlXGridObject("myID");
20. myGrid.setHeader("Nama,Alamat");
21. myGrid.setColTypes("ro,ro");
22. myGrid.attachHeader("#text_filter,#text_filter");
23. myGrid.attachFooter("-,Footer1");
24. myGrid.attachFooter("-,Footer2");
25. myGrid.init();
26.
27. myGrid.load("grid.php"); //muat database ke grid
28.
29. function toXLS() {
30. myGrid.toExcel("../../codebase/grid-excel-
php/generate.php");
31. }
32.
33. function toPDF() {
34. myGrid.toPDF("../../codebase/grid-pdf-php/generate.php");
35. }
36.
37. </script>
38.
39. <p></p>
40. <p><a href="javascript:void(0)" onclick="toXLS()">to Excel</a></p>
41. <p></p>
42. <p><a href="javascript:void(0)" onclick="toPDF()">to PDF</a></p>
43. </body>
44. </html>
4. Penjelasan index.html
- Baris 30, untuk export ke Excel dengan perintah namaGrid.toExcel lalu tentukan posisi
library Excel
- Baris 34, untuk export ke PDF dengan perintah namaGrid.toPDF lalu tentukan posisi
library PDF
TAMPILAN
SETELAH EXPORT KE EXCEL
5. SETELAH EXPORT KE PDF
2. grid.php
1. <?php
2. include ("../../../codebase/connector/grid_connector.php");
3. include ("../../../codebase/connector/db_pdo.php");
4.
5. $dbtype = "mysql";
6. $dbhost = "127.0.0.1";
7. $dbname = "test";
$dbuser = "root";
8. $dbpassword = "";
9. $dbcharset = "utf8";
10.
11. $dsn = "mysql:host=$dbhost;dbname=$dbname;charset=$dbcharset";
12. $dbconn = new PDO($dsn, $dbuser, $dbpassword);
13.
14. $data = new GridConnector($dbconn, "PDO");
15. $data->render_table("alamat", "id", "nama,alamat");
16. ?>
6. Demikianlah pembahasan Export data dari Grid ke Excel dan PDF dengan menggunakan
DHTMLX.
• Demo bisa dicoba di http://dhxapps.web.id/tutorial/6/index.html
• Source code dapat diperoleh di http://dhxapps.web.id/tutorial/6/export.zip
PENULIS
Manuppak L. Tobing
Masih Newbie dalam DHTMLX Programming
http://dhxapps.web.id – Membahas DHTMLX, PHP dan MySQL
Email: lumban.tobing.m@gmail.com