Перейти к основному содержимому
Версия: v3.1.1

Синхронизация БД

Инструмент Синхронизация БД предназначен для поддержания целостности данных между стандартными таблицами OpenCart и расширенными таблицами модуля Attributipro.

Инструмент Синхронизация БД
Интерфейс инструмента синхронизации

Зачем это нужно?

Модуль Attributipro использует собственные таблицы в базе данных (с суффиксом _pro) для хранения дополнительных метаданных: иконок, изображений, подсказок (tooltips) и связей с единицами измерения для каждого атрибута.

Когда вы добавляете атрибуты через интерфейс модуля, данные записываются в обе таблицы автоматически. Однако существуют ситуации, когда эта связь нарушается.

Проблема

Если атрибуты были добавлены или изменены в обход модуля (например, сторонним импортом или напрямую в БД), расширенные метаданные могут не создаться. В норме модуль использует систему событий (Events) OpenCart для автоматической синхронизации, но если соответствующие события отключены или не поддерживаются сторонним инструментом, связь нарушается.

Ключевые события:

  • admin/model/catalog/attribute/addAttribute/after
  • admin/model/catalog/attribute/editAttribute/after
  • admin/model/catalog/product/addProduct/after
  • admin/model/catalog/product/editProduct/after

Когда использовать синхронизацию?

Рекомендуется запускать инструмент в следующих случаях:

  1. После массового импорта: Если вы использовали модули импорта (CSV, XML, Excel) или парсеры, которые записывают данные напрямую в стандартные таблицы OpenCart.
  2. После ручных правок в БД: Если вы вносили изменения в таблицы attribute или attribute_description через SQL-запросы.
  3. При установке модуля: Если у вас уже была база атрибутов до установки Attributipro, и вы хотите наделить их всеми функциями расширения.
  4. Если пропали подсказки или иконки: Если вы заметили, что для некоторых атрибутов невозможно задать или отобразить расширенные данные.

Как это работает?

При нажатии на кнопку запуска (иконка "Play"), модуль выполняет три последовательных этапа:

  1. Проверка атрибутов: Ищет записи в таблице attribute, для которых нет соответствующих записей в attribute_pro, и создает их с параметрами по умолчанию.
  2. Проверка описаний: Анализирует таблицу attribute_description и создает недостающие записи в attribute_description_pro для всех языков.
  3. Восстановление связей: Проверяет целостность связей между товарами и их атрибутами в контексте расширенных данных.
Результат

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


Важные примечания

  • Безопасность: Инструмент только добавляет недостающие записи и не удаляет существующие данные. Это безопасная операция.
  • Регулярность: Нет необходимости запускать синхронизацию часто, если вы работаете только через интерфейс модуля. Используйте её только как "ремонтный" инструмент после внешних манипуляций с базой.