2012-06-27 13 views
5

Magento API V2を使用しています。Magento API V2 - API応答に追加の属性を追加する

salesOrderCreditmemoInfoと呼ぶと、クレジットメモの詳細と注文に関連付けられた商品のリストが返されます。

しかし、商品アイテムのリストには、product_typeという属性はありません。

この属性を追加するレスポンスを手動で編集する必要があります。

は私が編集を試してみました: アプリ\コード\コア\メイジ\セールス\モデル\注文\ Creditmemo \ Api.php

、交換:以下付き

public function info($creditmemoIncrementId) 
{ 
    ... 
    $result['items'] = array(); 
    foreach ($creditmemo->getAllItems() as $item) { 
     $result['items'][] = $this->_getAttributes($item, 'creditmemo_item'); 
    } 

- (基本的には)配列に追加の属性を追加:私は魔術師::ログ($結果)を行うと

public function info($creditmemoIncrementId) 
    { 
     ... 
    $result['items'] = array(); 
    foreach ($creditmemo->getAllItems() as $item) { 
      $product_type = '1'; //test value to check if works 
      $attribs = $this->_getAttributes($item, 'creditmemo_item'); 
      $attribs['product_type'] = $product_type; 

      $result['items'][] = $attribs; 
     } 

、余分な属性がcorrec追加されているようですアレイに接続します。 (この関数は呼び出されていることも示しています) しかし、実際のAPIレスポンスには影響しません。

私は完全に間違った場所を探していますか、更新する必要がある何か他にありますか?

答えて

7

あなたはSOAP V2を使用していたので、あなたは出力を取得するためにwsdl.xmlを更新する必要があります。

あなたのケースでは、product_typeサーバーのリフレッシュキャッシュです。 /tmp新しいwsdl.xmlが既に更新されています。 システム - >キャッシュ管理すべてのキャッシュをクリアすることを忘れないでください。

+4

ありがとうございました。 – elMarquis

+0

@Josuaこの問題の解決策をご提案ください。http://stackoverflow.com/questions/19811307/get-simple-product-sku-and-qty-using-salesorderinfo-of-soap -api-in-magento – Muk

+0

@Muk roger that –

関連する問題