Перейти к содержимому

Каталог стандартов

Полный каталог стандартов — для быстрого поиска и планирования доработок. Таблица собирается из самих страниц стандартов при сборке, так что новый стандарт появляется здесь автоматически. Фильтр ищет по id, заголовку, краткому описанию, типам задач и тегам.

Всего стандартов: 48 (директив: 40, рекомендаций: 8).

Интеграции

IDСтандартУровеньТипы задачТеги
STD-INT-001Идемпотентность обработчиков обменаОбработчик приёма данных не создаёт дублей при повторной доставке сообщенияДирективаintegration, migration-updateобмен, надёжность
STD-INT-002Единый security-паттерн для HTTP-интеграцийHTTP-интеграции используют общий security-модуль (аутентификация, интроспекция токена, XDTO-валидация)Директиваintegration, security-infrahttp, безопасность, аутентификация
STD-INT-003Тело HTTP-запроса может прийти в UTF-16LE — читать бинарноТело входящего HTTP читается как двоичные данные с детектом UTF-16LE по NUL-байтуДирективаintegrationhttp, кодировки
STD-INT-004NUL-байт ломает XML/XDTO и запись в ЖР — чистить входТекст из внешнего источника чистится от Символ(0) перед записью в ЖР и сериализацией в XML/XDTOДирективаintegrationкодировки, xdto, обработка-ошибок
STD-INT-005Долгие и большие операции интеграций — асинхронноДолгий внешний вызов уходит в фоновое задание; помним про таймаут 300с и лимиты на размер телаДирективаintegration, optimizationhttp, надёжность, производительность
STD-INT-006Предпочитать HTTP/REST вместо COM и внешних компонентНовые интеграции строятся на HTTP/REST; COM и внешние компоненты — только с обоснованиемДирективаintegrationhttp, безопасность, обмен
STD-INT-007JWT для машинных интеграцийДля машинных HTTP-интеграций вместо логина/пароля использовать JWT (платформа ≥ 8.3.21)Рекомендацияintegrationаутентификация, безопасность, http
STD-INT-008WAF перед 1С и служебные пути платформыWAF учитывает служебный трафик 1С (пустой User-Agent, /e1cib/tempstorage/) и логирует реальный IPРекомендацияintegrationбезопасность, http, надёжность
STD-INT-009Минорные изменения интеграций — обратная совместимость контрактаДействующий контракт меняется только обратно совместимо — добавлением необязательных полей; переименование, смена типа или обязательности — это новая версия с периодом сосуществованияДирективаintegration-minorобмен, совместимость, http, надёжность
STD-INT-010Паспорт интеграции — обязательная документацияУ каждой интеграции есть актуальный паспорт — контракт, аутентификация, владельцы, поведение при ошибках; обновляется в той же задаче, что и кодДирективаintegration, integration-minorдокументация, обмен, надёжность
STD-INT-011ЭДО — массовая отправка пачками и сопоставление входящихМассовая отправка/подписание ЭДО идёт пачками или фоном без конфликта параллельных пользователей; ошибка одного документа не валит пачку; входящие сопоставляются с 1С по устойчивому ключу идемпотентноДирективаintegration, integration-minorэдо, обмен, надёжность, идемпотентность

Общие

