Задать вопрос

Какой должен быть алгоритм синхронизации с 1С?

Здравствуйте!

Стоит задача реализовать синхронизацию товаров из 1С для сохранения в базу данных сайта. Сайт на PHP самописный.
Почитал документацию.

Но никак не пойму как именно реализовать сохранение.

Вариант 1.
1. Полученный от 1С xml-файл сохранить во временной папке на сервере
2. Скриптом сразу его распарсить
3. Пройти в цикле и сохранить в БД
4. Переместить изображения в нужную папку на сервере
5. Удалить xml-файл и изображения из временной папки
6. Ответить success и по новой для следующего файла

Вариант 2.
1. Полученный от 1С xml-файл сохранить во временной папке на сервере
2. Новые данные от 1С дописывать в существующий xml-файл
3. Когда все данные будут получены, ответить success и только потом обрабатывать xml?

И не смог найти в документации как потом делать актуализацию только по ценам и остаткам, если товары уже есть в базе данных сайта?

Буду очень благодарен если опишите правильный алгоритм действий.

Заранее спасибо!
  • Вопрос задан
  • 702 просмотра
Подписаться 3 Простой 6 комментариев
Пригласить эксперта
Ответы на вопрос 3
@resolution07
Механизм обмена товарами и заказами, а так же остатками и ценами есть в типовом обмене с Битрикс. Поищите в сети документацию к Битрикс. Там весть алгоритм от начала до конца расписан + есть схема. Может вам это поможет
Ответ написан
Комментировать
borisdenis
@borisdenis
Ленив и вреден...
Вариант 2 точно не стоит использовать, так как:
1. Вы ответили success, а значит данные успешно получены, а потом вдруг при обработке файла поняли, что он поломан...
2. Если всё собирать в один файл, то его размер может вырасти до неприличия и парсер при его обработке умрет, а вы уже ответили success и попробуй пойми какая част данных в базе, а какая не успела обработаться...
Ответ написан
Комментировать
@dimas103
Варианты от простого к сложному или на вкус и цвет
1 в 1с использовать обмен с сайтом только для регистрации событий для обмена. Написать свой обмен в 1с и соответственно на стороне сайта
2 сменить платформу на Битрикс (в нем обмен из коробки с 1с встроен)
3 взять Битрикс настроить с ним обмен и посмотреть что он возвращает и сделать по аналогии на своем сайте
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы