Отображение настраиваемых полей проверки адреса выставления счетов в таблице заказов на продажу администратора


В моем пользовательском модуле я немного изменил процесс оформления заказа и добавил некоторые пользовательские поля в разделе платежный адрес , следуя приведенному ниже руководству:

Http://excellencemagentoblog.com/blog/2011/10/06/magento-add-custom-fields-checkout-page/

Теперь эти пользовательские поля здесь сохраняются в другой таблице в виде пары ключ=>значение, основанной на идентификаторе заказа в таблице sales_order_custom, созданной моим модулем сам.

Кроме того, я хочу получить эти значения, связанные с модулем sales_order, и отобразить некоторые из этих полей типа ключ=>значение в таблице заказов на продажу администратора.

Как мне соединить эти две таблицы, чтобы ключи также преобразовывались в столбцы , и я мог получить их непосредственно в виде индекса "AddColumn"??

Я пытался перейти по ссылкам, но я думаю, что они несколько не тот путь, к которому я приближаюсь..

1) https://plugin.company/blog/join-eav-attribute-flat-table-collection-magento / - пытаясь это сделать, я получил следующую ошибку: "Указан недопустимый тип сущности: sales_order_custom"

2)http://blog.ki6i.com/magento-join-eav-and-flat-table/

Заранее спасибо..

Author: Helly, 2015-04-20

1 answers

Моя статья относится к присоединению "стандартного" атрибута/таблицы EAV Magento к плоской таблице в Magento.

То, что вы пытаетесь сделать, - это соединить пользовательскую таблицу с плоской таблицей.

Должно сработать что-то вроде следующего:

$collection = Mage::getModel('sales/order')->getCollection();
$collection
       ->getSelect()
       ->joinLeft(
              array('customattribute1' => 'sales_order_custom'),
              "customattribute.order_id=main_table.entity_id AND customattribute.key = 'keynumber1here'"
               )
          )
        ;

(замените keynumber1here ключом, который вы хотите добавить)

Затем вы могли бы сделать следующее в сетке:

$this->addColumn('your_column_name',array(
     'label' => $this->__('Your Label'),
     'index' => 'customattribute1.value'
    )
)

Надеюсь, это поможет!

 0
Author: Milan Simek, 2015-04-21 14:58:14