Я создаю пользовательский модуль. Есть две новые таблицы.
Таблица 1: t1_id
(ПК), order_id
(ФК)
Таблица 2: t2_id
(ПК), t1_id
(ФК), item_id
(ФК).
Table2.item_id
эквивалентно sales_flat_order_item.item_id
. Я создаю пользовательский отчет и в коллекции нужно показать артикул. Сначала я попробовал следующее:
$collection = Mage::getModel('custom/two')->getCollection();
$tbl_product_collection = Mage::getSingleton('core/resource')->getTableName('catalog/product');
$tbl_one = Mage::getSingleton('core/resource')->getTableName('custom/one');
$tbl_two = Mage::getSingleton('core/resource')->getTableName('custom/two');
$collection->getSelect()
->from(array('tbl_one' => $tbl_one))
->join(array('tbl_two' => $tbl_two),
'tbl_two.t1_id = tbl_one.t1_id')
// Join with Item ID on Simple Product
// Showing wrong SKU
->join(array('product' => $tbl_product_collection),
'tbl_two.item_id = product.entity_id');
Однако product.entity_id на самом деле является product_id sales_flat_order_item.item_id
. Как я могу получить SKU в коллекции, ссылаясь на item_id
в таблице2?
Спасибо за любую помощь или предложения!