«Чистые» доработки: как обновить доработанную роль в поставляемом расширении 1С

26.06.26

Разработка - Рефакторинг и качество кода

Обновление ролей в расширении 1С отличается от аналогичного процесса в основной конфигурации. Ситуация осложняется, когда доработки вносятся не в «обычное», а в поставляемое расширение.

Рассматриваемый кейс: обновление связки 1С:ERP 2.5.12.95 + «УправлениеЛизингом» 2.5.10.63 на релизы 2.5.21.118 и 2.5.17.151 соответственно. Отраслевое решение было модифицировано: разработчики заказчика доработали его под свои потребности, в том числе добавили собственные объекты метаданных, а также вносили туда исправления типовых ошибок лизинга.
 

Алгоритм обновления ролей 1С в стандартной ситуации

Рассмотрим пример обновления роли ПолныеПрава в  отраслевом решении. Эта роль уже присутствовала в поставляемом расширении как заимствованная, но также в ней были доработки заказчика. В стандартных ситуациях, когда расширение не является поставляемым, заимствованные роли мы обновляем по следующему алгоритму:

  1. копируем список прав обновляемой роли из расширения до обновления в инструмент для сравнения текстов (для вывода прав в виде списка необходимо открыть права роли и нажать «Действия» — «Вывести список»). В этом списке выводятся все объекты, присутствующие в расширении;
  2. удаляем роль из расширения, добавляем ее заново (обнуляем все права);
  3. снова копируем список прав из вновь добавленной роли;
  4. сравниваем списки, полученные в 1 и 3 пунктах, таким способом выявляем доработки, затем переносим их в обновленное расширение, в котором также сначала удаляем роль, затем добавляем ее снова, это необходимо для того, чтобы подтянулись новые типовые изменения из основной конфигурации.

Разумеется, первые три пункта выполняются в конфигураторе базы до обновления в копии расширения, чтобы не затронуть «рабочую» конфигурацию 1С. Но для обновления доработанной роли в поставляемом расширении указанный метод не подошел: роль нельзя просто удалить и добавить заново, так мы потеряем типовые изменения отраслевого решения.
 

Способ выявления «чистых» доработок без влияния сторонних метаданных

Изначально мы думали просто сравнить списки прав из старого типового расширения и модифицированного расширения, но в таком случае мы получали избыточное количество различий из-за объектов метаданных, добавленных заказчиком, в которых сложно вычленить реальные доработки роли. Поэтому мы поставили перед собой задачу найти способ для выявления «чистых» доработок без влияния сторонних метаданных и нашли, для этого мы:

  1. скопировали список прав роли ПолныеПрава из расширения до обновления;
  2. сравнили-объединили доработанную роль с ролью из старого типового расширения с использованием штатного механизма платформы;
  3. снова скопировали список прав из полученной после объединения роли;
  4. сравнили полученные списки между собой;
  5. перенесли доработки, выявленные на предыдущем шаге, в обновленное расширение.

Данным способом мы получили реальные доработки без «мусорных» изменений, которые осложняют сравнение. Для наглядности прикрепляем скриншоты из используемого нами инструмента для сравнения текстов, на которых видно сколько различий выводилось, когда мы просто сравнивали старое типовое расширение с доработанным расширением заказчика:
 


И сколько оказалось среди этих различий реальных доработок, которые мы выявили методом, указанным выше:
 


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

А на каком этапе вы ловите ошибки ролей: при тестировании или уже после звонка разгневанного пользователя?

Вступайте в нашу телеграмм-группу Инфостарт

обновление 1с роли

Вы можете заказать платную адаптацию этой статьи под ваши задачи на «Бирже заказов».

  • 0% комиссии — оплата напрямую исполнителю;
  • Исполнители любого масштаба — от отдельных специалистов до команд под проект;
  • Прямой обмен контактами между заказчиком и исполнителем;
  • Безопасная сделка — при необходимости;
  • Рейтинги, кейсы и прозрачная система откликов.

См. также

Нейросети Обновление 1С Бесплатно (free)

Когда доработанную 1С не обновляли годами, начинать приходится не с переноса кода, а с разбора того, что вообще накопилось в базе. Там могут быть десятки обработок, расширения, правки типовых объектов, а документации либо нет, либо она давно не актуальна. На примере реального обновления разбираем, как кодовые агенты, MCP-серверы и языковые модели помогают навести порядок в доработках, собрать план миграции, понять, где при переносе будут проблемы, и автоматизировать часть исправлений.

05.06.2026    4426    wonderboy    6    

