Review BSL code for 1C:Enterprise 8.3.27 anti-patterns and PTM standards violations. Use when reviewing BSL modules, checking for deprecated methods, wrong constructor forms, missing directives, forbidden modal calls, unsafe queries, or transaction errors.
get_errors → на все изменённые .bsl файлы
| ❌ Антипаттерн | ✅ Правильно | Категория |
|---|---|---|
Новая Структура | Новый Структура | Конструктор |
Новое Соответствие | Новый Соответствие | Конструктор |
ЗначениеВСтроку() | ЗначениеВСтрокуВнутр() | Устаревшее |
СтрокаВЗначение() | ЗначениеИзСтрокиВнутр() | Устаревшее |
ТекущаяДата() | ТекущаяДатаСеанса() | Устаревшее |
Найти() | СтрНайти() | Устаревшее |
ЭтаФорма | ЭтотОбъект | Устаревшее |
Вопрос() | ВопросАсинх() | Модальность |
Предупреждение() | ПредупреждениеАсинх() | Модальность |
ОткрытьФормуМодально() | ОткрытьФормуАсинх() | Модальность |
Сообщить() | СообщениеПользователю с привязкой | Методология |
РольДоступна() | ПравоДоступа() | Безопасность |
&НаКлиенте, &НаСервере, &НаСервереБезКонтекста)#Область ... #КонецОбластиАсинх/ЖдатьВопрос, Предупреждение, ВвестиЧисло и т.д.)ОписаниеОповещения + callback — допустимая альтернативаЕСТЬNULL для LEFT/RIGHT/FULL соединенийВЫБРАТЬ ПЕРВЫЕ без УПОРЯДОЧИТЬ ПОУстановитьПараметр() (не конкатенация строк!)ОБЪЕДИНИТЬ ВСЕ вместо ОБЪЕДИНИТЬНачатьТранзакцию → Попытка → Зафиксировать/ОтменитьОтменитьТранзакцию() в блоке ИсключениеВызватьИсключение после ОтменитьТранзакцию()Выполнить() с переменной (инъекция кода)Вычислить() с внешними даннымиУстановитьПривилегированныйРежим(Истина) без обоснованияУстановитьБезопасныйРежим(Ложь)Если ОбменДанными.Загрузка Тогда Возврат; КонецЕсли;Движения.<Регистр>.Записывать = Истина; инициализация## Результат ревью BSL
### Критические (блокируют деплой)
- [ ] Файл:Строка — описание проблемы
### Важные (рекомендуется исправить)
- [ ] Файл:Строка — описание проблемы
### Замечания (на усмотрение)
- [ ] Файл:Строка — описание замечания