Большое спасибо Максиму Дерюшеву за существенные дополнения и замечания, которые позволили сделать эту публикацию лучше
-
Базовая информация об АПК
-
Настройка подключения к проверяемой базе и проверок по умолчанию
-
Проведение проверок
-
Результат проверки
-
Отчеты АПК
-
Правила проверки конфигураций
-
Фильтрация объектов при проведении проверок
-
Подведение итогов
В последнее время все чаще стали появляться публикации, нацеленные на выработку и поддержание качества разработки. На упорядочивание не только работы пользователей с результатами труда разработчиков, но и труда самих разработчиков 1С. Примерами могут служить как выступления на последних конференциях Инфостарт, так и ряд вебинаров, затрагивающих в том числе вопросы автоматизированного тестирования, код-ревью, применения инструментов, популярных в других ИТ-сферах. Часть хороших материалов есть в открытом доступе:
Открытый инструментарий счастливого 1С-ника
Пост-вебинар "Разработка через автоматизацию, в помощь типовому 1С-нику"
Разработка через автоматизацию, в помощь типовому 1С-нику
Разработка на 1С по промышленным стандартам
Действительно, сложность конфигураций 1С с каждым годом увеличивается, команды растут, выходят продукты, содержащие более 5 000 000 строк кода. Без упорядочивания потоков кода работать становится сложно. И речь не только о поддержании минимального порядка - префиксации новых объектов, соглашений о комментариях или раскидывании объектов по подсистемам. С ростом команд и усложнением конфигураций становится понятна необходимость придерживаться стандартов в более широком их понимании.
А чтобы не оставаться сапожниками без сапог, хорошо иметь для этих целей подходящие инструменты. На конференциях и вебинарах, в том числе перечисленных выше, предлагаются интересные инструменты. В то же время достаточно малоизвестная конфигурация от самой фирмы 1С тоже заслуживает внимания. Как вы уже поняли из названия публикации, продукт этот называется “Автоматизированная проверка конфигураций”. Он бесплатен, доступен каждому пользователю (формально для использования требуется доступ к ИТС), достаточно прост в использовании, но пока что не очень распространен.
Отчасти это объясняется тем, что фирма 1С сама активно продвигает идею соблюдения стандартов и использования подходящих для этого инструментов только среди разработчиков тиражных решений через сертификацию “1С:Совместимо”. Влияние идеи соблюдения стандартов и чистоты кода в отношении широких масс разработчиков, не занимающихся тиражными решениями, чувствуется гораздо слабее. Даже ознакомление с основными стандартами разработки находится под условным замком - наличием доступа к ИТС (информация устарела, в настоящее время, на 2018-2019 год, доступ открыт без регистрации):
Базовая информация об АПК
Конфигурация АПК предназначена для автоматического поиска ошибок и отклонений от стандартов в конфигурациях. Ее применение рекомендовано фирмой 1С еще с 2009 года, причем не только в фирмах-разработчиках тиражных решений, но и для прочих компаний, в которых производится доработка и адаптация типовых решений:
https://1c.ru/news/info.jsp?id=10018
Первое впечатление о конфигурации может дать страница на сайте 1С:
На ней описаны основные возможности этого инструмента и сказано, что он помогает:
-
соблюдать типовые стандарты разработки и выполнять платформенные проверки конфигурации
-
создавать и соблюдать собственные правила проверки конфигурации
-
соблюдать стандарты, требуемые для получения статуса 1С:Совместимо
-
выполнять проверки по расписанию
-
проверять орфографические ошибки
-
присваивать выявленным ошибкам конфигурации различные статусы, в том числе отмечать их как “особенности” не требующие исправления
-
выполнять рассылку сообщений об ошибках ответственным сотрудникам и собственно назначение ответственных за различные объекты
-
слегка облегчать процесс проведения проверки самостоятельно выполняя некоторые действия вроде обновления конфигурации демо-базы из хранилища, возможности поэтапной проверки и т.д.
-
упомянута даже возможность интеграции с СППР
Другим источником общей информации может служить публикация в интернет-журнале PCMagazine:
Помимо этих обзорных материалов, информации в сети по АПК и ее применению почти нет. Хорошей новостью является то, что в поставку самой конфигурации включено руководство пользователя в формате PDF. Некоторые вопросы раскрыты в руководстве не так подробно, как хотелось бы. Но все же руководство есть и позволяет научиться выполнять основные приемы при работе с конфигурацией.
Для того, чтобы не повторять руководство пользователя здесь будет рассмотрен пример применения АПК для проверки типовой конфигурации, а не демо-конфигурации из поставки АПК. Также попробуем рассмотреть детали работы, о которых в руководстве не сказано.
Начнем с нуля. Загрузить последнюю версию АПК можно по следующей ссылке:
https://releases.1c.ru/project/ACC
На момент публикации этой статьи последним релизом является 1.1.12.26 от 30.01.17, но сначала она писалась для версии 1.1.11.16, поэтому часть скриншотов и замечаний будет относится к этой версии. Для работы с АПК 1.1 потребуется платформа версии не ниже 8.3.6. После установки поставки конфигурации в списке шаблонов конфигураций появляются три новых пункта:

