Загрузка отчетов комиссионеров из Вайлдберриз и ОЗОН в УТ 11 по API

0. 118 07.06.21 23:16 Сейчас в теме
Расширения для загрузки отчетов комиссионеров данными о продажах с маркетплейсов Wildberries и OZON по API.
Расширения позволяют:
1) Заполнить отчет комиссионера данными о продажах из сервиса;
2) Создать документ оказания услуг по сборке, логистике;
3) Создать документ "Взаимозачет задолженности", которым задолженность по оказанным услугам переносится на отчет комиссионера.

Перейти к публикации

Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. kon_alex155 30.06.21 17:00 Сейчас в теме
Здравствуйте ! при добавлении расширения в КА 2 ошибка
Прикрепленные файлы:
4. asdes 118 04.07.21 15:58 Сейчас в теме
(1) Исправил данную ошибку.
2. user842329 02.07.21 18:19 Сейчас в теме
Добрый день. У Озон изменился формат отчета, будет ли обновление загрузки?
3. asdes 118 02.07.21 20:18 Сейчас в теме
5. nigspb 06.07.21 13:22 Сейчас в теме
Можно ли купить Вашу обработку за деньги?
Возможны ли доработки?
Настройку произвести сможете?
6. asdes 118 06.07.21 13:38 Сейчас в теме
(5) Отправил личным сообщением.
45. ZeRo-Net 16.09.21 10:37 Сейчас в теме
(6) Тоже интересует данный вопрос. Нужен только обмен с озоном. ЛС почему то не отправляются..
46. asdes 118 16.09.21 10:47 Сейчас в теме
(45) Ответил личным сообщением.
7. Maxanamoon 2 08.07.21 14:24 Сейчас в теме
Добрый день. Код открытый? Оба расширения одновременно работают?
8. asdes 118 08.07.21 14:32 Сейчас в теме
(7) Код открытый, расширения одновременно работают.
9. asdes 118 10.07.21 20:13 Сейчас в теме
10. STEPEVG 30.07.21 17:32 Сейчас в теме
Здравствуйте, для УНФ подходит?
11. asdes 118 30.07.21 17:50 Сейчас в теме
12. kstprog 06.08.21 09:39 Сейчас в теме
Здравствуйте, планируется ли поддержка яндекс.маркет?
13. asdes 118 06.08.21 09:43 Сейчас в теме
14. xard 10.08.21 15:44 Сейчас в теме
Здравствуйте при загрузке данных из OZON выскакивает ошибка 400 - Ошибка запроса на сервер
{"error":{"code":"BAD_REQUEST","message":"Invalid request payload","data":[{"name":"posting_number","code":"EMPTY","value":"","message":""}]}}
15. asdes 118 10.08.21 15:46 Сейчас в теме
(14) Внес исправление в версии расширения 0.0.1.4.
16. Malerid 21.08.21 15:36 Сейчас в теме
Возможно доработка для ERP 2.5.6.124?
17. asdes 118 23.08.21 09:10 Сейчас в теме
18. -Almi- 120 25.08.21 09:06 Сейчас в теме
Добрый день.
Управление торговлей, редакция 11 (11.4.13.243) Расширение для загрузки отчетов комиссионеров из ОЗОН

При загрузке отчетов комиссионеров вылетает ошибка:

Значение не является значением объектного типа (СуммаЗаказа)
{Озон Обработка.Озон_ОбменOZON.Форма.Форма.Форма(188)}: НовыйТовар.СуммаЗаказа = НовыйТовар.СуммаЗаказа + СуммаЗаказа;
{Озон Обработка.Озон_ОбменOZON.Форма.Форма.Форма(31)}: ЗагрузитьОтчетыКомиссионераНаСервере();

Отладчик показал что НовыйТовары = Неопределено, т.е. небыло захода в условие
Если СтрокаМассива.accruals_for_sale = 0 Тогда, так как СтрокаМассива.accruals_for_sale = -216 в моём случае.

Как-то можно пофиксить, спасибо ?

P.S. обработка наткнулась на строку operation_type = OperationCorrectionSeller где не ноль, а минусовое значение – и всё посыпалось. Как-то сыровато, не находите ?
21. asdes 118 01.09.21 12:25 Сейчас в теме
(18)
OperationCorrectionSeller