IDСтандартУровеньТипы задачТеги
STD-GEN-001Короткие транзакции и каноничный шаблонТранзакция короткая, без внешних вызовов и диалогов внутри; оформлена каноничным шаблоном НачатьТранзакцию/ПопыткаДирективаposting-register, integration, external-processingтранзакции, надёжность, проведение
STD-GEN-002Структура модуля и областейМодуль оформлен по стандартной структуре областей; экспортный API — только в ПрограммныйИнтерфейсДирективаbase, extension, form-uiструктура-кода
STD-GEN-003Обработка ошибок и логированиеПойманное исключение пишется в ЖР с контекстом; «молчаливые» исключения запрещеныДирективаbaseобработка-ошибок, логирование
STD-GEN-004Секреты в безопасном хранилище; техпользователь с минимальными правамиСекреты — в безопасном хранилище БСП; интеграции — от техпользователя с узкой рольюДирективаbase, integration, access-roles, security-infraсекреты, безопасность
STD-GEN-005Интерфейсные тексты через НСтрИнтерфейсные строки оформлены НСтр; данные ИБ формируются на языке ИБ, а не пользователяДирективаbase, report-skd, form-uiлокализация
STD-GEN-006Код-стайл: корпоративные дополненияGuard-операторы, ограничение вложенности, префиксы объектов КИ_/ДД_, каноничный шаблон транзакцийРекомендацияbaseструктура-кода, обработка-ошибок, запросы, транзакции
STD-GEN-007Грабли расширений (CFE) и переименования конфигурацииРоль CFE раздаёт права только на заимствованные объекты; InternalInfo не править; переименование конфигурации — отдельная операцияДирективаextension, migration-updateрасширения, миграции
STD-GEN-008Паттерны работы с БСП (вход, профили доступа, допреквизиты)Неочевидные модели данных БСП: управление входом через объект Пользователи, персональные ГД в шапке, допреквизит одним пакетным запросомРекомендацияbase, access-rolesбсп, запросы
STD-GEN-009Паттерны СКД (галочка-отбор, заголовок поля внешнего набора)Пользовательский отбор как одиночная галочка через FilterItemGroup; заголовок поля dataSet — в dcsset:title, иначе XDTO-ошибкаРекомендацияbase, report-skd, external-reportскд, запросы
STD-GEN-010Минимум серверных вызовов в формахСерверные вызовы формы пакетируются (нет вызова сервера в цикле); тяжёлая логика — в общих модулях; форма — не APIДирективаform-uiпроизводительность, структура-кода
STD-GEN-011Проверка ОбменДанными.Загрузка в обработчиках событийОбработчики ПередЗаписью/ПриЗаписи/ПередУдалением начинаются с проверки ОбменДанными.ЗагрузкаДирективаposting-register, integrationобмен, надёжность
STD-GEN-012Обработчики обновления ИБ — идемпотентные и порционныеИзменение структуры данных сопровождается обработчиком обновления; обработчик идемпотентен, логирует и не валит обновление целикомДирективаmigration-updateмиграции, надёжность, логирование
STD-GEN-013Роли — минимальные привилегии, свои роли под префиксомПрава добавляются своей ролью под префиксом, а не правкой типовых; роль даёт минимум; проверка прав — через ПравоДоступаДирективаaccess-roles, security-infraбезопасность, бсп
STD-GEN-014Регламентные задания — ошибки в ЖР, защита от параллельного запускаОбработчик регламентного задания перехватывает ошибки с записью в ЖР, защищён от параллельного запуска и безопасен при повтореДирективаscheduled-jobsнадёжность, логирование
STD-GEN-015Общие модули и слои — где живёт логикаБизнес-логика в серверных общих модулях, интеграции в адаптерах; признак «Вызов сервера» — осмысленноРекомендацияbaseструктура-кода, производительность
STD-GEN-016Внешние отчёты и обработки — подключение через БСП, версия, безопасный режимВнешний файл подключается через БСП «Дополнительные отчёты и обработки» с заполненной регистрацией (вид, версия, назначение), безопасный режим не отключён без обоснования, исходник в gitДирективаexternal-processing, external-report, external-print-formвнешние-обработки, безопасность, бсп
STD-GEN-017Внешние печатные формы — пакетная печать и один запрос на данныеВПФ реализует стандартный интерфейс печати БСП, получает данные одним запросом по всему массиву ссылок, заполняет ОбъектыПечати и не трогает типовые макетыДирективаexternal-print-formпечатные-формы, внешние-обработки, запросы
STD-GEN-018Внешние обработки, меняющие данные — прогон на копии, предпросмотр, след в ЖРОбработка массового изменения данных сначала показывает, что изменит, пишет порциями с фиксацией прогресса и оставляет след в ЖР; прод — только после прогона на копииДирективаexternal-processingвнешние-обработки, надёжность, логирование, транзакции
STD-GEN-019Сверка и контроль данных — полнота, критерии, судьба расхожденияСверка берёт полные данные с обеих сторон за явный период, сопоставляет по устойчивому ключу, а найденное расхождение попадает в отслеживаемый процесс (не в чат) и обрабатывается идемпотентноДирективаreconciliationсверка, запросы, надёжность, идемпотентность
STD-GEN-020Автозаполнение реквизитов документов — предсказуемо и в нужный моментАвтозаполнение реквизита срабатывает в чётко определённый момент, не молча перетирает ручной ввод пользователя и переносит данные ссылкой, а не хрупким разыменованиемДирективаposting-register, form-uiзаполнение-документов, проведение, надёжность
STD-GEN-021Закрытый период и дата запрета редактированияКод, пишущий документы и движения, учитывает дату запрета редактирования — не падает и не молчит на закрытом периоде, а обрабатывает его осознанно; временное снятие запрета возвращаетсяДирективаposting-register, external-processing, reconciliationзакрытый-период, проведение, надёжность
STD-GEN-022Автосоздание документа на основании — идемпотентно, полно, с обработкой отказаАвтоматически создаваемый по основанию документ не задваивается при повторе, заполняется полностью из основания, проводится с обработкой отказа и оставляет след в ЖРДирективаdocument-autocreationзаполнение-документов, идемпотентность, проведение, надёжность

