При работе со старыми конфигурациями 1С (такими как УПП 1.3, КА 1.1 или БП 2.0) программисты часто сталкиваются с ситуацией, когда на форме документа в режиме «Предприятие» таблица видна, а в конфигураторе её найти не удается. Типичный пример — таблица РасшифровкаПлатежа в документе «Платежное поручение входящее». Разберем подробно, почему это происходит и как правильно добавить новую колонку, чтобы она корректно работала и сохраняла данные.
В обычных формах 1С часто используется элемент управления Панель. Это мощный инструмент, который позволяет группировать реквизиты на разных страницах (закладках). Однако в целях экономии экранного пространства разработчики типовых решений часто отключают свойство Отображать закладки. В этом случае визуально в редакторе формы вы видите только содержимое первой страницы, а остальные остаются «спрятанными» под ней.
Таблица РасшифровкаПлатежа обычно располагается на одной из таких скрытых страниц. Она активируется программно или при переключении пользователем режима отображения (например, при нажатии кнопки «Список» или установке флага «Редактировать список»).
Проанализируем самый быстрый и надежный способ найти любой элемент на форме, даже если он скрыт за пятью слоями панелей. Воспользуемся встроенным инструментом конфигуратора — Списком элементов управления.
РасшифровкаПлатежа.После этого система автоматически выделит этот элемент в окне редактора формы. Даже если страница панели скрыта, вы увидите границы табличного поля. Чтобы визуально переключиться на нужную страницу панели в редакторе, можно использовать кнопки-стрелки в верхней части элемента Панель или изменить текущую страницу в свойствах панели на вкладке Страницы.
Прежде чем добавлять визуальную колонку, мы должны подготовить «фундамент» для хранения данных. Если вы просто добавите колонку в элемент управления Табличное поле, введенные пользователем данные не будут сохраняться в базе данных. Рассмотрим правильный порядок действий:
РасшифровкаПлатежа.ДополнительнаяИнформация) и укажем соответствующий тип данных (Строка, Число или ссылка на справочник).Только после того, как реквизит появился в структуре документа, мы можем возвращаться к форме.
Теперь, когда мы нашли таблицу и подготовили данные, добавим колонку в интерфейс. Пройдем по шагам:
РасшифровкаПлатежа на форме и выберем пункт Добавить колонку.ПолеВвода).В типовых конфигурациях 1С таблица расшифровки часто заполняется автоматически при выборе договора, счета или через обработку «Подбор». Если мы не внесем правки в программный код, наша новая колонка может очищаться при автоматических пересчетах. Рассмотрим, какие процедуры стоит проверить.
Во-первых, проанализируем модуль формы. Ищем процедуры, отвечающие за обновление итогов и заполнение строк. Если ваша колонка должна участвовать в расчетах, добавьте логику в обработчик события ПриИзменении:
Процедура РасшифровкаПлатежаПриИзменении(Элемент)
СтрокаТаблицы = ЭлементыФормы.РасшифровкаПлатежа.ТекущиеДанные;
Если СтрокаТаблицы <> Неопределено Тогда
// Здесь можно описать логику, если данные в новой колонке
// должны на что-то влиять, например:
// РассчитатьСуммуСУчетомДопПараметра(СтрокаТаблицы);
КонецЕсли;
КонецПроцедуры
Во-вторых, обратите внимание на глобальный поиск по конфигурации. Если таблица заполняется при нажатии кнопки «Заполнить», найдите процедуру с названием вроде ЗаполнитьРасшифровкуПлатежа. Она может находиться как в модуле формы, так и в общем модуле (например, ДенежныеСредстваСервер или РаботаСДиалогами).
При работе с обычными формами важно учитывать настройки привязок (Anchors). Если вы добавили колонку и она «наезжает» на другие элементы или таблица начинает вести себя странно при изменении размера окна, проверьте Установку привязок. Убедитесь, что новое поле ввода внутри колонки корректно растягивается вместе с формой.
Также стоит проверить свойство Только просмотр. В некоторых режимах работы документа (например, если платежка уже проведена или помечена на удаление) форма может блокировать редактирование всех колонок. Убедитесь, что ваша новая колонка подчиняется общей логике доступности формы.
Подведем итог: секрет «исчезнувших» таблиц в 1С кроется в использовании многостраничных панелей без ярлыков. Использование горячих клавиш Ctrl + Shift + L позволяет мгновенно обнаружить любой объект, а соблюдение последовательности «Реквизит ТЧ -> Колонка формы -> Программная логика» гарантирует стабильную работу вашей доработки.