Внес исправление по данной ошибке. Исправление в ситуации, когда показатель accruals_for_sale отрицательный и при этом нет товаров, теперь просто пропускаются.
P.S. в обработке в коде у меня нет строки "operation_type = OperationCorrectionSeller".
24. -Almi- 120 01.09.21 12:39 Сейчас в теме
(21)
Спасибо.

Советую не делать запросы в цикле, а воспользоваться методом v2/posting/fbo/list – уж очень долго вы получаете отправления + Озон забанит за DoS-атаку )
Обращение к /v3/finance/transaction/list у вас получает лишь 10000 строк, а если у меня больше – что тогда миллиард строк задать, можно ведь в цикл завернуть ?

P.S. Конечно нет ), я вам подсказал в каком случае вылетела ошибка.
У вас НовыйТовар создается в условии, а за рамками данного условия идет обращение к нему – это же не гуд ?
25. asdes 118 01.09.21 12:50 Сейчас в теме
(24) Как Вы видите использование данного метода?

В данный момент вызывается один глобальный запрос /v3/finance/transaction/list, который не содержит в себе детальную информацию по товарам. Далее приходится идти по результату этого запроса и получать детальную информацию по товарам запросами /v2/posting/fbo/get и /v2/product/info.

Работает действительно это медленно. С техподдержкой ОЗОН данное решение обсуждалось.
Куда лучше ситуация обстоит с сервисом Вайлдбериз, у них запрос получает точно такие же данные, как если бы скачивать их в файл Эксель с сервиса ВБ со всей необходимой информацией.
26. -Almi- 120 01.09.21 12:53 Сейчас в теме
(25)
/v2/posting/fbo/get

не нужно его использовать ), выше вам метод указал, зачем в цикле делать запрос к серваку ?

Про WB речь не идет, да через их API легче получить текущие данные, но мы обсуждаем API Озона.
Не нужно усложнять обработку мелкими запросами и напрягать сервер, ведь есть метод рабочий.
27. -Almi- 120 01.09.21 13:27 Сейчас в теме
(25)
Как Вы видите использование данного метода?


Похоже, вам придется показать на конкретном примере.
Хорошо, возможно это чему-либо вас научит, в плане кода и работы с АПИ.

P.S. Только не забудьте снять шляпу, если пример окажется рабочим )
28. -Almi- 120 01.09.21 14:45 Сейчас в теме
(27)
P.S. Только не забудьте снять шляпу, если пример окажется рабочим )


Пример направил в личку
29. asdes 118 01.09.21 15:16 Сейчас в теме
(28) Посмотрел, к сожалению в Вашем алгоритме может возникнуть ситуация, когда в ответе запроса /v2/posting/fbo/list не будет информации об отправлении, так как оно может не попасть в диапазон выборки результата запроса /v3/finance/transaction/list. И в таком случае, придется обращаться к методу /v2/posting/fbo/get.

Пример. В запросах /v3/finance/transaction/list и /v2/posting/fbo/list указан период 1.7.2021-31.7.2021, а в результате запроса /v3/finance/transaction/list может попасться отправление с датой 20.06.2021.

Мой вариант реализации, к сожалению, медленный, но запрашивает только необходимую информацию.

Ваш вариант будет чуть быстрее, запрашивает больше информации, требует ее обработки и поиск по ней.

Пока не вижу существенной необходимости в изменении алгоритма.
30. -Almi- 120 01.09.21 15:27 Сейчас в теме
(29)
Если бы, вы внимательно посмотрели, то заметили что выборка расширена до начала первого отправления и даже это указано в комментарии.
И не чуть быстрее, а в разы, более чем в 10 раз ) Но, это все не важно. Важно то, что вам указываю на ошибки, вы не слышите. Показываю готовое рабочее решение, вы пишите о том что она ошибочно.
Вы не готовы улучшать ваше решение и исправлять ошибки – следовательно ставлю вам минус за данную поделку


