Публикация

подписчиков: 2 Подписаться
0
Avatar

JSON API - некорректные данные в результате запроса

Добрый день!
С помощью api получаю список всех товаров, которые есть в МойСклад.(запрос: 'https://online.moysklad.ru/api/remap/1.1/entity/product')
При выводе полученной информации, товары в Мой Склад не соответствуют полученным в результате запроса. В чем может быть проблема?

Если я делаю запрос по адресу ('https://online.moysklad.ru/api/remap/1.1/entity/product'), то я должен получить список товаров, которые находятся в "Товары"->"Товары и услуги".  Я правильно понимаю?

Сергей Шпачинский

Войдите в службу, чтобы оставить комментарий.

Комментариев: 5

0
Avatar

Есть аккаунт (тестовый) в котором заполнены только "Товары и услуги"(7 позиций). Когда получаю по api эти товары, все данные соответствуют моему складу. Все ок.
Есть аккаунт в котором заполнены "Товары и услуги" (23 позиции). Так же в этом аккаунте заполнены такие пункты как "Оприходывания", "Списания", "Инвентаризация". Еще "Остатки" и "Обороты", но в этих пунктах я так понимаю просто статистика. Так же заполнены "Заказы поставщикам" и "Приемки". Когда я делаю запрос по api на получение всех товаров из этого аккаунта, мне возвращается 25 единиц. Такое впечатление что выборочно забирает товары из "Приемки" или из "Обороты". 
Пытался как можно детальней расписать, возможно я что то не правильно понимаю. Заранее спасибо за помощь. 

Сергей Шпачинский 0 проголосовали
Действия с комментариями Постоянная ссылка
0
Avatar

Зависят ли друг от друга сущности и документы в Моем Складе? Может я не до конца разобрался. Но при запросе на получение всех товаров должно же возвращать товары, которые находятся в "Товарах и услугах".

Сергей Шпачинский 0 проголосовали
Действия с комментариями Постоянная ссылка
0
Avatar

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


"Оприходывания", "Списания", "Инвентаризация" - это разные виды документов. В данном случае они все связаны с остатками товаров. В каждом документе указывается список позиций, каждая позиция - товар или услуга (из раздела"Товары и услуги").

"Остатки" и "Обороты" - да это уже данные на основе документов.

"Заказы поставщикам" и "Приемки" - документы, относящиеся к закупкам. Они также содержат список позиций, каждая из которых - товар или услуга.

В всех документах не может быть других товаров, которых нет в разделе "Товары и услуги". Запрос https://online.moysklad.ru/api/remap/1.1/entity/product возвращает список товаров и услуг, и результат запроса аналогичен разделу "Товары и услуги".

---

По вашему описанию вы создали 23 товара в разделе "Товары и услуги", а в запросе получаете 25.

Возможная причина может состоять в следующем. При создании документов при заполненнии позиции можно либо выбрать существующий товар, либо создать новый. Созданный товар также будет отображаться в разделе "Товары и услуги". Возможно при создании документов были также созданы товары и теперь их больше.

Еще одна причина может состоять в том, что товары могут находиться в различных группах и если вы просто переходите на вкладку Товары и услуги, то видите товары, находящиеся в корневой группе. Список групп находится слева.

Еще один момент - при запросе по АПИ существует лимит на выдачу списка сущностей. По умолчанию он равен 25. Так если у вас больше 25 товаров, запрос покажет только 25 из них. При этом в поле meta появляется поле nextHref, которое содержит запрос для получения следующей страницы (условно следующих 25 товаров). Также есть вомзожность увеличить лимит передав в запросе параметр limit: https://online.moysklad.ru/api/remap/1.1/entity/product?limit=100

---

В итоге результат запроса https://online.moysklad.ru/api/remap/1.1/entity/product должен быть аналогичен разделу "Товары и услуги". Посмотрите внимательно на раздел "Товары и услуги", сколько там действительно товаров, есть ли группы. И сравните с результатом запроса, обратив внимание на лимит.

Dtrufanov 0 проголосовали
Действия с комментариями Постоянная ссылка
0
Avatar

Все практически стало на свои места.

Загвоздка вот в чем, как Вы написали: "Во всех документах не может быть других товаров, которых нет в разделе "Товары и услуги"."  Во вкладке "Товары и услуги" у меня 23 позиции (комплекты, группы и услуги отсутствуют).   При создании документов, при заполнении позиций я могу выбирать товары и услуги, которых нету во вкладке "товары и услуги", но они фигурируют в большинстве других документах.

Этот аккаунт заполнял информацией не я, не могу сказать точно как добавлялись товары и вся остальная информация. Скорее всего импортировали информацию с другого аккаунта, может где то не правильно импортировали или добавили товары. В любом случае проверил еще на новом аккаунте, заполненном в ручную. Все отлично работает.

Спасибо за подробное описание.

Сергей Шпачинский 0 проголосовали
Действия с комментариями Постоянная ссылка