Проверка программного кода посредством BSL LS

30.05.22

Разработка - Инструментарий разработчика

Во время разработки необходимо следить за качеством кода и соответствием его стандартам. Да, есть SonarQube, но его использование не всегда удобно. Проверка будет происходить только после того, как код пушится в git и делается пул реквест, что увеличивает время обнаружения ошибок Для решения таких проблем и была создана эта обработка. Она позволяет проверять код практически на лету. Достаточно скопировать текст модуля и вставить его в соответствующее поле обработки, задать параметры проверки (при необходимости) и запустить проверку.

Скачать файлы

Наименование Файл Версия Размер
Проверка программного кода посредством BSL LS:
.epf 21,29Kb
7
.epf 1.0 21,29Kb 7 Скачать

Для работы обработки необходим развернутый на компьютере BSL LS. Я использовал разработку из открытого репозитория https://github.com/1c-syntax/bsl-language-server/. Документацию по его установке и принципах работы можно найти в этом же репозитории. Не будем рассматривать здесь это подробно.

Обработка имеет мультиязычный интерфейс на двух языках: русском и английском. Код написан в англоязычном синтаксисе 1С. Может быть использована в международных компаниях.

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

Проверка выполняется с параметрами. Параметры могут быть использованы по умолчанию (как есть в репозитории), либо заданы самостоятельно в виде настроек на форме. Настройки можно сохранять и загружать из файлов в формате json. Возможно использовать настройки SonarQube, но возможно потребуется удалить служебные тэги типа "$schema".

Результат анализа представляет собой табличный документ. В колонке LIne находится номер проблемной строки кода в модуле. Рядом описание проблемы.

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

Проверять можно как русскоязычный так и англоязычный синтаксисы.

Разрабатывалось и тестировалось на платформе версии 8.3.18.1741.

См. также

INFOSTART TECH EVENT 2023, 11-13 октября, Санкт-Петербург

Инструментарий разработчика Мобильная разработка DevOps и автоматизация разработки Администрирование СУБД Мероприятия Россия Платные (руб)

XIII конференция по управлению и технологиям автоматизации учета на платформе 1С:Предприятие, которая пройдет в Санкт-Петербурге и соберет 1500 участников из разных регионов России и мира.

5100 руб.

09.12.2022    30068    5    0    

418

Онлайн-интенсив "DevOps для 1С". с 4 сентября по 17 октября 2023 г.

Инструментарий разработчика DevOps и автоматизация разработки DevOps для 1С Платные (руб)

Данный онлайн-курс (интенсив) предусматривает изучение процессов, инструментов и методик DevOps, их применение при разработке на платформе 1С. 

20.06.2023    9710    0    Infostart    2    

120

SALE! %

Infostart Toolkit: Инструменты разработчика 1С 8.3 на управляемых формах

Инструментарий разработчика Роли и права Запросы СКД Платформа 1С v8.3 Управляемые формы Запросы Система компоновки данных Конфигурации 1cv8 Платные (руб)

Набор инструментов программиста и специалиста 1С для всех конфигураций на управляемых формах. В состав входят инструменты: Консоль запросов, Консоль СКД, Консоль кода, Редактор объекта, Анализ прав доступа, Метаданные, Поиск ссылок, Сравнение объектов, Все функции, Подписки на события и др. Редактор запросов и кода с раскраской и контекстной подсказкой. Доработанный конструктор запросов тонкого клиента. Продукт хорошо оптимизирован и обладает самым широким функционалом среди всех инструментов, представленных на рынке.

12000 10000 руб.

02.09.2020    93193    474    380    

530

PowerTools

Инструментарий разработчика Инструменты администратора БД Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Россия Платные (руб)

Универсальный инструмент программиста для администрирования конфигураций. Сборник наиболее часто используемых обработок под единым интерфейсом.

3600 руб.

14.01.2013    170068    1050    0    

791

Автоматизация труда программиста. Библиотека прикладных функций

Инструментарий разработчика Платформа 1С v8.3 Платформа 1C v8.2 Платформа 1С v8.1 Конфигурации 1cv8 Платные (руб)

Программист - это человек, непрерывно принимающий решения. Написание кода не является процессом принятия решения - это всего лишь трансляция ваших желаний. Если вас периодически тяготит написание сотен строк кода ради решения задач, то прошу обратить внимание. Данный продукт позволит существенно сократить время на рутинные операции при разработке. За счет библиотечной реализации сокращается объём кода, а его читаемость повышается. К библиотеке прилагается документация API и шаблоны кода для наиболее популярных методов.

4200 руб.

16.04.2021    12437    3    9    

9

Многопоточность. Универсальный «Менеджер потоков» 2.1

Инструментарий разработчика Платформа 1С v8.3 Конфигурации 1cv8 Россия Платные (руб)

Восстановление партий или взаиморасчетов, расчет зарплаты, пакетное формирование документов или отчетов - теперь все это стало доступнее. * Есть желание повысить скорость работы медленных алгоритмов! Но... * Нет времени думать о реализации многопоточности? * о запуске и остановке потоков? * о поддержании потоков в рабочем состоянии? * о передаче данных в потоки и как получить ответ из потока? * об организации последовательности? Тогда ЭТО - то что надо!!!

5000 руб.

07.02.2018    96417    234    97    

285

Менеджер конфигураций 1С

Инструментарий разработчика Платные (руб)

Менеджер конфигураций 1С — альтернативный стартер информационных баз 1С:Предприятие.

1439 руб.

21.02.2023    5210    2    33    

14

Как проверять код на языке 1С с помощью BSL Language Server

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

Некоторые разработчики на платформе 1С не проверяют свой код ни на соответствие стандартам 1С, ни на самые распространённые ошибки кодирования. И если раньше они могли оправдываться отсутствием инструментов для этого, то с появлением BSL Language Server оправданий больше нет.

13.01.2023    5737    aleksei_adamov    10    

49
Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. sytkosa 119 31.05.22 20:44 Сейчас в теме
(0) Автор молодец. Хорошее начинание. Готов выложить ее на github для дальнейшего развития проекта ?
2. burlakov 79 01.06.22 09:03 Сейчас в теме
(1) Можно! Сделаю открытый репозиторий. Ссылку размещу здесь. Спасибо!
falkongm; cprit; +2 Ответить
3. i_lo 214 07.06.22 01:01 Сейчас в теме
4. myvov 06.07.23 16:27 Сейчас в теме
Интересная разработка.

у меня последнее время очень много связано с переделкой всяких запросов, и вот один гигантский не могу победить.

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

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

можете более детально рассказать как обработка работает по логике, я пока ее копаю, но я уже все сроки с этим запросом спустил. Помогите чем сможите
5. myvov 07.07.23 06:30 Сейчас в теме
Извините не туда написал.
Оставьте свое сообщение