2012-01-26 11 views
3

このQ &(http://stackoverflow.com)を使用してMagento Admin Sales Orderグリッドに顧客の電子メールアドレスを入力する方法が見つかりました。/question/6416864/how-to-add-customers-to-order-grid-in-magento-1-4/6906254#6906254)by ベン・インカニそれは素晴らしい作品です。Magento - Magento 1.5.1.0で注文グリッドに情報を配送する方法

私の質問は:このメソッドを使用して、私は情報(アドレス状態ジップ)に船を追加することができますか?

私は2つのバージョン(仕事のその種を)やってみましたが、私は少しこだわっています完全にはそうは動作しません...

これは、顧客の電子メールのために動作するコードです:

$collection->getSelect()->joinLeft(array('sfo'=>'sales_flat_order'),'sfo.entity_id=main_table.entity_id',array('sfo.customer_email', 'sfo.shipping_description')); 

今、私はこれを試してみました情報にシップを持つデータベーステーブルに行くことにしようとしたとき:

$collection->getSelect()->joinLeft(array('sfoa'=>'sales_flat_order_address'),'sfoa.parent_id=sfo.entity_id',array('sfoa.postcode')); 

これがERを返します。 RORメッセージのログ:

:5:{I:0; S:68: "アイテムと同じIDを持つ(Mage_Sales_Model_Order) "10860" が既に存在する"; I:1; S:5104:」 #0(最も密接にオリジナルの顧客の電子メールコードを次の)このコードをしようと

$collection->getSelect()->joinLeft(array('sfoa'=>'sales_flat_order_address'),'sfoa.entity_id=main_table.entity_id',array('sfoa.postcode')); 

は、私は人口の列で見ることができますグリッドを生成します。しかし、その列の値はであり、正しい値はです。郵便番号 - 私は何値を引っ張っているのか把握できませんか?

私の問題の1つは、main_table.entity_idが(私は推測していますが)何を指​​しているのか正確には分かりません。

とにかく私は近いと思うし、誰かがこの方法でどのように情報をうまく入手できるか答えたら、私は永遠に感謝しています! (原因2つの問題のあるエラーに)誰

+0

を動作させることができ、私はあなたの最後のコードスニペットを以下の、そして_prepareColumnsにAddColumn関数呼び出しを追加することにより、作業の郵便番号を取得することができました。ブロックの小さなスニペット:https://gist.github.com/1680842 –

+0

Dan。私の推測では、[私用の]そのようにはうまくいかない理由は、発送情報と請求情報([親ID])の両方の注文情報が重複しているためです。私は実際に答えを見つけましたが、私の低い評判のために、私はそれを投稿してから8時間後まで私自身の質問に答えることができません。私は今夜​​か明日のいずれかの後に私のソリューションを投稿します。あなたの入力(とコードスニペット)をありがとう! – Geoff

答えて

関連する問題