P.S. Вообще, категорически не советую людям пользоваться данным решением, что применено у вас на данный момент.
Во-первых, есть ошибки, их описал выше. Во-вторых, это очень медленно и высока нагрузка на сервер Озона.
Вот более профессиональное решение для WB: https://infostart.ru/public/1166641/
Полагаю автор вскоре сделает и для Озона.
32. asdes 118 09.09.21 12:25 Сейчас в теме
(30) Я посмотрел вскольз Ваш код.
Расширение выборки до первого отправления не исключает ситуации, что какое-нибудь отправление в него не попадет.
Если внимательно ознакомиться с методом /v3/finance/transaction/list в описании API (https://docs.ozon.ru/api/seller/#operation/FinanceAPI_FinanceTransactionListV3), то можно узнать, что данный метод не возвращает дату отправления, т.е. невозможно точно определить, какую дату начала выборки нужно использовать в методе /v2/posting/fbo/list.

Приведенную Вами ошибку я проработал. С тем, что это решение медленное я согласен, но оно имеет место быть. Если Вас не устраивает данное решение, не пользуйтесь, опубликуйте свое.

Данное расширение выставлено за СМ, а не за деньги. Что и как развивать в данном решении, остается на усмотрение автора.

Просьба вести конструктивный диалог и не переходить на личности.
user1140098; +1 Ответить
34. -Almi- 120 09.09.21 12:43 Сейчас в теме
(32)
Расширение выборки до первого отправления не исключает ситуации, что какое-нибудь отправление в него не попадет.

Как раз исключает ), отправление не может быть ранее формирования заказа (order_date).
41. asdes 118 15.09.21 10:43 Сейчас в теме
(34) order_date - Дата принятия отправления в обработку, а не дата самого отправления. "отправление не может быть ранее формирования заказа" - это лишь Ваш вывод, но он ничем не обоснован. В документации у Озон я не нашел разъяснения, чем дата принятия отправления отличается (или не отличается) от даты самого отправления.
35. -Almi- 120 09.09.21 12:43 Сейчас в теме
(32)
то можно узнать, что данный метод не возвращает дату отправления

Это и не требуется, вся информация содержится в транзакциях метода /v3/finance/transaction/list
36. -Almi- 120 09.09.21 12:46 Сейчас в теме
(32)
Просьба вести конструктивный диалог и не переходить на личности.

Позвольте, я не переходил на личности – о чем это вы ?
37. -Almi- 120 09.09.21 12:49 Сейчас в теме
(32)
Если Вас не устраивает данное решение, не пользуйтесь, опубликуйте свое.

Не пользуюсь и никому не советую пользоваться.
Вот более достойное решение: https://infostart.ru/public/1333297/
59. tanner 21.10.21 10:24 Сейчас в теме
(37) "Вот более достойное решение: https://infostart.ru/public/1333297/". Подскажите пжл. там код открытый?
38. -Almi- 120 09.09.21 13:03 Сейчас в теме
(32)
Вы поймите меня правильно, вы пишите, что вас все устраивает – и так сойдет.
Но, от ваших действий пострадают другие люди. Так бездумно досить сервер Озона ни к чему хорошему не приведет, завтра они введут ограничения на количество обращений по времени, а если не поможет переведут в платный режим АПИ – и все из-за неоптимального ПО (уже проходили и не раз, Мосбиржа например).

