- Управление эффективностью холдинга (CPM)
Цели проекта
- Унификация правила обмена и единая система их распространения для всех баз 1С группы компаний;
- Разработка управляемой формы загрузки данных с подстановкой реквизитов по необходимым условиям отборов.
Задачи внедрения
- Изменение правил обмена;
- Приведение в порядок обработчиков для документов;
- Актуализация правил обмена в онлайн режиме.
Ситуация до внедрения
Аскона Лайф Групп – это многопрофильный холдинг, объединивший все составляющие счастливой жизни, здорового сна и качественного отдыха.
Штаб-квартира холдинга находится в пос. Доброград, Владимирской области. В группу компаний входят не только производства, склады, салоны товаров для сна, но и сооружения города, построенного "Асконой".
Холдинг всегда нуждается в улучшении стандартов управления ресурсами и новом функционале, и одна из последних доработок была связана с унификацией правил обмена данных между всеми базами 1С группы компаний. Ранее данный функционал отсутствовал, что требовало регулярные правки подстановки данных со стороны разработчиков и аналитиков.
Боль клиента
- Сложность поддержки в обслуживании множества правил обмена;
- Нестабильная работа COM– соединения;
- Сложность поддержки множества расширений с доработкой обработчиков заполнения документов.
Уникальность и инновационность проекта
Уникальность и инновационность заключаются в нескольких ключевых аспектах, которые выходят за рамки типового подхода к обмену данными и сопровождению 1С-систем в крупных холдингах:
Интеграция Apache Kafka в архитектуру обмена 1С.
- Использование брокера сообщений Apache Kafka для организации обмена данными в 1С — крайне редкая практика. В большинстве случаев применяются стандартные механизмы COM-соединения, HTTP-сервисы или файловые обмены;
- Kafka обеспечивает масштабируемость, устойчивость к сбоям и асинхронную обработку данных—это приближает 1С к современным корпоративным архитектурам уровня enterprise.
Унификация правил обмена данных между множеством разнотипных конфигураций.
- В холдинге используется большое количество разных баз (БП, ЖКХ, Общепит и др.), и ранее для каждой из них существовали свои правила обмена, требующие ручной доработки;
- Разработка единого унифицированного правила, с возможностью централизованного обновления и распространения, позволила устранить дублирование, повысить надежность и существенно упростить сопровождение.
Гибкая система подстановок реквизитов с управляемыми приоритетами.
- В типовых решениях 1С обработчики подстановок зачастую "зашиты" в код и работают по жёсткой логике, что делает их трудными в сопровождении;
- Система подстановки, основанная на приоритетах с инверсией (1 — наивысший, 100 — низкий), позволяет в пользовательском интерфейсе настраивать поведение без изменения кода, повышая адаптивность решения к меняющимся бизнес-правилам.
Централизованное управление обменами с онлайн-актуализацией.
- Обычно обновление правил обмена требует ручного вмешательства в каждую базу или запуска специализированных обработок;
- Внедрён механизм автоматической дистрибуции изменений от базы-источника (например, "Управление холдингом") во все базы-приемники. Это позволяет мгновенно актуализировать обмены по всей группе компаний.
Переход от COM-соединений к современному транспорту.
- COM-соединения исторически часто использовались, но они ненадежны, особенно при высоких нагрузках и большом количестве баз;
- Отказ от COM в пользу Kafka означает переход на современную архитектуру микросервисного взаимодействия.
Публикации о проекте
Результаты проекта
Переход на транспорт Kafka помог решить следующие проблемы
- Исправление ошибок в текущих правилах обменов;
- Ушла проблема постоянной остановки обменов на COM - соединении, все работает стабильнее;
- Актуализация правил обмена в онлайн режиме и возможность быстрого распространения изменений на все базы;
- Внедрение обработки подстановки реквизитов и включения обработчиков:
- Ускорение настройки включения обработчиков для организаций без привлечения Программистов;
- Легкость настройки подстановки реквизитов в документы, при изменении условий отбора- возможность быстрой корректировки ранее созданных правил.
- Решилась проблема постоянной остановки обменов на COM - соединении, все работает стабильнее.
Что было сделано:
- Переход на транспорт Kafka;
- Переведены все базы на транспорт Kafka;
- Унификация правил разных баз и различных конфигураций.
-
1С:Управление холдингом
Архитектура решения и масштаб проекта
Выбранное решение
В качестве решения была выбрана интеграция баз данных 1С с брокера сообщений Apache Kafka, с унификацией правил обмена для всех баз и гибкой системой настройки обработчиков для документов.
Суммарное количество АРМ: 300 шт.
Оптимизация обменов для перехода на новый транспорт Apache Kafka
Изменение правил обмена;
Исправление ошибок в текущих правилах. Унификация правил разных баз и различных конфигураций для простоты поддержки. Реализация возможности гибкой настройки обмена, не изменяя правила обмена (правила остаются прежние для всех баз, при этом может меняться текст обработчиков непосредственно в самой базе).
Приведение в порядок обработчиков для документов;
Реализация гибкой системы настройки обработчиков для документов в базе Управление холдингом, опирающийся на организацию. Настройки задаются в пользовательском интерфейсе. Для подстановки аналитик используется регистр, который уже использовался ранее, с некоторыми доработками, подстановки будут опираться на числовые приоритеты (низкий приоритет подстановки – данные подстановки будут использоваться если нет приоритета выше, высокий приоритет подстановки – данные подстановки используются в первую очередь) или другими словами порядок следования. Приоритеты инвертированы, т.е. число 1 имеет высший приоритет в порядке, число 100 имеет приоритет ниже чем у записи с приоритетом 1 и т.д. Раньше обработчики накладывались один на другой и отрабатывали по несколько раз.
Актуализация правил обмена в онлайн режиме;
Реализация механизма изменения правил обмена (происходит в редких случаях, например после обновления баз, после которых происходит добавление/изменение новых метаданных, влияющих на обмен и работу баз) и распространение от базы-источника распространения до всех подключенных к обмену баз.
Пример: база-источник Управление холдингом, базы приемники 1С:БП, 1С:ЖКХ, 1С:Общепит. В Управление холдингом добавляются новые правила обмена, в течение времени правила автоматически распространяются в базы 1С:БП, 1С:ЖКХ, 1С:Общепит.
Описание функционала подстановки и замены реквизитов по условиям отбора 1С:УУ в 1С:УХ.
Объекты, необходимые для настройки располагаются в подсистеме "Дополнительные настройки".
Используемые объекты:
- Вкладка “Дополнительные настройки”:
Привязываются системные обработчики, написанные на уровне кода.
- Вкладка “Основное”:
Указывается процедура модуля и Приоритет выполнения.
- Вкладка “Применяется в документах”:
Делаем привязку к типу документа, в котором должен отрабатывать обработчик.
- Вкладка "Значения дополнительных настроек":
С помощью данных настроек подключаются обработчики к организации, если настройка идет для всех- не заполняем поле Организация.
- Вкладка "Значения настроек":
При добавлении новой организации она обязательно добавляется в настройку "Организации включенные в систему" и по необходимости в "Зарплата ведется сводно".
- Вкладка "Аналитики для подстановки в документы":
Данная настройка служит для подстановки нужных статей ДДС и аналитик исходя из условий отбора.
- Вкладка "Организация":
Организация, в которой применяется настройка
- Вкладка "Назначение платежа":
Ссылается на Справочник.S42_НазначенияБанковскихДокументов", где можно задать необходимые значения, в том числе по шаблону.
- Вкладка "Отбор по виду операции":
Вид операции, по которому задаются условия.
- Вкладка "Идентификатор отбора":
Поле предназначено для заполнения, при условии, что верхняя часть идентичная в нескольких настройках и отбор производится в поле «Отбор по реквизитам». - Вкладка "Отбор по реквизитам":
Расширенная настройка отбора.
- Вкладка "Приоритет":
Между условиями отбора можно установить приоритет отработки правил подстановки.
- Вкладка "Перезаполнять":
Ставится галочка, если необходимо перезаполнять ранее проведенные документы, возможно разделение на расчетные документы и заявки на оплату.
- Вкладка "Статья "Движения денежных средств":
Выбирается статья для подстановки, в отборе есть привязка по ЦФО, статьи других организаций не подставляются.
- Вкладка "Аналитика1 2":
Вид аналитики и количество проставляются в зависимости от настроек статьи, на данный момент к ним применены следующие обработчики:
- Вкладка "Указать значение":
Указывается конкретное значение аналитики.
- Вкладка "Заполнить внешний/внутренний контрагент":
Исполняет правило по привязке контрагента к периметру
- Вкладка "Заполнить аналитику движений по займам":
Заполнить договор из документа