Первый шаблон - это чистая база АПК. Все стандартные правила в ней присутствуют, но нет загруженных данных о демо-базе для тестирования, которые присутствуют во втором шаблоне.
Второй шаблон “Автоматизированная проверка конфигурации (демо)” после разворачивания содержит загруженную информацию о демо базе (находящейся в третьем шаблоне). Его можно использовать, чтобы посмотреть как работают отчеты и стандартные проверки. Лучше всего работу с этой базой изучать вооружившись руководством пользователя из поставки, так как примеры в руководстве рассчитаны именно на эту демо-базу:

АПК работает таким образом, что при выполнении новых проверок загружает информацию из проверяемой конфигурации через COM-соединение. Для этого ей нужна существующая файловая “подопытная” база. Поэтому если есть желание не только ознакомиться с интерфейсом демо-базы, но провести полный цикл с работы с проверяемой базой, то имеет смысл также развернуть еще одну файловую базу из третьего шаблона “Демонстрационная конфигурация для тестирования”.
В этом случае получим две базы данных - одна демонстрационная АПК с уже загруженной информацией о проверяемой Демо-базе и сама проверяемая Демо-база, позволяющая быстро ознакомиться с процессом подключения и проведения новых проверок.
Отмечу, что после экспериментов с демо-базами чистую базу АПК можно и не разворачивать. Проверки рабочих конфигураций можно выполнять на той же конфигурации что и проверки демо-базы. В АПК можно загрузить информацию о любом количестве проверяемых баз.
Вообще принцип работы АПК похож на работу “Конвертации данных”. Работа в конфигураторе АПК не требуется (хотя, как станет понятно далее, без нее вряд ли получится обойтись совсем). Информация о структуре проверяемых конфигураций загружается в пользовательском режиме. В нем же задаются и алгоритмы проверок конфигурации в виде кода на языке 1С:Предприятия, который затем самой системой исполняется с помощью оператора “Выполнить”. В коде можно и нужно применять встроенные в АПК (не платформенные) методы - процедуры и функции, которые выполняют работу с автоматически создаваемыми объектами. Объекты необходимые для проведения проверки конфигурации создаются самой системой и становятся доступны в коде обработчиков проверок. Подробное описание этих методов, объектов и обработчиков можно получить из 6-ой главы "Руководства пользователя".
Конфигурация АПК почти полностью построена на справочниках, регистрах сведений и обработках. В общем если вы знакомы с “Конвертацией данных” то принципы работы с АПК будут понятны. Более того, если не возникнет явной необходимости в собственных алгоритмах проверок, то сначала можно будет ограничиться стандартными проверками и не изучать встроенные методы и программные объекты системы. Тогда почти всю настройку можно сделать мышкой и кажется, что для многих задач этого будет достаточно.
Настройка подключения к проверяемой базе и проверок по умолчанию
После запуска демо базы перед нами предстает такой интерфейс:

