Разработка и Конфигурация · 10 мин
Как изменить форму документа поступления в 1С
Как изменить форму документа поступления в 1С: через конфигуратор, расширение и механизм «Изменить форму». Разбор способов, рисков, типичных ошибок и проверки результата.
Форма документа «Поступление товаров и услуг» (или «Поступление (акты, накладные, УПД)» в БП 3.0) — один из самых часто дорабатываемых объектов в 1С. Пользователи просят добавить колонку, вывести дополнительный реквизит, изменить порядок полей или убрать лишние элементы. Способ доработки зависит от того, какая у вас конфигурация: типовая на поддержке, типовая с возможностью изменения или самописная.
Существует три рабочих подхода: пользовательская настройка формы через меню «Ещё → Изменить форму», доработка через расширение конфигурации и прямое изменение в конфигураторе. Они отличаются глубиной возможностей, рисками и влиянием на будущие обновления. Ниже разобран каждый способ с конкретными шагами, ограничениями и проверкой результата.
Определите, какой способ изменения формы вам подходит
Прежде чем открывать конфигуратор, ответьте на два вопроса: что именно нужно изменить и стоит ли конфигурация на полной поддержке. Если задача — переставить поля, скрыть ненужные колонки табличной части или изменить порядок закладок, достаточно встроенного механизма настройки формы, доступного даже без прав разработчика.
Если требуется добавить новый реквизит, вывести данные из связанного справочника, изменить заголовок поля программно или добавить кнопку с обработчиком — понадобится расширение или конфигуратор. Расширение предпочтительнее: типовая конфигурация остаётся на поддержке, и обновления устанавливаются в штатном режиме.
Как выбрать действие
Способ 1: настройка формы через «Изменить форму» без программирования
Откройте любой документ поступления в режиме 1С:Предприятие. В правом верхнем углу нажмите кнопку «Ещё» и выберите пункт «Изменить форму». Откроется окно настройки, где в виде дерева показаны все элементы формы: поля шапки, табличные части, колонки, группы и командные панели.
В этом окне можно установить или снять флажок видимости у элемента, перетащить элемент выше или ниже, изменить состав колонок табличной части «Товары» или «Услуги». После нажатия «ОК» форма перестроится, и настройка сохранится. В большинстве типовых конфигураций настройка сохраняется для текущего пользователя; администратор может скопировать её другим пользователям через механизм копирования настроек.
- 1Откройте документ поступления в режиме 1С:Предприятие
- 2Нажмите «Ещё» → «Изменить форму»
- 3В дереве элементов включите или отключите видимость нужных полей и колонок
- 4Перетащите элементы для изменения порядка
- 5Нажмите «ОК» и проверьте вид формы
- 6При необходимости скопируйте настройку другим пользователям через «Администрирование» → «Настройки пользователей и прав»
Ограничение способа: нельзя добавить элемент, которого нет в структуре формы, изменить заголовок поля или задать логику. Если нужного реквизита в списке нет — переходите к расширению.
Способ 2: доработка формы через расширение конфигурации
Расширение — рекомендуемый способ для типовых конфигураций. Откройте конфигуратор, перейдите в меню «Конфигурация → Расширения конфигурации» и создайте новое расширение с понятным именем, например «ДоработкиПоступления». Задайте префикс, который будет добавляться к именам новых объектов, чтобы избежать конфликтов при обновлении.
В основной конфигурации найдите документ «ПоступлениеТоваровУслуг», раскройте его формы, вызовите контекстное меню на нужной форме (обычно «ФормаДокумента») и выберите «Добавить в расширение». Форма появится в расширении, и её можно изменять: добавлять реквизиты формы, элементы, команды и обработчики событий.
Новый реквизит объекта (например, «НомерСчетаПоставщика») также добавляется через расширение: в контекстном меню документа выберите «Добавить в расширение», затем добавьте реквизит в заимствованный объект. После этого перетащите реквизит на форму в нужное место и привяжите к элементу «Поле формы».
Добавление программной логики в расширении
Для заимствованной формы доступны обработчики событий: «ПриСозданииНаСервере», «ПриОткрытии», «ПередЗаписью» и другие. В расширении обработчик объявляется с директивой «&После» или «&Вместо». Используйте «&После», если нужно дополнить типовое поведение, и «&Вместо» — только когда типовой код требуется полностью заменить, понимая, что при обновлении типовой обработчик перестанет выполняться.
&После("ПриОткрытии")
Процедура Расш1_ПриОткрытии(Отказ, СтандартнаяОбработка)
Элементы.НомерСчетаПоставщика.Видимость = Истина;
КонецПроцедурыСпособ 3: изменение формы в конфигураторе напрямую
Прямая доработка оправдана для самописных конфигураций или когда расширение не справляется (например, нужно изменить структуру типового макета формы, недоступную для заимствования). Сначала снимите конфигурацию с полной поддержки: «Конфигурация → Поддержка → Настройка поддержки», включите возможность изменения.
Откройте документ поступления, перейдите на закладку «Формы», откройте основную форму документа. В редакторе формы слева — дерево элементов, справа — предпросмотр, внизу — свойства выбранного элемента. Добавляйте элементы через контекстное меню «Добавить», связывайте их с реквизитами формы или объекта, настраивайте свойства: заголовок, видимость, доступность, ширину.
После внесения изменений обновите конфигурацию базы данных (клавиша F7). Если добавляли реквизиты объекта, система предложит реструктуризацию — на больших базах она может занять продолжительное время, выполняйте её в нерабочее время и после резервного копирования.
Проверка результата после изменения формы
После любого способа доработки проверьте форму в трёх режимах: открытие существующего документа, создание нового документа и копирование. Убедитесь, что новые поля отображаются, сохраняются и не сбрасываются при перепроведении. Проверьте также форму списка документов — иногда доработку нужно продублировать там.
Если изменения делались через расширение, проверьте работу под пользователем без прав разработчика и без административных прав: убедитесь, что новые реквизиты доступны на чтение и запись. При необходимости настройте права через профили групп доступа.
Как проверить результат
Форма открывается без ошибок, новые элементы на месте
Ошибка «Поле не найдено» или пустая форма
Документ записывается и проводится, данные новых полей сохраняются
Значения сбрасываются или возникает ошибка записи
У обычного пользователя поля доступны согласно настройке
Поля недоступны или выдаётся ошибка нарушения прав
Расширение остаётся совместимым, форма работает
После обновления форма перестаёт открываться
Типичные ошибки при изменении формы поступления
Самая частая ошибка — добавление реквизита на форму без добавления его в объект: поле отображается, но данные не сохраняются. Вторая по частоте — использование «&Вместо» там, где достаточно «&После», что приводит к потере типовой функциональности после обновления.
Ещё одна проблема — изменение формы в конфигураторе при работающих пользователях без перевода базы в монопольный режим: обновление конфигурации базы данных завершится ошибкой. Также пользователи нередко путают форму документа и форму списка, дорабатывая не ту.
Ограничения и когда привлекать специалиста
Пользовательская настройка «Изменить форму» не позволяет добавлять новые данные и логику — только управлять отображением существующего. Расширение не поддерживает изменение некоторых элементов типовых форм, защищённых механизмами БСП, и не позволяет менять состав табличных частей объекта произвольно в некоторых сценариях.
К специалисту по 1С стоит обратиться, если требуется сложная бизнес-логика (проверки, заполнения на основании других данных), если доработка должна работать в распределённых базах или если после самостоятельных изменений форма перестала открываться. Откатить неудачное расширение просто: отключите его в списке расширений, и типовая форма восстановится.
Что важно запомнить
Начинайте с простого: «Ещё → Изменить форму» решает задачи видимости и порядка полей. Для новых реквизитов и логики используйте расширение — оно сохраняет обновляемость типовой конфигурации. Прямая правка в конфигураторе — крайняя мера. Перед любыми изменениями делайте резервную копию, после — проверяйте открытие, запись и права обычных пользователей.
Частые вопросы
Можно ли изменить форму поступления без прав администратора?
Настройка через «Ещё → Изменить форму» доступна большинству пользователей и сохраняется персонально. Создание расширений и работа в конфигураторе требуют прав разработчика и административных прав на базу.
Почему после обновления конфигурации мои изменения формы пропали?
Если форма менялась напрямую в конфигураторе, при обновлении типовые объекты заменяются, и доработки теряются. Изменения через расширение и пользовательские настройки формы обновлению не мешают и сохраняются.
Как добавить колонку в табличную часть «Товары»?
Если колонка уже существует в данных, но скрыта — включите её через «Ещё → Изменить форму». Если нужен новый реквизит табличной части, добавьте его в табличную часть документа через расширение или конфигуратор, затем выведите на форму.
Изменения через «Изменить форму» применятся у всех пользователей?
По умолчанию настройка сохраняется для текущего пользователя. Администратор может скопировать настройки другим пользователям через раздел «Администрирование» → «Настройки пользователей и прав» → «Копирование настроек».
Что делать, если после доработки форма перестала открываться?
Если использовалось расширение — отключите его в списке расширений конфигурации, форма вернётся к типовому виду. Если правка была в конфигураторе — восстановите конфигурацию из резервной копии или верните типовую форму через сравнение с конфигурацией поставщика.
Можно ли изменить форму только для одного вида операции поступления?
Да. В типовых конфигурациях вид операции влияет на состав элементов формы. В расширении или конфигураторе можно программно управлять видимостью элементов в зависимости от значения реквизита «ВидОперации» в обработчике «ПриОткрытии» или при изменении операции.