1b.app
Скопійоване посилання -

/api/v2/order/set/ Не знаходити Продукт за externalid

/api/v2/order/set/ Не знаходити Продукт за externalid
Такий зовнішній Id точно є, і він правильний, шукаючи у Продуктах самої OneBox.
Без масиву "products" процес створюється нормально.
Тут одне з двох:
1) Я не вірно передаю масив. Шість разів перевірив, чи помилки не бачу. Прохання перевірити вашим оком.
2) Це помилка у API OneBox.
Передаю скріншот із Тулз Хрому, масиву, який я передавав у order/set і Лог із сервера
[2022-07-08 13:50:18]
host: inox-trade.1b.app
url: /api/v2/order/set/
contentID: api-v2-order-set
point: /shop.starter.php
engine_sessionid: 1657277418_1065
data: Array (
[0] => Array (
[workflowid] => 2
[statusid] => 18
[name] => Швидке замовлення: Сергій2
[content] =>
Замовник: Сергій2
Телефон: 0504131799
Коментар: Тест!
Товар: Підставка під конвектомат ПП-1
Посилання на товар: https://inox-trade.com.ua/podstavka-pod-konvektomat-pp-1.html
Ціна: 6200.00 грн.
[client] => Array (
[userid] => 604
)
[products] => Array (
[0] => Array (
[pr
Оригінальне питання доступне на версії: ru

Відповіді:

Суханіцький Андрій ВАНБОКС КОРП
OneBox Corp - Інтегратор
Іменна ліцензія
Параметри для пошуку товару потрібно передавати в окремому масиві
08.07.2022, 17:43
Оригінальний коментар доступний на версії: ru

Суханіцький Андрій ВАНБОКС КОРП
OneBox Corp - Інтегратор
Іменна ліцензія
Вибачте, одразу не помітив, у вас заповнено
08.07.2022, 17:43
Оригінальний коментар доступний на версії: ru

Суханіцький Андрій ВАНБОКС КОРП
OneBox Corp - Інтегратор
Іменна ліцензія
Спробуйте додати параметр showerrorafterfind - вам покаже чи знайдений продукт, чи помилку
08.07.2022, 17:44
Оригінальний коментар доступний на версії: ru

Суханіцький Андрій ВАНБОКС КОРП
OneBox Corp - Інтегратор
Іменна ліцензія
І яку відповідь ви зараз отримуєте при надсиланні такого запиту?
08.07.2022, 17:47
Оригінальний коментар доступний на версії: ru

Суханіцький Андрій ВАНБОКС КОРП
OneBox Corp - Інтегратор
Іменна ліцензія
Згідно з документацією, параметри findbyArray - це параметри того продукту.
"id": "id",
"externalid": "externalid",
"articul": "articul",
"findbyArray": [
"externalid",
"articul"
],
У вашому випадку якось закривається масив відразу після параметра externalid
[productinfo] => Array (
[externalid] => 9454
)
08.07.2022, 17:51
Оригінальний коментар доступний на версії: ru

Суханіцький Андрій ВАНБОКС КОРП
OneBox Corp - Інтегратор
Іменна ліцензія
Тобто масив у вашому випадку на 1 товар повинен бути приблизно таким:
"productinfo": {
"externalid": "9454",
"findbyArray": [
"externalid",
],
"showerrorafterfind": true, //Це, щоб подивитись відповідь
},
08.07.2022, 17:54
Оригінальний коментар доступний на версії: ru

Дякую) Розібрався.
Масив "findbyArray" повинен знаходитися в об'єкті "productinfo". А він у мене знаходився вище.
"products" => [(object) [
"productinfo" => (object) [
"externalid" => $product_id,
"findbyArray" => [
"externalid"
],
]
]],
Але, тепер повертає помилку:
"Помилка оновлення елемента №0 за рахунком. Пошук не може вестися по полю externalid. У налаштуваннях OneBox вимкнено налаштування Унікальність поля Зовнішній ID (code1c)".
Що з цим робити?
08.07.2022, 22:49
Оригінальний коментар доступний на версії: ru

Суханіцький Андрій ВАНБОКС КОРП
OneBox Corp - Інтегратор
Іменна ліцензія

Ралло Сергій Олександрович
Відсутній писав/а:
Що з цим робити?

У помилці вказано причину "У налаштуваннях OneBox вимкнено налаштування Унікальність поля Зовнішній ID (code1c)"
Вам потрібно увімкнути унікальність поля Зовнішній ID тут
Якщо у вас дублюється значення цього поля для деяких продуктів, то при наступному збереженні у вас буде видавати помилку. Або якщо вам так потрібно, то ви не можете робити оновлення продуктів по цьому полю.
10.07.2022, 16:58
Оригінальний коментар доступний на версії: ru

Будь ласка, приєднуйтесь до діалогу. Якщо вам є що сказати – будь ласка, напишіть коментар. Для входу потрібний мобільний телефон та смс-код для ідентифікації. Увійти та написати коментар