При создании нового заказа на продажу с использованием веб-сервисов Dynamic NAV SOAP возникает ошибка ниже при попытке создать несколько позиций. Информация о заказе с одной позицией успешно добавлена.
Ошибка: строка продаж уже существует. Идентификационные поля и значения: Тип документа='Заказ',Номер документа='1111',Номер строки='10000'
Вот мой код, который я пробовал:
$client = new SoapClient($soapWsdl, $options);
// Create order header
$create = new stdClass();
$sq = new stdClass();
$sq->OrderType = "Order";
$sq->OrderId = "1111";
$create->SalesOrderWS = $sq;
$result = $client->create($create);
$key = $result->SalesOrderWS->Key;
$update = new stdClass();
$sq->Key = $key;
$sq->CustomerID = "9999";
$salesLineList = new stdClass();
$salesLine = new stdClass();
$salesLine->Order_Type = 'Order';
$salesLine->OrderID = '1111';
$salesLine->LineType = 'Item';
$salesLine->OrderLineNo = '10000';
$salesLineList->Sales_Order_Lines_WS[0] = $salesLine;
$sq->SalesOrderLinesWS = $salesLineList;
$salesLine = new stdClass();
$salesLine->Order_Type = 'Order';
$salesLine->OrderID = '1111';
$salesLine->LineType = 'Item';
$salesLine->OrderLineNo = '20000';
$salesLineList->Sales_Order_Lines_WS[1] = $salesLine;
$sq->SalesOrderLinesWS = $salesLineList;
$update->SalesOrderWS = $sq;
$result = $client->Update($update);
Конечно, что-то здесь упущено, но проблему выявить не удалось.
Спасибо.
Debug next
. Если это 2009 год, вам нужна Visual Studio для отладки. - person Mak Sim   schedule 01.08.2020