Di artikel sebelumnya kita sudah membahas server event Page_Exporting yang jika mengembalikan nilai FALSE, maka server event Row_Export yang akan dipanggil ketika sebuah baris Record diekspor dengan menggunakan kode Anda sendiri.
Argumen server event ini hanya satu, yaitu $rs yang merupakan sebuah array dari Record yang akan diekspor. Nilai di $rs merupakan nilai yang diambil dari Database dan belum diformat. Jika Anda ingin mengekspor nilai yang sudah diformat, cukup gunakan kode $this->MyField->ViewValue.
Perlu diingat bahwa jika Anda mengembalikan nilai TRUE di server event Page_Exporting (lihat artikel saya sebelum ini), maka standar Export yang akan digunakan dan server event Row_Export tidak akan dipanggil. Jika fitur Custom Templates digunakan, maka server event ini mungkin akan ditimpa. Anda dapat menonaktifkan penggunaan Custom Templates untuk laporan, lihat contoh kode di server event Page_Load yang juga sudah pernah saya bahas.
Contoh berikut ini akan mengekspor sebuah Record dengan kode yang dapat dikostumisasi hanya untuk Export ke Excel:
function Row_Export($rs) { if ($this->Export == "excel") // Membangun HTML dengan nilai field: $rs["MyField"] atau $this->MyField->ViewValue $this->ExportDoc->Text .= "<div>" . $this->MyField->ViewValue . "</div>"; }
Nikmatnya menggunakan PHPMaker! 🙂
Cak Sobri mengatakan
Tutorialnya udah versi 11 ya.. 😀
Masino Sinaga mengatakan
Yoi. Maju terus! 😀
Zulias Mardinata mengatakan
Pak masino,gmn caranya agar field yg akn dieksport di word adl hsl format text,bkn nilai field asli.Ktknlh field yg akan diekspor adl field Nama Lengkap (Budi Setiawan),sdgkn yg akn kluar diekspor adalh 3 huruf pertama initial Nama (Bud). Klo tak slh ini menggunkn fungsi string substr..
Masino Sinaga mengatakan
Anda bisa menggunakan server event Page_Exporting dan Row_Export yang terdapat di halaman List.
Baca topik Server Events and Client Scripts untuk info dan contoh lebih lanjut.
Zulias Mardinata mengatakan
Saya sudah ubah function Page_Exporting() { return FALSE;}
dan function Row_Export($rs) {
$this->ExportDoc->Text .= ” “.
$this->Nama_Mhs->ViewValue . “”;
Dimana saya harus meletakkan fungsi string substr([Nama_Mhs],0,3) ? Supaya field Nama_Mhs berisi 3 huruf awal initial namanya..
Mohon penjelasannya pak Masino..
Masino Sinaga mengatakan
Di dalam server event Row_Export:
Zulias Mardinata mengatakan
Ok,makasih pak masino.Berhasil
Masino Sinaga mengatakan
Sama-sama.
Nuzulul mengatakan
Pak Masino gimana cara menambah kolom baru yang sebelumnya kita tambah di ListOption Biar terexport juga?
Masino Sinaga mengatakan
Caranya buat database view terpisah yang memiliki kolom baru tadi, supaya datanya bisa di-export.
Nizar mengatakan
cara ini berhasil hanya untuk satu kolom saja, bagaimana jika saya punya lebih dari satu kolom yang akan di export?
Masino Sinaga mengatakan
Jawabannya ada di artikel berikut:
Mudahnya Mengubah Data yang Diekspor di Aplikasi Web dari PHPMaker 2022