В связи с тем, что каждое государство стремится изолировать свои интернет-ресурсы от внешних стран, компанией ООО «ОС Альфаснаб» было принято решение полностью разделить инфраструктуру России и Казахстана.
В рамках данного решения номенклатура была перенесена с российской версии 1С в «1С:Бухгалтерия Казахстан».
Однако, в связи с отсутствием готового модуля для выгрузки данных из «1С:Бухгалтерия Казахстан» на сайты, работающие на платформе «1С-Битрикс», было принято решение о разработке собственного модуля для дальнейшей автоматизации рабочих процессов.
В следствие чего надо было определиться с требованиями к данном модулю
Пример работы данного модуля
Требования к модулю
из «1С:Бухгалтерия для Казахстана» на сайты, работающие на платформе 1С-Битрикс
1. Общие требования
Модуль должен обеспечивать автоматизированную передачу данных из «1С:Бухгалтерия для Казахстана» на сайт, разработанный на платформе 1С-Битрикс, без использования российских стандартных модулей обмена.
Интеграция должна работать автономно и не зависеть от внешних сервисов или инфраструктуры Российской Федерации.
Обмен должен осуществляться по защищённому протоколу (HTTPS) с использованием механизма авторизации (API-ключ, токен или логин/пароль).
Модуль должен поддерживать как ручной запуск выгрузки, так и автоматический запуск по расписанию.
2. Требования к выгрузке номенклатуры
Модуль должен обеспечивать передачу следующих данных по товарам:
- наименование;
- артикул;
- производитель
- единица измерения;
Должна поддерживаться иерархия разделов (категорий) и корректная привязка товаров к разделам сайта.
При повторной выгрузке модуль должен обновлять существующие товары, не создавая дубликатов.
3. Требования к ценам
Модуль должен обеспечивать выгрузку:
- типов цен (розничная, оптовая и др.);
- валют;
Обновление цен не должно приводить к перезаписи иных данных товара.
4. Требования к медиафайлам
Модуль должен поддерживать передачу:
- основного изображения товара;
- дополнительных изображений;
- файлов (при необходимости).
При изменении изображений в 1С должна выполняться их корректная актуализация на сайте.
5. Обработка изменений
Должна быть реализована:
- полная выгрузка всей номенклатуры;
- частичная выгрузка только изменённых элементов;
- учёт даты изменения объекта.
6. Надёжность и контроль
Модуль должен вести журнал обмена, фиксируя:
- успешные операции;
- ошибки передачи;
- отклонённые элементы.
Должна быть предусмотрена возможность повторной выгрузки неотправленных данных.
Процесс обмена должен быть устойчив к обрывам соединения и большим объёмам данных.
7. Производительность
Модуль должен поддерживать пакетную передачу данных для снижения нагрузки на сервер 1С и сервер сайта.
Обмен должен корректно работать при большом объёме номенклатуры.
8. Администрирование
В интерфейсе 1С должны быть доступны настройки:
- адрес сайта;
- режим выгрузки
- расписание обмена.
Должен быть предусмотрен тестовый режим для проверки корректности передачи данных.
Этап разработки
После определения требований, которым должен соответствовать разрабатываемый модуль, был инициирован этап разработки и тестирования.
Для проведения работ была развернута отдельная тестовая база «1С:Бухгалтерия для Казахстана», что позволило выполнять разработку и отладку без влияния на рабочую систему. В ходе разработки были проанализированы существующие механизмы обмена данными, применяемые в других конфигурациях 1С, а также изучены различные подходы к организации выгрузки номенклатуры.
По завершении разработки модуля выгрузки возникла необходимость создания серверной части API на стороне сайта. Данное API предназначено для приема данных из 1С, их обработки и последующего создания или обновления товаров в системе «1С-Битрикс» в соответствии с передаваемой структурой данных.
Реализация API обеспечила корректную интеграцию между «1С:Бухгалтерия для Казахстана» и сайтом, а также позволила организовать стабильный и контролируемый обмен данными.
Этап тестирования и внедрения в рабочую среду
После завершения разработки модуля и серверной части API был проведён этап комплексного тестирования.
На тестовой базе «1С:Бухгалтерия для Казахстана» была выполнена пробная выгрузка номенклатуры с передачей данных в тестовую версию сайта. В ходе тестирования проверялись:
- корректность формирования структуры передаваемых данных;
- создание новых товаров на стороне сайта;
- обновление существующих позиций без образования дубликатов;
- корректная передача цен, остатков и свойств;
- обработка ошибок и ведение журнала обмена;
- устойчивость работы при пакетной выгрузке большого объёма данных.
По результатам тестирования были устранены выявленные неточности, оптимизирован механизм пакетной передачи данных и доработана обработка исключительных ситуаций.
После успешного завершения тестового этапа модуль был перенесён в рабочую (боевую) базу «1С:Бухгалтерия для Казахстана». Были выполнены:
- настройка параметров подключения к рабочему сайту;
- проверка корректности авторизации;
- контрольная выгрузка ограниченного объёма данных;
- полная синхронизация номенклатуры.
В ходе первой рабочей выгрузки осуществлялся мониторинг журнала обмена и состояния каталога сайта. После подтверждения корректной работы модуль был введён в эксплуатацию.
В результате внедрения был обеспечен стабильный автоматизированный обмен данными между «1С:Бухгалтерия для Казахстана» и сайтом на платформе «1С-Битрикс», что позволило минимизировать ручной труд и повысить точность обновления информации.
