К статье
Практический материал

Администрирование · 10 мин

Диагноз 1С: что это и зачем нужна диагностика конфигурации

Что такое диагностика 1С, как сервис 1С:Диагностика проверяет конфигурации, какие ошибки находит и как подготовить базу к проверке.

Под «диагнозом 1С» обычно понимают результат автоматической проверки конфигурации — анализ, который показывает, насколько корректно написан код, соблюдены ли стандарты разработки и где в базе скрыты потенциальные ошибки. Чаще всего термин связан с сервисом «1С:Диагностика» от фирмы «1С» и с встроенными механизмами проверки конфигурации в режиме «Конфигуратор».

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

Важно понимать: диагностика не исправляет ошибки автоматически. Она формирует перечень замечаний с указанием объекта, строки модуля и типа проблемы. Дальше каждое замечание нужно разобрать вручную: часть — реальные ошибки, часть — рекомендации, часть — ложные срабатывания, которые можно осознанно проигнорировать.

Что именно проверяет диагностика 1С

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

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

Третье направление — производительность. Диагностика выявляет запросы в циклах, обращения к базе внутри обходов выборки, отсутствие индексов по часто используемым полям, избыточные соединения таблиц. Именно эти замечания чаще всего объясняют жалобы пользователей на «тормоза».

Синтаксические ошибкиКод не работает или падает

Вызовы несуществующих методов, неверные параметры

Нарушения стандартовРиск при обновлении

Обход типовых механизмов, прямые запросы к служебным данным

Проблемы производительностиМедленная работа

Запросы в циклах, неоптимальные соединения

Ошибки прав доступаСбои у пользователей

Обращения к объектам, на которые нет прав

Сервис «1С:Диагностика»: как он устроен

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

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

Доступ к сервису предоставляется в рамках договора 1С:ИТС соответствующего уровня. Перед использованием стоит уточнить текущие условия доступа в информационной системе 1С:ИТС, поскольку состав сервисов и требования могут меняться.

Штатная проверка конфигурации в конфигураторе

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

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

Дополнительно полезен инструмент «Тестирование и исправление» (меню «Администрирование»). Он проверяет уже не код, а данные: физическую целостность таблиц, ссылочную целостность, наличие «битых» ссылок. Перед запуском обязательно сделайте резервную копию — режимы с включённым исправлением изменяют данные необратимо.

Порядок базовой диагностики
  1. 1
    Сделайте резервную копию базы через выгрузку в dt или средствами СУБД
  2. 2
    Откройте конфигуратор и выполните «Конфигурация → Проверка конфигурации» со всеми режимами
  3. 3
    Изучите список ошибок и отсортируйте их по критичности
  4. 4
    Запустите «Тестирование и исправление» на копии базы в режиме только проверки
  5. 5
    Проанализируйте найденные проблемы данных и спланируйте исправление
  6. 6
    После исправлений повторите проверку и убедитесь, что критичные ошибки устранены

Как разбирать замечания диагностики

Главная ошибка при работе с диагностикой — пытаться «обнулить» список замечаний любой ценой. Правильный подход — классифицировать. Критичные ошибки (несуществующие методы, битые ссылки, обращения без прав) исправляют в первую очередь. Замечания по производительности оценивают по фактическому влиянию: запрос в цикле в обработке, которая запускается раз в месяц на сотне записей, менее опасен, чем тот же запрос в проведении документа.

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

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

Типичные ошибки при диагностике
01
Запуск «Тестирования и исправления» на рабочей базе без копии — риск необратимой потери данных
02
Исправление всех замечаний подряд без анализа — сломанная логика там, где замечание было ложным
03
Проверка только синтаксиса — пропущенные проблемы производительности и прав
04
Отсутствие повторной проверки после исправлений — новые ошибки остаются незамеченными

Когда диагностики недостаточно

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

Также диагностика не анализирует фактическую нагрузку. Если жалобы связаны с медленной работой, дополнительно используют технологический журнал, замеры производительности и мониторинг СУБД. Комбинация статической диагностики кода и анализа реальной нагрузки даёт полную картину.

Маршрут решения

Какой инструмент выбрать

Нужно быстро найти ошибки в коде доработокПроверка конфигурации в конфигураторе со всеми режимами
Готовите решение к сертификации или аудиту по стандартамСервис 1С:Диагностика с разбором замечаний по стандартам
Пользователи жалуются на сбои и потерю данныхТестирование и исправление на копии базы
Жалобы на медленную работуЗамеры производительности и анализ технологического журнала

Как проверить результат после исправлений

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

Затем выполните контрольные операции в пользовательском режиме: проведите типовые документы, сформируйте основные отчёты, проверьте обмены, если они есть. Только сочетание «чистая диагностика + рабочие сценарии выполняются» можно считать признаком успешного результата.

Контрольные точки

Как проверить результат

Повторная проверка конфигурации
Норма

Критичные ошибки отсутствуют

Тревожный признак

Появились новые ошибки в изменённых модулях

Проведение типовых документов
Норма

Документы проводятся без сообщений об ошибках

Тревожный признак

Ошибки при проведении или неверные движения

Работа под обычным пользователем
Норма

Нет ошибок прав доступа

Тревожный признак

Сообщения о нарушении прав при типовых операциях

Частые вопросы о диагностике 1С

Чем «1С:Диагностика» отличается от проверки в конфигураторе?

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

Можно ли запускать «Тестирование и исправление» на рабочей базе?

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

Диагностика показала сотни замечаний. С чего начать?

Отсортируйте по критичности: сначала ошибки, ломающие работу (несуществующие методы, битые ссылки, права), затем проблемы производительности в часто выполняемом коде, в конце — стилистические нарушения. Замечания в редко используемых механизмах можно планировать отдельными итерациями.

Найдёт ли диагностика причину медленной работы базы?

Только частично: она выявляет заведомо неоптимальные конструкции в коде. Но медленная работа может быть связана с сервером, СУБД, блокировками, объёмом данных. Для таких случаев нужны замеры производительности, анализ технологического журнала и мониторинг на уровне СУБД.

Нужно ли исправлять все замечания по стандартам?

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

Как часто стоит проводить диагностику?

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

Итог

Что важно запомнить

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