2011-12-14 7 views
0

dropshipモジュール(Unirgy_Dropship_Block_Adminhtml_Report_Grid)を使用していますが、支払い方法を列として追加しようとしています。 必要なテーブルを見つけてコレクションに追加できました。問題は、フィールドにNULLが設定されていることです。何か案が?これは私の基本的なコードです。修正が必要な行は、method属性を追加するjoinLeft行です。Magentoのレポートに支払方法を設定する

protected function _prepareCollection() { 
    //... 
    $eav = Mage::getSingleton('eav/config'); 
    $oapAttr = $eav->getAttribute('order_payment', 'method'); 
    $collection = Mage::getResourceModel('sales/order_shipment_collection'); 
    //... 
    $collection->getSelect() 
     ->join(array('oa'=>Mage::getSingleton('core/resource')->getTableName('sales_order_entity')), 'oa.parent_id=_table_order_increment_id.entity_id', array()) 
     ->joinLeft(array('oap'=>Mage::getSingleton('core/resource')->getTableName('sales_order_entity_varchar')), "oap.entity_id=oa.entity_id and oap.attribute_id=".$oapAttr->getId(), array('method'=>'value')) 
    ; 
    $this->setCollection($collection); 
    //... 
    return parent::_prepareCollection(); 
} 
protected function _prepareColumns() { 
    //... 
    $this->addColumn('method', array(
     'header' => $hlp->__('Payment Method'), 
     'index' => 'method', 
     'type' => 'options', 
     'options' => array(
      'authorizenet' => "Credit Card", 
      'paypal_standard' => "Paypal", 
      'ugiftcert'  => "Gift Certificate", 
      'free'   => "Free", 
     ) 
    )); 
    //... 
} 

答えて

関連する問題