Как в конфигураторе УТ 11 найти формы печати документов и сохранения их на диск

Программист 1С v8.3 (Управляемые формы) 1С:Управление торговлей Управленческий учет IT и автоматизация бизнеса
← На главную

В современных конфигурациях, таких как Управление торговлей 11, поиск конкретной формы может стать непростой задачей. Это связано с тем, что большинство механизмов реализовано на базе БСП (Библиотеки стандартных подсистем), где формы печати и сохранения являются общими для всей системы, а не принадлежат конкретному документу. Рассмотрим пошагово, как быстро и эффективно найти нужные нам объекты в конфигураторе.

Способ 1. Использование встроенных возможностей платформы (Режим разработчика)

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

  1. Прежде всего, нам необходимо убедиться, что 1С:Предприятие запущено в режиме разработчика. Для этого в параметрах запуска (в окне выбора баз) необходимо прописать ключ /Dev или включить соответствующую опцию в настройках конфигуратора.
  2. Запускаем программу, открываем нужный нам документ (например, Реализацию товаров и услуг) и нажимаем кнопку печати, чтобы открылась форма предпросмотра.
  3. В верхнем правом углу открывшейся формы находим кнопку с тремя точками (Сервис и настройки).
  4. В выпадающем меню выбираем пункт "Открыть в конфигураторе".

Этот метод является самым быстрым, так как платформа автоматически перенесет фокус в конфигураторе именно на ту форму, которая сейчас открыта перед пользователем. Если это форма печати, мы попадем в общую форму ПечатьДокументов.

Способ 2. Поиск через дерево метаданных и подсистемы

Если по какой-то причине интерактивный переход недоступен, мы можем воспользоваться структурным поиском. Выясним, где именно в дереве конфигурации спрятаны механизмы печати. Поскольку в УТ 11 используется БСП, нам нужно искать в общих формах, отфильтровав их по принадлежности к подсистемам.

Разберем алгоритм поиска через фильтр подсистем:

  1. Откроем дерево метаданных в конфигураторе.
  2. Найдем корень дерева (название конфигурации), нажмем правую кнопку мыши и выберем "Отбор по подсистемам".
  3. В открывшемся окне найдем ветку СтандартныеПодсистемы и выберем в ней подсистему Печать.
  4. После применения фильтра в разделе Общие формы останутся только те, что относятся к печати.

Среди них нас интересуют две ключевые формы:

Способ 3. Поиск через отладку и остановку приложения

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

  1. В конфигураторе перейдем в меню Отладка -> Остановить. В этот момент конфигуратор переходит в режим ожидания действия в пользовательском сеансе.
  2. Переходим в режим "1С:Предприятие" и нажимаем кнопку, вызывающую нужную нам форму (например, кнопку с дискетой "Сохранить").
  3. Программа мгновенно остановится на строчке кода, которая выполняется в данный момент.
  4. Используя Стек вызовов (Call Stack), мы сможем проследить всю цепочку: от нажатия кнопки до вызова метода ОткрытьФорму(). Это позволит нам точно определить имя вызываемой формы.

Способ 4. Программная логика и общие модули

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

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


Процедура ДобавитьКомандыПечати(КомандыПечати) Экспорт
	
    // Добавление команды печати комплекта
    КомандаПечати = КомандыПечати.Добавить();
    КомандаПечати.Идентификатор = "КомплектДокументов";
    КомандаПечати.Представление = НСтр("ru = 'Комплект документов'");
    КомандаПечати.ПроверкаПроведенности = Истина;
	
КонецПроцедуры

Именно через этот идентификатор система понимает, какие формы и модули задействовать при нажатии кнопки в интерфейсе.

Способ 5. Поиск по заголовку (Синониму)

Хотя этот метод считается менее надежным, так как заголовки часто формируются программно, мы можем попробовать найти форму по её синониму в дереве метаданных. В строке поиска конфигуратора введите "Печать" или "Сохранение". Если разработчики не переопределили заголовок в коде через свойство Заголовок, то форма СохранениеПечатныхФорм подсветится в списке общих форм.

Однако помните, что в УТ 11 заголовок окна сохранения может динамически меняться в зависимости от того, сохраняете вы один документ или целый архив. Поэтому программные методы поиска (через отладку или режим разработчика) всегда будут в приоритете.

Резюме по поиску

Для поиска форм печати и сохранения в УТ 11 мы рекомендуем следующий алгоритм действий:

  1. Сначала попробуйте кнопку "Открыть в конфигураторе" в режиме /Dev.
  2. Если кнопка отсутствует, проверьте общую форму ПечатьДокументов в ветке Общие -> Общие формы.
  3. Если нужно найти логику формирования файлов, ищите в общем модуле УправлениеПечатьюКлиент вызовы процедур сохранения.
  4. Для поиска специфики конкретного документа анализируйте его Модуль менеджера и процедуру ДобавитьКомандыПечати.

Таким образом, комбинируя знание архитектуры БСП и инструменты платформы, мы можем быстро ориентироваться даже в такой масштабной конфигурации, как "Управление торговлей".

← На главную