Кабинет
На этой странице

Инструменты · Код

code_action

A · действиепо подпискеизменяет проект

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

обновлено 30.09.2026плагин 0.2.0 · EDT 2025.2Предложить правку или письмом

Когда использовать

  • Переименовать метод так, чтобы обновились вызовы во всех модулях и проектах, — rename_method. Перед этим — code_graph и search с операцией references.
  • Изменить поведение метода типовой конфигурации из расширения — add_hook: сигнатура берётся у исходного метода, аннотация ставится сама.
  • У заимствованного или нового объекта нет модуля — init_module создаёт его со стандартными областями для своего вида.
  • Обычная правка одного метода — code_write.

Соседние инструменты домена «Код»

Операции

Операции code_action
operationЧто делаетНужно передать
rename_methodПереименовывает метод и обновляет места вызова во всех модулях открытых проектов. В ответе — старое и новое имя, число изменённых файлов и обновлённых ссылок.project, module_fqn, method, new_name
add_hookСоздаёт в модуле расширения метод-обёртку над методом базовой конфигурации с аннотацией &Перед, &После или &Вместо. Сигнатура читается у исходного метода; для &Вместо в тело добавляется ПродолжитьВызов(…). Поддерживает предпросмотр.project — расширение, module_fqn, kind, target_method, handler_name; по желанию body, area, dry_run
init_moduleСоздаёт пустой модуль со стандартными областями по виду модуля — например, для заимствованного в расширение объекта.project, module_fqn

Параметры

Параметры code_action
Параметр и типОбязательныйОписаниеПо умолчанию
projectстрокадаИдентификатор проекта рабочей области EDT — имя из ответа project_read (например, УТ2020). Для расширения — проект расширения.—
module_fqnстрокадаАдрес модуля: CommonModule.X, Catalog.X.ObjectModule, Catalog.X.ManagerModule, InformationRegister.X.RecordSetModule, <Тип>.X.Form.Y (модуль формы). Русские префиксы и суффиксы тоже принимаются.—
operationстрокадаОперация инструмента — значения и их смысл в таблице «Операции».значения: rename_method · add_hook · init_module—
methodстрокадля rename_methodДля rename_method: текущее имя метода.—
new_nameстрокадля rename_methodДля rename_method: новое имя.—
kindстрокадля add_hookДля add_hook: вид обёртки — Перед, После, Вместо (или Before, After, Around).—
target_methodстрокадля add_hookДля add_hook: имя метода в базовой конфигурации, который перехватывается.—
handler_nameстрокадля add_hookДля add_hook: имя нового метода-обёртки в расширении.—
bodyстроканетДля add_hook: дополнительный текст тела обёртки.—
areaстроканетДля add_hook: область #Область, куда поместить обёртку; по умолчанию СлужебныеПроцедурыИФункции. Отсутствующая стандартная область создаётся.—
skip_validationбулевонетДля add_hook: не проверять синтаксис после записи. Включайте, только если уверены.false
dry_runбулевонетТолько для add_hook: предпросмотр — ответ содержит diff и результат проверки синтаксиса, модуль не меняется. Для rename_method и init_module не поддерживается.false
titleстроканетНеобязательная подпись вызова до 40 символов: клиент показывает её в шапке карточки вызова. На результат не влияет.—

Таблица собрана из схемы инструмента, которую получает агент при подключении.

Адреса

Адрес модуля задаётся параметром module_fqn. Для add_hook проект — расширение, а модуль — модуль заимствованного объекта.

Адреса code_action
АдресЧто адресует
CommonModule.<Модуль>общий модуль — для переименования
Document.РеализацияТоваровУслуг.ObjectModuleмодуль объекта заимствованного документа — для перехвата и init_module

Пример вызова и ответа

аргументы code_action
{
  "project": "УТ2020.<Расширение>",
  "module_fqn": "Document.РеализацияТоваровУслуг.ObjectModule",
  "operation": "add_hook",
  "kind": "После",
  "target_method": "ОбработкаПроверкиЗаполнения",
  "handler_name": "<Префикс>_ОбработкаПроверкиЗаполненияПосле",
  "dry_run": true
}

Пример ответа в подготовке Устройство ответа — на странице Формат ответов.

Отказы и ошибки

Метод не найден

Имени нет в модуле или в базовой конфигурации — ответ предлагает ближайшие имена.

Предпросмотр для переименования

dry_run поддерживается только у add_hook: переименование меняет несколько файлов сразу. Сделайте снапшот перед вызовом.

failed · Unknown operation

Неизвестное значение operation. В ответе — fix_hint: supported: … со списком допустимых операций и секция Did you mean. Допустимо: rename_method, add_hook, init_module.

failed · лицензия

Без действующего ключа инструмент отвечает карточкой failed с сообщением лицензия: … и подсказкой, где ввести ключ; в секции Context — список инструментов, доступных без ключа. Подробнее — Лицензия и бесплатный доступ.

Ограничения

  • Переименование обновляет точные ссылки. Имя метода в строках — ОписаниеОповещения, ВыполнитьВФоне, выражения СКД — проверьте вручную: code_graph помечает такие связи видом string, search — классом possible.
  • Сразу после запуска EDT возможен ответ QUANTA_AST_NOT_READY — повторите через 5–30 секунд.
Нашли ошибку — предложите правку.обновлено 30.09.2026

Например: metadata_write, «порт занят», коллекционный адрес.

↑ ↓ выборEnter открыть/ или Ctrl K — открыть поиск