SonarQube для 1С: плагин BSL Community, первый анализ и отключение замечаний. Проверено на стенде

14.10.26

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

SonarQube Community 26.10 и плагин BSL Community 1.20.0 на небольшом стенде: установка, настройки SonarScanner, 10 замечаний Нано-УТ на 27 строках кода. Семь проб показывают, как комментарии BSLLS отключают MagicNumber и почему маркер @sonar-disable-next-line в этом опыте не сработал. Отдельно проверена кодировка выгрузки Конфигуратора. В архиве-компаньоне — готовый Docker Compose, конфиг сканера и эталоны модулей.

Файлы

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование Скачано Купить файл
Стенд SonarQube 26.10 и плагина BSL Community: Docker Compose, профиль сканера и эталоны BSL
.zip 7,26Kb
0 6 200 руб. Купить

Подписка PRO — скачивайте любые файлы со скидкой до 85% из Базы знаний

Оформите подписку на компанию для решения рабочих задач

Оформить подписку и скачать решение со скидкой

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

  • 0% комиссии — оплата напрямую исполнителю;
  • Исполнители любого масштаба — от отдельных специалистов до команд под проект;
  • Прямой обмен контактами между заказчиком и исполнителем;
  • Безопасная сделка — при необходимости;
  • Рейтинги, кейсы и прозрачная система откликов.