26

Инструментарий разработчика Рефакторинг и качество кода Программист 1С:Предприятие 8 Бесплатно (free)

Инструмент для тех, кто устал читать модули по 50 тысяч строк и искать ошибки глазами. MetaVision загружает выгруженные файлы конфигурации и за секунды строит графы функций, находит уязвимости и подсвечивает проблемы производительности. Ключевые возможности: Визуализация логики функций (графы условий, циклов, транзакций и вызовов). Статический аудит безопасности (RCE, SSRF, COM-инъекции, пароли в коде). Поиск проблем производительности (запросы в циклах, вложенные блокировки). Полнотекстовый поиск по всем модулям конфигурации. Статистика по объектам и функциям. Безопасность: Программа работает строго локально. Код вашей конфигурации не отправляется в интернет и не анализируется на сторонних серверах. Попробуйте MetaVision сегодня — узнайте, что скрывает ваш код.

20.04.2026    12296    1279    KHoroshulinAV    56    

93

Нейросети Рефакторинг и качество кода Программист Бесплатно (free)

ИИ действительно помогает команде ускориться: быстрее разбирать код, быстрее входить в сложные участки, быстрее запускать доработки. Проблема в том, что вместе со скоростью он может ускорять и другое — накопление скрытой сложности, рост цены изменений и потерю управляемости. В статье разбираю, почему первые успехи с ИИ так легко опьяняют, когда система начинает выставлять счёт и что нужно сделать, чтобы ускорение не превратилось в новый виток технического долга.

17.03.2026    2419    IgorVasilyev    54    

28

Обновление 1С Программист 1С 8.3 Россия Бесплатно (free)

При разработке тиражного прикладного решения или при использовании автоматизации сборки вам потребуется механизм создания файлов поставки. В статье приведена шпаргалка по работе с ним.

11.02.2026    2321    AntonovaElena    9    

19

Нейросети Рефакторинг и качество кода Программист Бесплатно (free)

В статье рассказываю, как писать код 1С в VS Code с помощью бесплатных AI-моделей 🤖 Используем GLM-4.7 через Roocode + Cerebras (до 1 миллион токенов в день). Подключаем бесплатные MCP. Генерируем новый код и смотрим, как AI справляется с задачами.

06.02.2026    20954    Ibrogim    83    

52

Нейросети Рефакторинг и качество кода Программист Бесплатно (free)

Некоторые задачи можно и нужно делегировать ИИ, а простые задачи можно отдавать бесплатным моделям. В статье коротко рассказываю про расширение roocode для vscode, инструмент openrouter и реальную задачу по рефакторингу кода.

02.02.2026    16397    Ibrogim    59    

51

EDT Обновление 1С Программист Бесплатно (free)

На примере рассмотрим одну из стратегий обновления проекта на новый релиз поставщика через 1С:EDT.

19.01.2026    5620    eakomarov    12    

23

Рефакторинг и качество кода Программист Бесплатно (free)

Костыль, рефакторинг или архитектура - делюсь своим видением того, как выбирать правильный инструмент под конкретную задачу. За годы в 1С я выработал алгоритм "трех зон", который помогает мне не только писать код, но и говорить с бизнесом на его языке. В статье рассказываю, когда временное решение оправдано, а когда оно становится миной замедленного действия. Никаких нотаций, только мой опыт принятия решений, где каждая строчка имеет цену. Буду рад, если моя система поможет вам по-новому взглянуть на привычную рутину.

19.12.2025    3201    GarriSoft    14    

17
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. war41k 767 26.06.26 19:28 Сейчас в теме
По рукам нужно бить за такие роли, Ролей должно быть только Просмотр(чтение, просмотр) и Изменение(чтение, просмотр, изменение, добавление) и на один объект иначе настройка профилей превращается в ад
2. 1c-izh 144 29.06.26 15:42 Сейчас в теме
(1) Работаем с тем, что нам присылают на обновление ¯\_(ツ)_/¯
EvgeniyOlxovskiy; +1 Ответить
3. pavlov_dv 30.06.26 09:38 Сейчас в теме
(1) достаточно часто необходимо разбивать роли более мелко.

Например, первичку на складе вносит одно подразделене (только Добавление).
Редактирует (только Изменение) - другое подразделение (без создания новых объектов).
Затем смотрят всякие контролеры (только Просмотр) - третье подразделение.
Ну и т.д.

Так что приходится работать с тем, что есть. Как справедливо заметил @1c-izh ниже
Для отправки сообщения требуется регистрация/авторизация