Size: a a a

2021 September 26

YV

Yushkevich Vitaly in Laravel Pro
А что именно непонятного?

Поднимаешь кафку. 1с пишет в кафку (там есть нюансы, поэтому мы за пару дней написали сервис на го под 1с, так оказалось быстрее и надежнее).
Дальше делаешь консьюмеры и продюсеры.
Консьюмер - консольная команда в виде демона.  Он вычитывает все, что пишет 1с в кафку
Продюсер - листенер на нужные события (например создание заказа).  Он пишет данные в кафку для 1с
Это все пишет по разным топикам
источник

YV

Yushkevich Vitaly in Laravel Pro
Ты сформулируй конкретные вопросы по этой схеме. Я подскажу.
источник

YV

Yushkevich Vitaly in Laravel Pro
Какие именно? При условии, что у тебя под контролем место, которое создаёт csv.

С таким же успехом можно сказать «а в xml схема данных может поменяться».
источник

OA

Oleg Abramov in Laravel Pro
Сразу скажу что не самый эфктивный , но самый оптимальный метод - это xml + sftp загрузка файла на сервак. А потом по крону приходит бэк процесс и забирает файл вкачивая его  в бд
источник

OA

Oleg Abramov in Laravel Pro
Этот способ лучше, но требует знаний со стороны 1с и  не  только
источник

YV

Yushkevich Vitaly in Laravel Pro
Ага. А потом ты идёшь и идёшь, где именно ошибка в файле на 10 мб и почему импорт перестал работать. Но так проще, да :)
источник

LY

Lyonya Yakovlev in Laravel Pro
Задача состоит в:
1. Возможность выгрузки всех товарных позиций
2. Синхронизация сайта и 1С (появляется заказ на сайте - отправлять данные о нём в 1С, ну и т.д.). Я планировал делать через регламентные задания вообще эту процедуру, хотя понимаю что это не является синхронизацией, по факту
3. При повторной выгрузке на сайт не выгружать все позиции, а только новые/изменённые (тут идей было мало, сделать что-то типо хэша.. В общем тут я тоже не знаю как поступить правильно)
источник

OA

Oleg Abramov in Laravel Pro
Разделитель в csv может быть разный и ещё парсер в php стандартный иногда делит через жопу, сам првоерял.
источник

YV

Yushkevich Vitaly in Laravel Pro
Мне казалось, что любой способ требует знаний. Иначе может получится плохое решение :)
источник

OA

Oleg Abramov in Laravel Pro
С таким успехом можно заюзать и amq а не какую или rmq.
источник

YV

Yushkevich Vitaly in Laravel Pro
Ага. Ещё и кодировка. Но ты когда делаешь импорт из csv - знаешь его и настраиваешь это. Дальше он не должен меняться
источник

YV

Yushkevich Vitaly in Laravel Pro
Нет, не с таким же успехом. Там другие нюансы возникают.
источник

OA

Oleg Abramov in Laravel Pro
С этим будет гемор. 100% csv лучше не юзать. Через месяц в ненужное поле попадёт че-то небо и искать это будет ад
источник

И

Игорь in Laravel Pro
SOAP - это вроде XML поверх HTTP. А ты в сообщениях советуешь xml.
источник

LY

Lyonya Yakovlev in Laravel Pro
И т.к. я планировал делать не через веб-сервис, обратную выгрузку в 1С я планировал делать через регламентные задания, мол, раз в 15 минут  например слать запрос на api, и если есть измененные товары - забирать их с сайта.
Хотя из того что я читал, корректнее всего сделать через веб-сервис?
источник

YV

Yushkevich Vitaly in Laravel Pro
Мой опыт мне говорит другое.
источник

OA

Oleg Abramov in Laravel Pro
Соап требует сервака и сервиса и не тоько , там куча гемора в отличии от чистого xml
источник

OA

Oleg Abramov in Laravel Pro
Банально текст с \n прилетит и пока всей структуре. 1с Ники не сильно будут париться и паковать спецсимволы
источник

YV

Yushkevich Vitaly in Laravel Pro
Странный подход. «В csv через месяц может попасть что угодно в это поле и побьётся csv». А в xml - нет.

С таким же подходом продолжи - через полгода 1с может начать слать запросы на другие endpoint и вообще все перестанет работать. Поэтому не делайте через http сервисы интеграцию.

Ну камон.
источник

OA

Oleg Abramov in Laravel Pro
В xml есть экран, а в csv нет
источник