Оптимизация

IDСтандартУровеньТипы задачТеги
STD-OPT-001Не выполнять однотипные запросы в циклеОднотипные данные получать одним запросом, а не серией запросов в циклеДирективаoptimization, report-skd, posting-register, external-report, external-print-form, integrationзапросы, производительность
STD-OPT-002Проверять пустой результат запроса методом Пустой()Наличие строк проверяйте через Запрос.Выполнить().Пустой(), не выгружая результатДирективаoptimizationзапросы, производительность
STD-OPT-003Отбор по субконто ставить на правильный уровень запросаТяжёлый отбор по субконто/составному измерению выносится на нужный уровень запроса и замеряется по плануДирективаoptimization, posting-registerзапросы, производительность, проведение
STD-OPT-004Изменения в горячих местах сопровождать перф-прогономИзменение в проведении/закрытии месяца/обмене сопровождается замером до/после или аргументациейДирективаoptimization, posting-registerпроизводительность, транзакции
STD-OPT-005Измеренный RTO, регулярный тестовый restore и проходящий ТиИДля боевых баз есть измеренный RTO, регулярный тестовый restore и проходящий по регламенту ТиИРекомендацияoptimizationнадёжность, производительность
STD-OPT-006Соединения в запросах — без подзапросов и виртуальных таблицВ соединениях не участвуют подзапросы и виртуальные таблицы — только временные таблицы; поля левых соединений закрыты ЕСТЬNULLДирективаoptimization, report-skd, posting-register, external-reportзапросы, производительность

Процесс

IDСтандартУровеньТипы задачТеги
STD-PROC-001Исходники в git, линт и quality gate как условие мерджаИзменение принимается только при зелёном BSL LS / quality gate в CI; main защищён, мердж — через MR с ревьюДирективаbasegit, ревью
STD-PROC-002Ревью и шаблон описания измененияКаждое изменение проходит ревью по чеклисту и оформлено по шаблону (задача, как проверить, как откатить)Директиваbaseревью
STD-PROC-003Документация обновляется вместе с задачейИзменил поведение, контракт или настройку — обнови соответствующий документ в той же задаче; у экспортных методов программного интерфейса есть описаниеДирективаbaseдокументация, ревью, структура-кода
STD-PROC-004Реестр регламентных заданийНетиповое или изменённое регламентное задание внесено в реестр — что делает, расписание, зависимости, кого будить; реестр обновлён в той же задачеДирективаscheduled-jobsдокументация, надёжность
STD-PROC-005Контуры баз — прод, тест, копииИзменения идут по контурам dev → тест → прод; в проде не разрабатываем, на тестовых копиях отключены обмены, рассылки и регламентные заданияДирективаbase, security-infraдокументация, надёжность, безопасность
STD-PROC-006ADR — записи архитектурных решенийРешение с долгосрочными последствиями фиксируется короткой ADR-записью — контекст, варианты, решение, последствияРекомендацияbaseдокументация, ревью
STD-PROC-007Инструкции пользователей при изменении UIЗаметное пользователю изменение интерфейса или сценария сопровождается обновлением инструкции или памяткой «что изменилось» до выкатаДирективаform-uiдокументация
STD-PROC-008Инвентаризация и гигиена доступа — базы, публикации, пользователиЕсть актуальный реестр баз и веб-публикаций; пользователи инвентаризированы (способ входа, админ-роли, право запуска клиента и открытия внешних обработок); парольный веб-вход не создаётся, старые копии и публикации закрываютсяДирективаaccess-roles, security-infraбезопасность, документация, секреты
STD-PROC-009Приёмочные и регрессионные сценарии изменения бизнес-логикиУ изменения бизнес-логики есть проверенные приёмочные сценарии — позитивный, негативный, граничный — и прогнан регресс смежных процессовДирективаbusiness-logicтестирование, ревью