Добавление группы товаров в заказ клиента в Netsuite с использованием SuiteTalk и PHP

Я пытаюсь добавить заказы на продажу для товаров типа "Группа товаров", используя SuiteTalk через PHP Toolkit.

Если товар относится к другим типам, например, "Товарно-материальные запасы, Товарно-материальные запасы", заказы добавляются без проблем.

Когда элемент имеет тип "Группа элементов", я получаю следующую ошибку:

Код: INVALID_KEY_OR_REF Сообщение: недействительный ссылочный код 1 цены для позиции NNNNNN. Тип: ОШИБКА

Где NNNNN - внутренний идентификатор дочернего инвентарного запаса, подключенного к этой группе товарных единиц

Вот как я устанавливаю свой SalesOrderItem:

$nsItem = new SalesOrderItem();

$nsItem->item = new RecordRef();
$nsItem->item->internalId = $orderItem->product->foreignId;
$nsItem->item->type = $orderItem->product->itemType;
$nsItem->item->typeSpecified = true;

$nsItem->price = new RecordRef();
$nsItem->price->type = "priceLevel";
$nsItem->price->internalId = "-1"; // the default custom price level
$nsItem->rate = $orderItem->amounts->price;

$nsItem->quantity = $orderItem->qty;

Какие-нибудь мысли?

ОБНОВИТЬ:

Я сделал обходной путь - я проверяю каждую позицию заказа на продажу по ее типу, и если это "Группа товаров", я заполняю заказ на продажу товарами из этой группы. Это немного медленнее, но работает.

1 ответ

Если вы столкнетесь с этой ошибкой, вы заметите, что идентификатор элемента, который вызывает ошибку, не является тем же элементом, который указан на уровне заголовка счета-фактуры / заказа на продажу. Проблема здесь - "Базовая цена" (или любой другой уровень цен, внутренний идентификатор 1) не определено для этого элемента компонента группы элементов.

Если указать "Базовую цену", эта ошибка исчезнет!

Другие вопросы по тегам