Заметки
Как добавить товарные позиции в сделку через REST без удаления старых
Для добавления одной позиции используйте crm.item.productrow.add. Так не нужно читать весь набор и отправлять его обратно через legacy-метод set.
BX24.callMethod('crm.item.productrow.add', {
fields: {
ownerType: 'D',
ownerId: 123,
productId: 456,
price: 1000,
quantity: 1
}
}, function (result) {
if (result.error()) {
console.error(result.error());
return;
}
console.log(result.data());
}); Выполняйте после инициализации BX24.js. 123 — сделка, 456 — существующий товар или вариация. Метод добавляет новую строку; повторный успешный вызов может добавить ещё одну.
Если нужно увеличить количество уже существующей строки, получите её ID и выполните обновление. Совпадения одного productId может быть недостаточно: у одинакового товара бывают разные цены и условия.