Сервис статического анализа кода 1С — Perf1C_Analyze

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

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

При первом входе видим окно интерфейса, для работы с сервисом надо добавить первый проект.

Для добавления нажимаем на меню добавления и выбираем пункт Добавить новый.

Добавить проект можно двумя способами — либо загрузить файлы в виде архива, либо прямым подключением к GitLab. Для файла архива поддерживается вариант как загрузки архива, сформированного из конфигуратора, так и архивирование папки проекта из EDT.

Сразу можно указать имя проекта. Если этого не сделать, то имя проекта будет задано по имени файла.

Загрузим файл. После добавления проекта его нужно первоначально проанализировать. Сделать это можно из двух мест.

Длительные операции отображаются в списке фоновых заданий

Для небольших конфигураций анализ обычно занимает около минуты, для конфигураций типа ЕРП УХ около 10 минут. После завершения анализа формируется дерево процедур и объектов.

Далее ищем нужную процедуру и производим ее анализ

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

На закладке Исходящие вызовы можно посмотреть дерево процедур, которые вызываются из данной процедуры. В каждую процедуру можно провалиться и выполнить ее анализ.

Есть возможность подсветить строку вызова.

Для более удобного разбора есть еще возможность показать весь модуль, в котором есть эта процедура, а также развернуть текст модуля процедуры на весь экран в модальном окне.

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

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

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

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *