Sebagian besar forum pembuat Laporan Magento , blog, tutorial, dll. Semuanya tampaknya berfokus untuk mengambil Laporan Magento yang ada dan menyalin atau memperluasnya . Sebagian besar adalah kisi-kisi yang menghubungkan ke dataset tertentu dan semuanya termasuk filter standar yaitu dari / ke tanggal & periode (ditambah filter tambahan pada beberapa laporan).
Namun, tampaknya ada sangat sedikit informasi di luar sana tentang cara membuat laporan yang sepenuhnya khusus dengan filter khusus.
Misalnya, pelanggan ingin laporan dengan dua filter khusus yang melaporkan hanya pada dua metrik agregat sederhana.
magento-1.9
reports
jonadams51
sumber
sumber
Jawaban:
Pertama-tama, Anda perlu membuat modul khusus, buat file-file berikut:
Tentukan modul Anda di /app/etc/modules/Mycompany_Mymodule.xml :
Lengkapi file tata letak yang akan memperbarui tampilan admin (saya selalu melakukan ini dulu karena saya tidak ingin melupakannya). /app/design/adminhtml/default/default/layout/mymodule.xml
Buat file config dengan konten ini /app/code/local/Mycompany/Mymodule/etc/config.xml :
Di sini kita mendefinisikan pengontrol, akses menu dan izin, model, blok dan helper.
Buat kisi dan tentukan semua kolom /app/code/local/Mycompany/Mymodule/Block/adminhtml/Mymodule/Grid.php :
File ini paling jelas tetapi saya memberi Anda beberapa tips tentang baris tertentu:
// baris ini menunjukkan model yang akan digunakan untuk mendapatkan data.
Untuk langkah selanjutnya, buat blok kotak kisi /app/code/local/Mycompany/Mymodule/Block/adminhtml/Mymodule.php :
Di sini kita menambahkan baris ini untuk menghapus tombol add: // Ini harus selalu setelah
parent::__construct();
baris.$this->_removeButton('add');
Buat wadah blok /app/code/local/Mycompany/Mymodule/Block/Mymodule.php :
Buat controller /app/code/local/Mycompany/Mymodule/controllers/Adminhtml/MymoduleController.php :
Kemudian helper /app/code/local/Mycompany/Mymodule/Helper/Data.php kosong :
Dan untuk yang terakhir kita buat model yang akan membawa data /app/code/local/Mycompany/Mymodule/Model/Mymodule.php :
Ini adalah model khusus yang mendapatkan data dari model inti Magento, di sini Anda dapat menentukan model apa pun atau jika Anda sudah mendapatkan DB / tabel Anda sendiri, Anda bisa mendapatkan data laporan dari itu. // baris ini mengatur ulang kueri asli yang datang secara default.
$this->_reset();
Saya mencoba untuk menambahkan semua file ini tetapi begitu saya mengklik pada item menu baru laporan halaman kosong muncul.
sumber
Hanya Ubah nama folder
adminhtml
untukAdminhtml
sesuai di bawah jalan:app / code / local / Mycompany / Mymodule / Block / adminhtml / Mymodule.php
sumber