Где искать документ в дереве метаданных и как добраться до его форм и модулей
Содержание
Чтобы открыть документ в конфигураторе 1С, запустите базу кнопкой Конфигуратор, выполните Конфигурация → Открыть конфигурацию, раскройте ветку Документы в дереве метаданных и дважды щёлкните нужный документ. Откроется окно редактирования объекта: реквизиты, табличные части, формы, макеты и модули.
Типичная ситуация: бухгалтер жалуется, что «Реализация» не проводится, а печатная форма счёта выводит не ту дату. Программист открывает базу в режиме конфигуратора, находит документ и за пару минут видит, какой модуль отвечает за проведение и где лежит макет. Без блужданий по дереву это получается, даже если внутреннее имя документа заранее неизвестно.
Чем конфигуратор отличается от режима «Предприятие» и где лежат документы
В 1С 8.3 одна и та же база запускается в двух режимах. Они решают разные задачи, и путать их не стоит.
| Режим | Что вы видите | Для чего |
|---|---|---|
| 1С:Предприятие | Конкретные документы с номерами, датами и суммами | Ввод и проведение данных, отчёты |
| Конфигуратор | Описание документа: состав полей, формы, код | Разработка, правка форм и алгоритмов, отладка |
Главное следствие: в конфигураторе нельзя открыть «Реализацию № 125 от 3 марта». Там открывается объект метаданных — шаблон, по которому создаются все реализации. Сам документ с данными смотрят в пользовательском режиме.
Дерево метаданных устроено по видам объектов:
- 📁
Общие— подсистемы, общие модули, роли, общие формы; - 📁
Константы,Справочники— нормативно-справочные данные; - 📁
Документы— все виды документов конфигурации; - 📁
Журналы документов,Отчёты,Обработки; - 📁
Регистры сведений,Регистры накопления,Регистры бухгалтерии— куда документ пишет движения.
Внутри каждого документа есть подчинённые ветки: Реквизиты, Табличные части, Формы, Команды, Макеты.
Как запустить конфигуратор и открыть дерево метаданных
Через окно запуска
- Откройте окно запуска 1С:Предприятия.
- Выделите базу в списке.
- Нажмите кнопку
Конфигуратор. - Введите пользователя и пароль, если в базе настроена авторизация.
- В открывшемся конфигураторе выберите
Конфигурация → Открыть конфигурацию.
Слева появится дерево метаданных. Если оно уже открыто при запуске, пятый шаг пропустите.
Нет кнопки Конфигуратор в окне запуска? Скорее всего, на компьютере установлен только тонкий клиент. Конфигуратор входит в состав толстого клиента — доустановите этот компонент из дистрибутива платформы.
Из командной строки
Удобно, когда баз много или нужен ярлык для быстрого входа. Для файловой базы:
"C:\Program Files\1cv8\8.3.24.1548\bin\1cv8.exe" DESIGNER /F"D:\Bases\Buh" /N"Администратор" /P"пароль"
Для клиент-серверной базы вместо /F указывают сервер и имя базы:
"C:\Program Files\1cv8\8.3.24.1548\bin\1cv8.exe" DESIGNER /S"srv1c\buh_prod" /N"Администратор"
Номер версии в пути подставьте свой — посмотрите папку C:\Program Files\1cv8\.
Какие права нужны
Войти в конфигуратор может пользователь с административными правами. В типовых конфигурациях это роль Полные права или профиль администратора. Обычному бухгалтеру конфигуратор недоступен — и это правильно.
Для простого просмотра документа монопольный режим не нужен: открыть дерево и посмотреть код можно, пока в базе работают пользователи.
Как открыть документ в конфигураторе: три способа найти объект
Способ 1. Через ветку «Документы»
- В дереве метаданных раскройте ветку
Документы(щелчок по треугольнику слева). - Найдите документ по имени. Список отсортирован так, как его упорядочил разработчик, обычно по алфавиту.
- Дважды щёлкните по документу — откроется окно редактирования объекта.
Альтернатива двойному щелчку: выделите документ и нажмите Enter или выберите в контекстном меню Изменить.
Способ 2. Через строку поиска дерева
В типовой БП 3.0 больше 200 документов. Листать долго, поэтому:
- Щёлкните в поле поиска над деревом метаданных.
- Наберите часть имени:
Реализация,Поступление,Авансовый. - Дерево отфильтруется, останутся только подходящие объекты.
Ищите по фрагменту внутреннего имени: оно пишется слитно, без пробелов, например ПоступлениеТоваровУслуг.
Способ 3. Узнать внутреннее имя в пользовательском режиме
Внутреннее имя документа часто не совпадает с тем, что видит пользователь. «Реализация (акт, накладная, УПД)» в БП 3.0 — это объект РеализацияТоваровУслуг. Чтобы не гадать:
- Откройте нужный документ в режиме 1С:Предприятие.
- Нажмите
Shift+F11или кнопку со значком ссылки в заголовке формы — «Получить ссылку». - Скопируйте ссылку вида:
e1cib/data/Документ.РеализацияТоваровУслуг?ref=8f3a00155d0a6b0111ee5c...
Часть после Документ. и есть имя объекта метаданных. Введите его в поиск дерева — и документ найден точно.
Что внутри окна документа: вкладки, модули, движения
Окно редактирования объекта — это набор вкладок. Каждая отвечает за свою часть поведения документа.
| Вкладка | Что настраивается |
|---|---|
Основные | Имя, синоним, комментарий |
Подсистемы | В каких разделах интерфейса виден документ |
Нумерация | Длина и тип номера, периодичность, автонумерация |
Данные | Реквизиты и табличные части |
Движения | Проведение, оперативное проведение, регистры для движений |
Формы | Основные формы документа, списка и выбора |
Команды | Команды объекта |
Макеты | Печатные формы и другие макеты |
Прочее | Кнопки Модуль объекта и Модуль менеджера |
Где лежит код документа
У документа два модуля, и в них разный код:
- 🧩 Модуль объекта — обработчики событий конкретного экземпляра:
ПередЗаписью,ОбработкаПроведения,ОбработкаЗаполнения,ОбработкаПроверкиЗаполнения; - 🧩 Модуль менеджера — процедуры для всех документов вида сразу: подготовка данных для печати, запросы для проведения, команды печати.
Открыть модуль
можно тремя путями: кнопкой на вкладке Прочее, через контекстное меню документа в дереве (Открыть модуль объекта, Открыть модуль менеджера) или из окна свойств.
В типовых конфигурациях БП 3.0 и УТ 11 основная логика проведения вынесена в модуль менеджера и общие модули. В модуле объекта часто только вызов: «подготовить параметры → передать менеджеру». Если не нашли алгоритм в модуле объекта, ищите в модуле менеджера процедуры с «Проведение» в имени.
Как найти, откуда вызывается процедура
В открытом модуле поставьте курсор на имя процедуры и нажмите F12 — конфигуратор перейдёт к её определению, даже если она в общем модуле. Для поиска по всей конфигурации используйте глобальный поиск через меню Правка: он покажет все модули, где встречается строка.
Как открыть форму документа и разобраться с макетами и СКД
Форма документа
- В окне документа перейдите на вкладку
Формы. - Посмотрите, какие формы назначены основными: формы документа, списка и выбора.
- Дважды щёлкните по форме, например
ФормаДокумента.
Откроется редактор управляемой формы. В нём три зоны:
- 🗂 Элементы (слева вверху) — дерево полей, групп, таблиц и кнопок;
- 🗂 Реквизиты и команды (справа вверху) — данные формы, главный реквизит
Объект, команды формы; - 🖼 Предпросмотр (внизу) — как форма выглядит у пользователя.
Внизу редактора есть закладки Форма и Модуль. На закладке Модуль — клиентские и серверные процедуры формы: ПриСозданииНаСервере, ПриОткрытии, обработчики полей.
Чтобы найти обработчик конкретного поля, выделите элемент в дереве, откройте его свойства (Alt+Enter) и посмотрите раздел События. Щелчок по значку лупы рядом с событием перенесёт в код.
Форма списка и динамический список
Форма списка документов строится на динамическом списке. Откройте её, найдите реквизит Список и откройте его свойства. Там видно:
- основную таблицу (например,
Документ.РеализацияТоваровУслуг); - флажок «Произвольный запрос» — если он включён, список выводится по запросу, который можно открыть и изменить в конструкторе.
Это первое место, куда смотреть, когда в журнале документов «пропала» колонка или появились лишние строки.
Макеты и схема компоновки данных
На вкладке Макеты лежат шаблоны печатных форм. Табличный документ открывается двойным щелчком — видны области, параметры и оформление.
Иногда среди макетов документа встречается макет типа «Схема компоновки данных». СКД там используется для выборки данных, например при подготовке печатной формы или отбора. Двойной щелчок открывает конструктор схемы: наборы данных, поля, параметры, настройки.
В типовых БП 3.0 и ЗУП 3.1 многие печатные формы лежат не в самом документе, а в общих макетах или подключаются через подсистему печати. Если на вкладке Макеты нужного бланка нет, ищите в ветке Общие → Общие макеты или в модуле менеджера процедуру, которая формирует печать.
Как отлаживать документ: точки останова при записи и проведении
Открыть код мало — часто нужно увидеть, что происходит при проведении конкретного документа. Для этого есть отладчик.
Пошагово
- Откройте модуль объекта или менеджера документа.
- Найдите процедуру проведения, например:
Процедура ОбработкаПроведения(Отказ, РежимПроведения)
// здесь формируются движения документа
КонецПроцедуры
- Поставьте курсор на строку внутри процедуры и нажмите
F9— слева появится красная точка останова. - Запустите пользовательский режим с отладкой:
Отладка → Начать отладкуилиF5. - В 1С:Предприятии откройте нужный документ и нажмите
Провести. - Выполнение остановится на точке, а конфигуратор выйдет на передний план.
Клавиши отладчика
| Действие | Клавиша |
|---|---|
| Поставить или снять точку останова | F9 |
| Шагнуть в процедуру | F11 |
| Шагнуть через строку | F10 |
| Выйти из процедуры | Shift+F11 |
| Продолжить выполнение | F5 |
| Вычислить выражение | Shift+F9 |
В окне «Вычислить выражение» можно посмотреть значение любой переменной, например ЭтотОбъект.Номер или результат запроса, который проведение выбрало из базы.
Отладка на сервере
В клиент-серверной базе серверный код документа выполняется на сервере 1С. Чтобы точки останова в нём срабатывали, отладка должна быть разрешена на сервере: служба агента сервера запускается с ключом -debug.
Перезапуск службы сервера 1С обрывает все сеансы пользователей — договоритесь об окне, когда в базе никого нет, или делайте это на тестовом сервере. Отлаживать документы рабочей базы на продуктиве вообще лучше не стоит: остановка на точке держит транзакцию и может заблокировать работу коллег.
К уже запущенному сеансу можно подключиться через Отладка → Подключение.
Если документ открывается, но не редактируется
Конфигурация на поддержке
У типовых конфигураций объекты стоят на поддержке поставщика. Значок замка у документа в дереве означает: смотреть можно, менять нельзя. Включить изменения:
Конфигурация → Поддержка → Настройка поддержки.- Кнопка
Включить возможность изменения. - Для документа выберите правило «Объект поставщика редактируется с сохранением поддержки».
Цена такого решения — каждое следующее обновление придётся проводить через сравнение и объединение конфигураций, а это дольше и требует квалификации.
Расширение — путь безопаснее
Чтобы поменять форму или поведение документа, не снимая типовую с поддержки, используйте расширение:
Конфигурация → Расширения конфигурации→ добавить новое расширение.- В основной конфигурации щёлкните по документу или его форме правой кнопкой →
Добавить в расширение. - Внесите изменения в заимствованный объект внутри расширения.
- Обновите конфигурацию базы данных (
F7) для расширения.
Расширения появились в платформе 8.3.6. Типовые обновления ставятся поверх без объединения, а доработка остаётся в расширении.
Хранилище конфигурации
Если база подключена к хранилищу, объект нужно захватить: правая кнопка по документу → Захватить в хранилище. Пока объект захвачен другим разработчиком, вы увидите его только на чтение.
Конфигурация базы данных
Ещё один вариант просмотра — Конфигурация → Конфигурация базы данных → Открыть конфигурацию БД. Это та версия, с которой сейчас работают пользователи. Она открывается только на чтение и помогает понять, отличается ли основная конфигурация от рабочей: например, кто-то внёс правки и не обновил базу.
Что мешает открыть документ в конфигураторе и как это исправить
Перед любыми правками документа в конфигураторе выгрузите копию: Администрирование → Выгрузить информационную базу в конфигураторе даёт файл .dt. Если изменение затрагивает реквизиты, для обновления структуры базы (F7) понадобится монопольный доступ — пользователей придётся попросить выйти.