2012-05-07 1 views
1

Я построил пользовательский отчет в значительной степени в соответствии с этим руководством http://www.summasolutions.net/blogposts/custom-reports-magento. Однако я также хочу добавить фильтр; как расположенная @ Report-> Sales-> Orders.magento custom admin report filter

Я попытался выяснить, где все необходимые части, расположенные внутри ядра, но я должен что-то упустить. Они, кажется, в Mage/Sales/Block/Adminhtml/Report/Фильтр/форма

Любая помощь будет удивительным

ответ

1

Посмотрите /app/code/core/Mage/Adminhtml/controllers/Report/SalesController.php и перейти к salesAction, вы увидите два блока ссылки:

$gridBlock = $this->getLayout()->getBlock('report_sales_sales.grid'); 
$filterFormBlock = $this->getLayout()->getBlock('grid.filter.form'); 

который вы можете найти определенный в app/design/adminhtml/default/default/layout/sales.xml, в разделе отмечается <adminhtml_report_sales_sale>. Обратите внимание, что здесь есть несколько вариантов действий с помощью методов действий. Это направляет вас на sales/adminhtml_report_filter_form_order, который вы можете найти на app/code/core/Mage/Sales/Block/Adminhtml/Report/Filter/Form/Order.php, а его родитель, ../Form.php. Посмотрите на функции _prepareForm(), которые должны дать вам лучший шаблон для работы. Обратите внимание, что оба они являются потомками Mage/Sales/Block/Adminhtml/Report/Filter/Form.