🧭 Качество кода 1С • SonarQube • BSL Community • Статический анализ
🎯 О чём это (в трёх тезисах)
🗸Архитектура связки SonarQube + BSL Community + SonarScanner: как сервер 26.10, плагин 1.20.0 (со встроенным BSL LS) и CLI-сканер взаимодействуют в Docker без установки платформы на хост.
🗸Первый анализ на демо-базе Нано-УТ: 10 реальных замечаний на 27 строках кода (CodeOutOfRegion, CommonModuleNameServerCall, CommonModuleMissingAPI), расчет техдолга в 22 минуты и статус Quality Gate Passed.
🗸Семь практических проб экранирования замечаний и кодировка: почему не сработал маркер @sonar-disable-next-line, как правильно подавлять правила через BSLLS-off/on и как сканер обрабатывает выгрузку Конфигуратора в UTF-8 с BOM.
🧪 Отчёт о тестировании на реальном стенде
Среда и дата13.10.2026, Windows 11 Pro, Intel Core i5-2400 3,10 ГГц (4 ядра), 7,9 ГБ ОЗУ, Docker Desktop 4.92.0 (Docker CLI 29.8.0), 1С:Предприятие 8.3.27.2130
Стек ПОSonarQube Community Edition 26.10.0, плагин 1C (BSL) Community Plugin 1.20.0, SonarScanner CLI 8.1.0.6389
Объект анализаНано-УТ: 6 модулей BSL, 27 строк кода; отдельная выгрузка Конфигуратора (/DumpConfigToFiles) в UTF-8 с BOM (9 модулей)
Ключевые замерыВремя анализа сканером 36,4 с, 10 замечаний дефектов кода (6 Minor, 4 Info), 172 активных правила BSL; успешное чтение UTF-8 с BOM
Границы замераЛокальный стенд разработчика на Docker; крупная кодовая база (> 100 тыс. строк) и интеграция с CI/CD не оценивались
🧪 Отчёт о тестировании файла-компаньона
Архив1c-sonarqube-bsl-companion.zip (1 SM, 7.4 КБ): docker-compose.yml, sonar-project.properties, run_scanner.sh, run_scanner.ps1, nano_ut/src/*.bsl, verify_companion.py, README.md
Среда и дата13.10.2026, Windows 11 Pro, Python 3.12, автономный прогон из распакованного архива
Что запускалосьpython verify_companion.py (тесты синтаксиса конфигураций, структуры сервисов Docker, UTF-8 BOM и баланса BSL-модулей)
Результат6 проверок из 6 пройдены успешно (100% PASS): корректность портов и томов, обязательные свойства сканера, целостность UTF-8 BOM и синтаксический баланс модулей 1С
Где скачатьВ блоке прикреплённых файлов публикации за 1 $m
🧠 Суть статьи

1С-разработчикам и DevOps-инженерам: как развернуть статический анализ кода 1С в SonarQube на базе плагина BSL Community, настроить SonarScanner CLI и управлять исключениями через директивы BSL Language Server без поломки пайплайна.

Ключевые идеи
  • Плагин BSL Community самодостаточен: анализатор BSL Language Server уже встроен в плагин, отдельная установка сервера языка не требуется.
  • Маркер @sonar-disable-next-line не поддерживается плагином: попытка подавить замечание стандартным маркером SonarQube не работает и сама порождает диагностику UsingServiceTag.
  • Рабочий стандарт подавления — директивы BSLLS: строчные комментарии // BSLLS:Правило-off и парные блоки -off / -on надёжно отключают целевые замечания.
  • Сканер понимает UTF-8 с BOM платформы 1С: штатная выгрузка Конфигуратора через /DumpConfigToFiles с кодировкой UTF-8 BOM анализируется корректно при параметре sonar.sourceEncoding=UTF-8.
Главная мысль

Связка SonarQube и плагина BSL Community даёт быстрый старт анализа кода 1С из коробки, но требует точного применения директив экранирования BSL LS и проверки кодировки исходников.

Для кого: разработчики, тимлиды и DevOps-инженеры 1С, внедряющие статический анализ кода в процесс разработки и CI/CD.

Ключевые технологии: SonarQube 26.10, 1C (BSL) Community Plugin 1.20.0, SonarScanner CLI 8.1.0, Docker Desktop, BSL Language Server, UTF-8 с BOM.

📂 Как устроена связка

Участников три:

  • SonarQube хранит результаты, показывает интерфейс, считает метрики и Quality Gate.
  • Плагин «1C (BSL) Community Plugin» добавляет в SonarQube язык «1C (BSL)», правила и разбор кода. BSL Language Server встроен в плагин, отдельно его ставить не нужно: по документации плагина диагностики по умолчанию берутся из встроенного провайдера (sonar.bsl.languageserver.enabled=true). Отдельный JSON-отчёт BSL LS можно подключить ключом sonar.bsl.languageserver.reportPaths, но для первого запуска это лишнее.
  • SonarScanner запускается рядом с исходниками, читает файлы и отправляет отчёт на сервер.

SonarQube работает с текстовыми исходниками, не с .cf и не с .dt. Конфигурацию нужно выгрузить в файлы (EDT хранит её так с самого начала, у Конфигуратора есть выгрузка в файлы). Расширения по умолчанию анализируются .bsl и .os; .os - это скрипты OneScript, а не формы и обработки.

Совместимость версий указана в README плагина: для SonarQube 25.4 и новее нужен плагин 1.18.0 и новее (Java 21). Сервер 26.10 входит в диапазон «25.4+» этой таблицы; на стенде плагин 1.20.0 загрузился и выполнил анализ.

💻 Установка сервера и плагина

Плагин - один JAR из раздела Releases проекта 1c-syntax/sonar-bsl-plugin-community. Я положила sonar-communitybsl-plugin-1.20.0.jar в каталог plugins и смонтировала его в контейнер. Хэш файла (SHA-256) совпал с цифрой, указанной в релизе на GitHub.

YAML UTF-8 Открыть файл
1
2
3
4
5
6
7
8
9
10
11
12
services:
  sonarqube:
    image: sonarqube@sha256:2e378f7852b67d43507d3d383ee8fb5a522b8b0f920be9803f74f72952fce8f1
    ports:
      - "${SONAR_PORT:-9000}:9000"
    volumes:
      - ./plugins:/opt/sonarqube/extensions/plugins
      - sonar_data:/opt/sonarqube/data
      - sonar_logs:/opt/sonarqube/logs
volumes:
  sonar_data:
  sonar_logs:

Запуск из каталога с docker-compose.yml (Bash):

Bash UTF-8 CLI
1
2
docker compose -p a01 up -d
curl http://localhost:9000/api/system/status

В первоначальном прогоне готовность ("status":"UP") наступила примерно через две минуты. Это наблюдение одного запуска, не норматив ожидания. В логе сервера: Deploy 1C (BSL) Community Plugin / 1.20.0 и Register profile bsl/BSL Language Server rules. Сервер при этом использует встроенную базу H2; в интерфейсе висит предупреждение, что её стоит применять только для ознакомления.

Что появилось после установки плагина:

  • язык «1C (BSL)» и 186 правил (ошибок 61, дефектов кода 110, горячих точек безопасности 8, уязвимостей 7). Это число правил на использованном стенде;
  • один профиль «BSL Language Server rules»: встроенный, по умолчанию, 172 активных правила. В этой установке профилей «Sonar way» и «BSL Community Standard» для языка BSL не было. Quality Gate «Sonar way» относится к воротам качества, а не к профилю правил BSL.
Рис. 1. Единственный профиль для языка 1C (BSL): встроенный, по умолчанию, 172 активных правила.

Рис. 1. Единственный профиль для языка 1C (BSL): встроенный, по умолчанию, 172 активных правила.

Рис. 2. Правило «Магические числа» (bsl-language-server:MagicNumber) и его параметры.

Рис. 2. Правило «Магические числа» (bsl-language-server:MagicNumber) и его параметры.

На рис. 2 правило bsl-language-server:MagicNumber: параметр authorizedNumbers по умолчанию -1,0,1, профиль «BSL Language Server rules».

💻 Первый анализ

В корне проекта нужен файл sonar-project.properties. Значения ключей взяты из документации плагина:

Properties UTF-8 Открыть файл
1
2
3
4
5
6
7
8
9
sonar.projectKey=nano-ut
sonar.projectName=Nano-UT
sonar.projectVersion=1.0
sonar.sources=src
sonar.inclusions=**/*.bsl, **/*.os
sonar.sourceEncoding=UTF-8
sonar.bsl.file.suffixes=.bsl,.os
sonar.bsl.languageserver.enabled=true
sonar.bsl.languageserver.diagnosticLanguage=ru

Ключа sonar.language в примере документации нет, и я его не использовала. Сканер запускается в Docker, в сети Compose-проекта a01. Команда ниже предназначена для Bash: замените ваш_токен, перейдите в каталог проекта. В PowerShell команду docker run нужно записать одной строкой или заменить переносы Bash на переносы PowerShell.

Bash UTF-8 CLI
1
2
3
4
5
6
export SONAR_TOKEN="ваш_токен"
docker run --rm --network a01_default \
  -e SONAR_HOST_URL=http://sonarqube:9000 \
  -e SONAR_TOKEN \
  -v "$PWD:/usr/src" \
  sonarsource/sonar-scanner-cli@sha256:a3f4215076706c95a17a68c19322ee916e40a3acd081a8c1a1e839e0194afa57

Токен создаётся в интерфейсе или через API (/api/user_tokens/generate). В файлы и репозиторий его класть не нужно.

Время первоначального прогона из журнала стенда: «Analysis total time: 36.409 s», запуск контейнера сканера целиком 46 с (без скачивания образа), обработка отчёта сервером 9,3 с. Для 54 строк это в основном время запуска и инициализации, так что на объём кода эти цифры не масштабируются.

📊 Что показал Нано-УТ

Показатель Значение
Замечаний 10, все «дефект кода»; ошибок, уязвимостей, горячих точек безопасности нет
По серьёзности MINOR 6, INFO 4 (в интерфейсе SonarQube 26.10 подписаны Low 6 и Info 4)
Строк кода / файлов / функций 27 / 6 / 6
Сложность (цикломатическая / когнитивная) 9 / 3
Дублирование 0,0 %
Технический долг 22 минуты, расчётная оценка SonarQube
Quality Gate Passed

Ворота качества по умолчанию - «Sonar way». Статус Passed означает прохождение их условий и может сочетаться с замечаниями в проекте. Собственные условия я не настраивала. 22 минуты - оценка трудозатрат анализатора; время исправления человеком не измерялось.

Три правила дали все замечания:

  • CodeOutOfRegion (4): код вне областей;
  • CommonModuleNameServerCall (3): «Добавьте постфикс "ВызовСервера" к имени общего модуля»;
  • CommonModuleMissingAPI (3): общий модуль должен иметь экспортный метод и область «ПрограммныйИнтерфейс» или «СлужебныйПрограммныйИнтерфейс». В Нано-УТ экспортные функции есть, а областей нет, поэтому правило срабатывает.
Рис. 3. Список замечаний по Нано-УТ: 10 замечаний, 22 минуты трудозатрат, Low 6 и Info 4.

Рис. 3. Список замечаний по Нано-УТ: 10 замечаний, 22 минуты трудозатрат, Low 6 и Info 4.

Рис. 4. Сводка по проекту: 27 строк кода, Quality Gate Passed, дублирования 0,0 %, предупреждение последнего анализа.

Рис. 4. Сводка по проекту: 27 строк кода, Quality Gate Passed, дублирования 0,0 %, предупреждение последнего анализа.

В логе сканера есть предупреждение: «Failed to load platform contexts from 1C syntax helper: No 1C platform installations found on this machine». Сканер работал в контейнере, где платформы 1С нет; в интерфейсе у проекта при этом пометка «The last analysis has warnings». Как это влияет на набор диагностик, я не проверяла.

🔍 Отключение замечаний комментариями

Для сравнения я проверила маркер // @sonar-disable-next-line. На стенде с плагином 1.20.0 он не отключил MagicNumber. Рабочий формат описан в документации BSL LS: // BSLLS[:КлючДиагностики]-off и -on (допустимы -выкл и -вкл). Я прогнала каждый вариант отдельным файлом на правиле MagicNumber:

Приём Результат
// @sonar-disable-next-line над строкой замечание осталось
А = 100 * 3602; // BSLLS:MagicNumber-off эта строка не помечена, следующая помечена
// BSLLS:MagicNumber-off на строке выше, без -on не помечены все строки до конца файла
пара -off ... -on внутри пары не помечено, после -on помечено
// BSLLS:MagicNumber-выкл в конце строки работает так же, как -off
// BSLLS-off первой строкой модуля замечаний в модуле нет

В документации BSL LS форма в конце строки названа «для следующей строки», в наших пробах MagicNumber комментарий действовал на свою строку. Сам маркер @sonar-disable-next-line в пробном файле получил отдельное замечание правила UsingServiceTag (всего в пробах 11 замечаний: 10 по MagicNumber и это одно). Рабочий вариант (блок):

BSL UTF-8 Открыть файл
1
2
3
4
5
6
7
Функция Т() Экспорт
	// BSLLS:MagicNumber-off
	А = 100 * 3604;
	// BSLLS:MagicNumber-on
	Б = 100 * 3609;
	Возврат А + Б;
КонецФункции

Так выглядит проверенный файл: строка с А не помечена, строка с Б после -on помечена.

Пары -off и -on вкладываются: это описано в документации BSL LS. Семь отдельных файлов первоначального опыта проверяют приёмы из таблицы; отдельного теста вложенности в них нет.

📂 Кодировка исходников

Кодировка зависит от происхождения исходников. Отдельно от Нано-УТ я проверила выгрузку Конфигуратора в каталоге dump. В проверенной выгрузке Конфигуратора (/DumpConfigToFiles, платформа 8.3.27.2130) девять файлов .bsl имеют UTF-8 с BOM (байты EF BB BF в начале). Сканер с sonar.sourceEncoding=UTF-8 обработал такую выгрузку: 9 файлов, кириллица в сообщениях корректна. Windows-1251 в этой выгрузке не встретилась. В исходниках Нано-УТ четыре непустых модуля записаны в UTF-8 без BOM; ещё два файла содержат только BOM. Настройка UTF-8 подходит для обоих вариантов. Если у Вас иная версия платформы или иной способ выгрузки, кодировку нужно проверить самим, например открыв файл в редакторе с показом кодировки.

📦 Файл к статье

К публикации прикреплён готовый архив 1c-sonarqube-bsl-companion.zip (1 $m) со всеми материалами и скриптами, необходимыми для воспроизведения стенда:

  • docker-compose.yml — манифест сервиса SonarQube Community 26.10 с монтированием томов для плагинов и данных.
  • sonar-project.properties — профиль конфигурации SonarScanner для 1С (UTF-8, языковой плагин BSL).
  • run_scanner.sh / run_scanner.ps1 — кроссплатформенные скрипты запуска официального SonarScanner CLI в Docker.
  • nano_ut/src/ — комплект из 6 модулей BSL: демонстрация типовых замечаний, 7 эталонных директив BSLLS и модуль в UTF-8 с BOM платформы 1С.
  • verify_companion.py — автономный тестовый скрипт проверки целостности всех файлов стенда.
  • README.md — краткая пошаговая инструкция по запуску и настройке токенов.

Комплект протестирован в автономном окружении (100% PASS) и готов к использованию на локальной машине разработчика или на сервере CI.

🔍 Что не проверено

  • Работа на реальной конфигурации (сотни тысяч строк) и время анализа на ней. «Десятки минут» на большой кодовой базе - ожидание, не замер.
  • Запуск сканера без Docker (на хосте нет Java).
  • Quality Gate с собственными условиями, интеграция с CI.
  • Плагин для EDT: в FAQ BSL LS есть ссылка на сторонний проект ru.capralow.dt.bslls.validator. Я его не устанавливала; совместимость с современным EDT не проверена.
  • Собственные правила: документация для разработчиков BSL LS описывает диагностики как Java-классы внутри проекта. Механизма правил на JavaScript или TypeScript в документации нет.
  • Поведение при первом входе в интерфейс (запрос смены пароля по умолчанию): API принял учётные данные по умолчанию, интерфейс на первом входе в первоначальном опыте не проверялся.
  • Совместимость плагина с версиями SonarQube до 25.x: смотрите таблицу в README плагина.

📂 Источники

🏁 Итог

На стенде SonarQube Community 26.10 плагин BSL Community 1.20.0 добавил анализ BSL. Нано-УТ дала 10 замечаний на 27 строках кода; собственные ворота качества и нагрузка большой конфигурации в опыт не входили. Для MagicNumber в этих пробах сработали комментарии BSLLS: висячий комментарий на своей строке и пара -off / -on вокруг участка кода. Маркер @sonar-disable-next-line замечание не снял.

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

💬 Обсуждение

Используете ли вы SonarQube для контроля качества кода 1С в своих проектах, или отдаёте предпочтение SonarLint, BSL Language Server в VS Code / EDT или другим анализаторам? Какие правила плагина BSL Community вызывают больше всего ложных срабатываний на ваших конфигурациях? Поделитесь вашим опытом в комментариях.

 
Нинель Адольевна Щербакова
Нинель Адольевна Щербакова (Ninel_S)
Архитектор • SRE & DevOps инженер • HighLoad 1С
Автор 70 публикаций на Infostart. Разработчик NOPik, SRE-Suite-for-1C и мультиагентных ассистентов для экосистемы 1С:Предприятие.

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

SonarQube статический анализ BSL Language Server BSL SonarQube 1С плагин BSL Community sonar-scanner Docker качество кода 1С технический долг Quality Gate 1С-разработчик выгрузка конфигурации в файлы

См. также

Инструментарий разработчика Рефакторинг и качество кода Разработчик 1С 8.3 Абонемент ($m)

Проверила, что Analyzer 1C 2.7.65 умеет по руководству и по ответам его REST: граф вызовов, запросов и прав есть; готовых проверок правил команды и CLI для них в исследованной поставке не нашла. Записала договорённости команды правилами, сняла базовую линию на типовой УТ 11.5 (1776 старых нарушений по шести правилам) и на «Нано-УТ» заложила 5 новых: проверка нашла все пять, ложных 0. Прилагаются инструмент с 92 тестами и материалы опыта.

1 стартмани

29.10.2026    369    Ninel_S    0    

2

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

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

29.10.2026    295    YA_777378709    0    

4

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

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

28.10.2026    397    Pavel791    0    

2

Рефакторинг и качество кода HighLoad оптимизация Системный администратор Разработчик Стажер 1С 8.3 Абонемент ($m)

Если к HTTP-сервису 1С обращаются сразу несколько программ, сколько запросов в секунду он успеет обработать? Я опубликовала простой HTTP-сервис на нашей "подопытной" конфигурации «Нано-УТ» (файловая база, Apache, без прав администратора) и нагрузила его скриптом на Python. Ответ: около 15-16 запросов в секунду, сколько бы клиентов ни обращалось одновременно. Запросы ждут своей очереди, и при 32 клиентах ответ приходит через 2 секунды вместо 64 мс. Заодно разобрала скрипт из первого варианта статьи: он «проверял» сервер, который отвечал по одному, и считал ошибки вместе с успешными ответами. В архиве исправленный скрипт, учебный сервер, HTTP-сервис для 1С и инструкция по запуску.

1 стартмани

23.10.2026    467    Ninel_S    3    

2

Рефакторинг и качество кода Разработчик 1С 8.3 Абонемент ($m)

Запустили Analyzer 1C 2.7.65 на промышленной конфигурации (596 модулей, 13 669 функций) и исследовали перегруженные функции (до 1887 строк), циклические зависимости и экран «Циклы» (кольцо из 64 модулей). Разобрали, почему популярные метрики (McCabe, связность) не представлены в продукте вендора, и составили пошаговый план разделения модуля. Привели проверенный платформой 8.3.27 пример до и после рефакторинга и выявили скрытую ловушку загрузки модулей с точкой в имени.

9 стартмани

19.10.2026    406    Ninel_S    2    

2

Рефакторинг и качество кода EDT СКД Разработчик 1С 8.3 1С 8.5 1С:Бухгалтерия 3.0 Бесплатно (free)

Одиннадцать граблей схем компоновки, которые не видно в конструкторе и не ловит EDT, на реальных отчетах БП КОРП. Формат числа задается в двух местах, и условное оформление варианта перебивает формат поля. Ресурс складывает штуки с часами, и помогает выражение «только когда единица одна». Ресурс пуст в детальных записях, параметр не появляется в шапке без userSettingID, valueListAllowed ломает границы периода, Остатки и СрезПоследних с параметром периода падают с «Несоответствием типов», title без xsi:type дает «Исключение XDTO» при загрузке. В конце код проверки схемы из файла до обновления базы, сводная таблица и чеклист.

16.10.2026    425    Konstmax13    2    

2

Инструментарий разработчика Нейросети Рефакторинг и качество кода EDT Разработчик 1С 8.3 1С 8.5 1С:Бухгалтерия 3.0 Бесплатно (free)

Как ИИ-агент (Claude Code) работает в живом EDT-проекте 1С:Бухгалтерии КОРП 3.0: из чего собрать стенд с MCP-сервером для EDT, как ставить задачи агенту, где он ломает проект и какие проверки это ловят. Реальные случаи: рукописные метаданные, ронявшие конфигуратор; четыре дня зависшего обновления из-за порядка блоков в Rights.rights; ошибки, которые EDT пропускает, а платформа нет; сплошная сверка вместо «вроде работает». В приложении шаблон CLAUDE.md, шаблон правила, чеклист перед обновлением базы и скрипты проверки ролей и схем СКД.

15.10.2026    3333    Konstmax13    11    

11

Рефакторинг и качество кода Тестирование QA Разработчик 1С 8.3 Абонемент ($m)

Инженерный анализ влияния (Impact Analysis) при изменении общего метода в 1С:Предприятии: почему штатный поиск ссылок скрывает 99% зависимостей и как обратный обход графа вызовов выявляет 370 скрытых потребителей на глубине 3 уровней. В статье — верификация сквозной цепочки обмена с маркетплейсом; в архиве-компаньоне — автономный BFS-анализатор на Python, слепки графа и план регрессионного тестирования.

1 стартмани

12.10.2026    268    Ninel_S    0    

2
Для отправки сообщения требуется регистрация/авторизация