P.S. еще куда не шло, если бы вы один ей пользовались, так вы же её в массы распространяете)
40. asdes 118 15.09.21 10:34 Сейчас в теме
(38) Тут проблема уже не в моем решении, а на стороне сервиса OZON. Я писал им в тех. поддержку, чтобы сделали один запрос к их API и он получал бы всю ту же информацию, которую можно получить, скачав экселевский файл по позаказному отчету реализации в сервисе Озона.
Т.е. в их сервисе получается такой недочет: почему вручную скачать в файл всю необходимую информацию можно, а одним запросом к их АПИ ее получить нельзя?
Может, когда их служба тех. поддержки увидит постоянно растущее число обращений к их сервису, то возможно решит данную проблему и в таком случае мне уже придется переделать мой алгоритм на более оптимальный.
43. -Almi- 120 15.09.21 10:57 Сейчас в теме
(40)
Добрый день.
Хорошо, понял ваши доводы, моё мнение так делать нельзя и не важно что апи кривое.
Не держите обиды, отрицательную оценку снял.
44. asdes 118 15.09.21 11:07 Сейчас в теме
(43) Спасибо! Обиды не держу.
19. user989540 31.08.21 13:41 Сейчас в теме
Здравствуйте, очень крутое расширение, пользуюсь с удовольствием! Скажите, хранение не передается по API WB?
22. asdes 118 01.09.21 12:28 Сейчас в теме
(19) На данный момент в расширении нет алгоритмов по обмену остатками товаров и самими товарами. Обмен товарами пока планируется, но сроки не определены.
20. dronbi4 01.09.21 10:42 Сейчас в теме
Здравствуйте, код открыт?
23. asdes 118 01.09.21 12:29 Сейчас в теме
31. bestbrands 02.09.21 12:24 Сейчас в теме
Добрый день. Это для FBS или FBO?
33. asdes 118 09.09.21 12:31 Сейчас в теме
(31) Это для FBO. Когда продажи ведутся со склада маркетплейса.
39. zexpress 14.09.21 17:43 Сейчас в теме
Добрый день. Возможно доработать чтобы была возможность сопоставления товара по Доп характеристике OzoneID ? (можно платно - пишите в личку)
42. asdes 118 15.09.21 10:47 Сейчас в теме
(39) Да, возможность доработки есть
47. xard 18.09.21 16:37 Сейчас в теме
Здравствуйте, вылетела ошибка,что может быть? 400 - Ошибка запроса на сервер
{"code":3,"message":"invalid PostingRequest.PostingNumber: value length must be at least 1 bytes","details":[]}
48. asdes 118 18.09.21 20:52 Сейчас в теме
(47) Есть понимание, на каком именно отправлении возникает ошибка. И чем это отправление отличается от остальных?
49. xard 20.09.21 09:45 Сейчас в теме
Честно говоря нет. Есть возможность доработки?
50. asdes 118 20.09.21 10:19 Сейчас в теме
(49) возможность доработки есть
51. user1356262 20.09.21 16:27 Сейчас в теме
Добрый день, подскажите из за чего может быть такая ошибка при подключении расширения?
Прикрепленные файлы:
52. asdes 118 21.09.21 00:15 Сейчас в теме
(51) Такая ошибка может выйти, если конфигурация базы устарела. Обновление до последних релизов должно исправить данную ошибку.
53. asdes 118 21.09.21 01:29 Сейчас в теме
Внес изменение в расширение по ОЗОН, в частности обработку ситуаций потери товаров на складах ОЗОН. Версия 0.0.1.6.
61. user1356262 27.10.21 09:40 Сейчас в теме
(53) а как скачать обновленную версию?
62. asdes 118 27.10.21 10:59 Сейчас в теме
(61) по кнопке "Скачать" в публикации напротив нужного расширения
63. user1356262 27.10.21 11:32 Сейчас в теме
(62) получается за каждое обновление нужно стартмани платить?
54. user1564987 23.09.21 18:46 Сейчас в теме
Добрый день, расширение дает ошибку.
Прикрепленные файлы:
55. asdes 118 26.09.21 06:40 Сейчас в теме
(54) При возникновении такой ошибки необходимо обновить конфигурацию до последнего релиза
56. user1564987 27.09.21 11:28 Сейчас в теме
57. asdes 118 27.09.21 12:43 Сейчас в теме
(56) Данная ошибка выходит, потому что указан флаг "По результатам инвентаризации" на форме документа на вкладке "Основное". Предполагается, что загрузка данных из их сервиса - это всегда не по результатам инвентаризации а по продажам/возвратам.
58. ScarFace 20.10.21 21:40 Сейчас в теме
заполняются ли цены комитента в отчете комиссионера. И если на один товар будет несколько цен, что вы делаете?
60. asdes 118 21.10.21 11:48 Сейчас в теме
(58) Вид цены берется из соглашения в отчете комиссионера и по нему цены заполняются.
Оставьте свое сообщение
Вопросы с вознаграждением
Вакансии
Программист, аналитик, эксперт 1С
Санкт-Петербург
По совместительству

Программист 1С
Москва
зарплата от 150 000 руб. до 200 000 руб.
Полный день

Ведущий разработчик 1С
Москва
зарплата от 250 000 руб.
Полный день

Руководитель проектов 1С
Москва
зарплата от 200 000 руб.
Полный день

Программист 1С
Москва
зарплата от 150 000 руб.
Полный день