0

これはどういう意味ですか?

プログラムで注文用の貨物を作成しようとすると、以下にコピーしたようにエラーがスローされます。

私のコード:

if (!$order->canShip()) {
           echo 'can not ship this order';
           return false;
        }

$itemQty =  $order->getItemsCollection()->count();
$shipment = Mage::getModel('sales/service_order', $order)
                        ->prepareShipment($itemQty);

 $shipmentId = $shipment->create($order->getIncrementId(), $itemQty, 'Shipment created through ShipMailInvoice', true, true);


エラーは次のとおりです。

   <b>Fatal error</b>:  Uncaught exception 'Varien_Exception' with message 'Invalid method     Mage_Sales_Model_Order_Shipment::create(Array
(
[0] =&gt; $orderId
[1] =&gt; 8
[2] =&gt; Royal mail Shipment
[3] =&gt; 1
[4] =&gt; 1
)
)' 
in /home/toesocks/public_html/lib/Varien/Object.php:569
Stack trace:
#0 /home/toesocks/public_html/product_scanning/v2/functions/orderDispatch.php(82):     Varien_Object-&gt;__call('create', Array)
#1 /home/toesocks/public_html/product_scanning/v2/functions/orderDispatch.php(82):     Mage_Sales_Model_Order_Shipment-&gt;create('15300007141', 8, 'Shipment create...', true, true)
#2 {main}
  thrown in <b>/home/toesocks/public_html/lib/Varien/Object.php</b> on line <b>569</b><br     />

誰かがこれが何を意味するのか、なぜこのエラーが発生するのか説明してもらえますか?

よろしく
ジェイ

4

1 に答える 1

0

PHPエラーが発生しますが、必ずしもMagentoエラーではありません。 Mage_Sales_Model_Order_Shipment方法はありませんcreate()。あなたは存在しない何かを求めています。

Mage_Sales_Model_Order_Shipment_Api::create()新しい貨物を作成する方法のアイデアを得るために見てみましょう。

参照:Magentoで、注文に出荷とトラック番号を追加する方法

で出荷を作成してMage_Sales_Model_Order_Shipment::addItem()から、で「作成」しMage_Sales_Model_Order_Shipment::save()ます。

于 2013-03-28T00:27:37.460 に答える