Я знаю, что есть способ программно выставлять счета-фактуры, отправлять и устанавливать состояние заказа (http://www.magentocommerce.com/boards/viewthread/74072/),, но на самом деле мне нужно углубиться еще глубже до уровня позиции заказа. У нас есть ситуация, когда в зависимости от типа элемента, два разных элемента могут быть обработаны в двух разных местах (из одного и того же заказа) .Я могу зайти в бэкэнд Magento и «отправить» один элемент без «доставки» другого и добавить комментарии к этому. но я ищу способ сделать это программно. Заранее спасибо за помощь!
Обновление:
Вот код, который я использовал для достижения этой цели:
$client = new SoapClient('http://somesite.domain/magento/index.php/api/?wsdl');
$session = $client->login('username', 'password');
function extract_item_id($items, $sku ){
foreach($items as $item ){
if ($item["sku"]==$sku) {
return $item["item_id"];
}
}
}
$orderNum = "200000052";
$oderInfo = $client->call($session, "sales_order.info", $orderNum );
$item_id = extract_item_id($oderInfo["items"], "someSKU") ;
$itemsQty = array( $item_id => "1" );
$shipment = array(
$orderNum,
$itemsQty,
"Comment associated with item shipped.",
true,
true
);
var_dump($shipment);
$nship = $client->call($session, 'sales_order_shipment.create', $shipment);