Предназначение разделов с точки зрения разработчиков АПК можно прочитать в руководстве. Мы же пойдем по порядку и сначала добавим новую конфигурацию. Нажмем на кнопку “Новая конфигурация”. Система предложит заполнить параметры подключения. Фактически открывается форма элемента справочника “Конфигурации” :

Наименование и полное наименование - это произвольные текстовые поля, только чувство прекрасного и длина поля может ограничить вас в том, что будет в них указано. А вот дальше ограничения более жесткие. Нужно указать полный путь к исполняемому файлу платформы 1С. В более ранних версиях АПК дополнительно нужно указать версию платформы с которой идет работа. Напомню, что АПК может проверять конфигурации только на платформе версии 8.3.6 и выше.
Информация от разработчиков:
Если будет указан путь к платформе ниже, то при COM-соединении будет выдана ошибка. Причина в следующем. В связи с развитием платформы и новых проверок АПК собираются сведения (свойства метаданных), появившиеся только в платформе 8.3.6 или выше. Таким образом, при проверке на версии, например, 8.2 при сборе таких сведений, естественно, будет выдана ошибка. А так как эти новые проверки, как правило, являются приоритетными, то выставлен запрет на запуск проверки ниже, чем 8.3.6. В обратном случае (если клиенту принципиальная версия платформы ниже), то предполагается, что для проверки своей конфигурации он может воспользоваться предыдущими версиями АПК.
Далее нужно указать путь к демо-базе и параметры подключения к ней. Под демо-базой в данном случае понимается не что иное, как специально выделенная файловая база, которая содержит в себе проверяемую конфигурацию. Возможностей для подключения SQL базы в АПК нет. При желании это можно доработать, но большого смысла в этом нет. Во первых выполняется просто проверка конфигурации, а не юнит-тестирование или нагрузочное тестирование. В этом случае даже для крупных конфигураций вроде ERP 2 достаточно просто пустой файловой базы, содержащей актуальную конфигурацию. Во вторых, в соответствии со стандартами 1С любая конфигурация должна быть рассчитана на работу не только с SQL-базой но и на работу в файловом варианте.
Если у вас ведется разработка с применением хранилища, то АПК способна автоматически обновить конфигурацию базы данных из хранилища перед выполнением нового тестирования. Для этого предназначена нижняя группа параметров на скриншоте.
Замечу также, что СППР как и АПК требует файловой базы для загрузки информации о конфигурации. Поэтому если вы решили вести разработку с применением технологий, предлагаемых 1С, с применением АПК и СППР, то для обоих этих систем будет достаточно создать одну файловую базу, при необходимости подключив ее к хранилищу конфигураций и настроив автоматическое обновление конфигурации из хранилища перед загрузкой данных.
Выбор между режимами “Конфигурация” и “Библиотека” определяет жесткость проверок. Для режима “Библиотека” проверки жестче. Библиотека - это конфигурация встраиваемая в другие, а значит она должна удовлетворять определенным правилам и “думать не только о себе”. Если навести курсор на оба варианта переключателя, то выплывет подсказка с описанием различий проверки. В частности, для библиотеки будут проверены все выбранные требования. Для конфигурации не проверяются требования из группы "Разработка и использование библиотек" вне зависимости от того, выбраны они или нет. Данная группа требований содержит очень долговременные правила проверки, предназначенные действительно только для библиотек.
Важный момент для версии 1.1.11.16 и более ранних версий АПК (в верии 1.1.12.26 эта ошибка устранена). После того, как настройки заданы и элемент справочника “Конфигурации” записан, можно проверить подключение. Но в первый раз система может выдать ошибку об отсутствии подключения.

Это обманчивое сообщение. Если пути и пользователи заданы правильно просто нужно предварительно записать элемент этого справочника и только потом проверять подключение. Тогда система отчитается об успешном подключении. Проверка подключения к большой базе, например ERP может занимать до 1-2 минут:

Фактически сейчас мы создали новый элемент справочника "Конфигурации". Теперь открыть его можно разными способами:
- Через меню “Настройки” -
Вступайте в нашу телеграмм-группу Инфостарт