Техническое задание: Механизм миграции данных инфоблоков Битрикс24
Цель проекта
Разработать автоматизированное решение для копирования наполненных инфоблоков со всеми связанными данными между двумя коробочными версиями Битрикс24 с сохранением целостности структуры и контента.
Исходные условия
- Имеется два независимых сайта на платформе Битрикс24.
- На сайте-источнике присутствует наполненный инфоблок со сложной структурой.
- В инфоблоке активирован документооборот, существуют версии элементов с историей изменений.
- Элементы содержат текстовый контент с картинками из медиатеки, тегами и привязаны к иерархическим разделам.
Основные функциональные требования
1. Подготовка и настройка
- Создание на сайте-приемнике служебной веб-страницы (компонента) для управления процессом миграции.
- Возможность указания ID инфоблока-приемника или создания нового инфоблока с аналогичными свойствами.
- Настройка подключения к сайту-источнику: указание его адреса и ID экспортируемого инфоблока.
- Организация безопасного доступа к данным источника через REST API (скрипт или ключ авторизации).
2. Процесс переноса данных
- Структура: Полное копирование дерева разделов и подразделов с сохранением вложенности.
- Элементы: Перенос всех элементов инфоблока с основным контентом, привязкой к разделам и тегами.
- История: В идеальном сценарии - сохранение версий элементов (истории изменений).
- Медиафайлы: Выгрузка картинок, встроенных в тексты (из медиатеки), и их загрузка на сайт-приемник с автоматическим обновлением ссылок в контенте.
- Валидация: Проверка соответствия полей и свойств инфоблоков на source и destination. Ведение подробного лога процесса для контроля и отладки.
- Отказоустойчивость: Пошаговая обработка данных с учетом лимитов API для предотвращения блокировок.
3. Завершение работы
- Формирование итогового отчета о результатах синхронизации.
- Информирование пользователя об успешном завершении операции.
Технические особенности
- Использование REST API Битрикс24 для двустороннего взаимодействия.
- Учет отсутствия символьных кодов у элементов/разделов. Для идентификации и проверки полноты переноса использовать комбинацию названий, дат создания и других уникальных параметров.
- Решение должно быть реализовано в рамках экосистемы Битрикс24.