Переход с платформы 1С 7.7 на 1С 8.3 для тиражного решения — это не просто перенос кода, а полная смена архитектуры. Ситуация осложняется, если у вас более 200 клиентов, работающих на глубоко модифицированной конфигурации (например, «Общепит»), и вам необходимо обеспечить им регулярные обновления вслед за изменениями законодательства (особенно актуально для Республики Беларусь). Рассмотрим подробную стратегию того, как реализовать этот переход максимально эффективно.
Первым делом проанализируем, на какой базе строить новое решение. Писать систему с нуля (вариант «нетленки») для учета, включающего бухгалтерию и зарплату, в современных реалиях нерационально. Вы не сможете в одиночку оперативно отслеживать изменения законодательства РБ, такие как формы ЭСЧФ, ЭТТН или алгоритмы расчета налогов.
Наиболее правильный путь — взять за основу типовую конфигурацию Бухгалтерия для Беларуси (на базе БСП). Рассмотрим, почему это важно:
Главная проблема при доработке типовых конфигураций — сложность последующих обновлений. Чтобы избежать «кошмара» при обновлении 200 баз, проанализируем современные инструменты платформы 8.3:
1. Использование расширений конфигурации
Расширения позволяют добавлять новые справочники, документы и реквизиты, не меняя основную конфигурацию. В современных версиях платформы (8.3.15+) расширения позволяют даже хранить данные в собственных таблицах БД. Рассмотрим преимущества:
2. Подписки на события
Если вам нужно изменить логику проведения стандартного документа (например, изменить проводки Реализации товаров и услуг под специфику общепита), не нужно править модуль объекта. Используем Подписки на события. Рассмотрим пример реализации:
// В отдельном общем модуле создаем процедуру-обработчик
Процедура ПриЗаписиДокументаДляОбщепита(Источник, Отказ) Экспорт
Если Источник.ОбменДанными.Загрузка Тогда
Возврат;
КонецЕсли;
// Добавляем логику формирования дополнительных записей в регистры
// Источник — это сам документ
КонецПроцедуры
Создав подписку на событие ОбработкаПроведения, вы сможете дополнять или корректировать движения документа, не внося ни одной строчки кода в типовой модуль.
3. Вынос логики в собственные общие модули
При необходимости написания сложной калькуляции или логики списания ингредиентов, создадим свои общие модули (например, _ОбщепитСервер). Посмотрим на этот подход: даже если вам пришлось вызвать свою функцию из типового кода, это будет всего одна строка. Однако, используя расширения и аннотации &После или &Вместо, можно избежать и этого.
Перенося функционал с 7.7, важно понимать различия в архитектуре. В 7.7 часто всё строилось на одной табличной части и бухгалтерских итогах. В 8.3 проанализируем следующие возможности:
Дополнительные реквизиты и сведения, который вообще не требует программирования.ПриСозданииНаСервере через расширение. Это гарантирует, что при обновлении формы вендором ваши элементы не пропадут.Рассылка файлов вручную — это путь к деградации продукта. Разберем, как автоматизировать этот процесс:
Вы создаете Конфигурацию поставщика. Ваши клиенты будут иметь две поддержки: от фирмы 1С (типовая бухгалтерия) и от вас (отраслевой модуль). Это позволяет выпускать файлы обновлений .cfu, которые будут содержать только ваши изменения.
Проанализируем возможность создания простого веб-сервиса (сервера обновлений). В конфигурацию клиентов добавим небольшую обработку, которая при запуске:
.cfu файл.При разработке под РБ учтем, что в конфигурации Бухгалтерия для Беларуси активно используется БСП. Посмотрим на критические точки:
ЭТТН.Рассмотрим краткий алгоритм действий:
Бухгалтерия для Беларуси 2.1 (на управляемых формах).Рецептуры, Регистр ОстаткиПродуктов и т.д.).Такой подход позволит вам оставаться современным разработчиком, а вашим клиентам — получать актуальный продукт, который легко поддерживает изменения законодательства РБ.