К статье
Практический материал

Разработка и Конфигурация · 11 мин

Как обновить форму документа в 1С

Как обновить форму документа в 1С: обновление конфигурации, динамическое обновление, обновление печатных форм и типовых макетов. Частые ошибки и решения.

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

Чаще всего проблема выглядит так: конфигурацию обновили, всё прошло без ошибок, но пользователи видят старую форму документа. Причина почти всегда в кэше метаданных на клиентских компьютерах или в том, что обновление конфигурации базы данных не было выполнено до конца. Реже речь идёт о расширениях конфигурации, которые «перекрывают» типовую форму, или о внешних печатных формах, подключённых через механизм дополнительных отчетов и обработок.

Определите, какая именно форма требует обновления

Прежде чем что-то менять, установите, о какой форме идёт речь. В 1С у документа есть несколько форм: форма объекта (сам документ), форма списка, форма выбора, а также печатные формы, которые формируются по макетам. Проблемы с ними решаются по-разному, и ошибочная диагностика приводит к лишней работе.

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

Старые поля в открытом документеНе применилась форма объекта

Проверьте, выполнено ли обновление конфигурации базы данных и нет ли расширений

Устаревший печатный бланкПроблема в макете или внешней печатной форме

Проверьте раздел «Дополнительные отчеты и обработки» и состав макетов

Форма отличается у разных пользователейКэш метаданных на клиенте

Очистите кэш на проблемном компьютере

Форма изменилась после доработки, но не виднаИзменения в расширении или не сохранена конфигурация

Проверьте список расширений и статус обновления конфигурации БД

Обновление формы через обновление конфигурации

Штатный способ применить изменения формы — обновить конфигурацию базы данных. Откройте конфигуратор под пользователем с правами администратора и проверьте статус: меню «Конфигурация» → «Конфигурация базы данных». Если пункт «Обновить конфигурацию базы данных» активен, а в заголовке окна есть признак отличия конфигураций — обновление выполнено не полностью.

Нажмите клавишу F7 или выберите «Конфигурация» → «Обновить конфигурацию базы данных». Если изменения затрагивают структуру данных (добавлены реквизиты документа), платформа покажет окно реструктуризации — подтвердите «Принять». После завершения попросите пользователей перезайти в программу: сеанс, открытый до обновления, продолжает работать со старыми метаданными.

Порядок обновления конфигурации базы данных
  1. 1
    Откройте конфигуратор и убедитесь, что конфигурация поддерживается или изменения внесены корректно
  2. 2
    Выполните «Конфигурация» → «Обновить конфигурацию базы данных» (F7)
  3. 3
    Подтвердите реструктуризацию, если платформа её запросит
  4. 4
    Дождитесь завершения и проверьте отсутствие ошибок в окне сообщений
  5. 5
    Попросите пользователей завершить сеанс и войти заново
  6. 6
    Откройте документ и проверьте, что форма отображается в новом виде

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

Динамическое обновление без отключения пользователей

Когда форму документа доработали без изменения структуры данных — например, переставили поля, добавили команду или изменили модуль формы — можно применить динамическое обновление. В окне обновления конфигурации базы данных при наличии активных сеансов платформа предложит вариант «Динамическое обновление».

После динамического обновления пользователям не обязательно выходить из программы, но открытые формы документов нужно закрыть и открыть заново — уже открытая форма сохраняет старый экземпляр. В клиент-серверной базе сеансы, работавшие до обновления, могут временно потреблять больше памяти, поэтому при первой возможности сеансы стоит перезапустить.

Очистка кэша, если форма не обновилась у отдельных пользователей

Характерный признак кэш-проблемы: у большинства пользователей форма новая, а на одном-двух компьютерах — старая. Платформа кэширует метаданные локально, и иногда кэш не обновляется. Сначала попробуйте простой способ: полностью закройте программу и откройте её снова. Если не помогло — очистите кэш вручную.

Для файловой базы удалите папки кэша в каталоге пользователя: %APPDATA%\1C\1cv8 и %LOCALAPPDATA%\1C\1cv8 — там находятся папки с именами в виде идентификаторов баз. Удалите папку, соответствующую проблемной базе, при закрытой программе. Альтернативный способ — удалить базу из списка в окне запуска и добавить её заново: при этом кэш для неё пересоздаётся.

Обновление формы, изменённой расширением конфигурации

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

Откройте список расширений: в режиме 1С:Предприятие «Все функции» → «Стандартные» → «Расширения конфигурации» (в типовых конфигурациях путь может отличаться). Проверьте статус каждого расширения и наличие ошибок совместимости. Доработку формы внутри расширения нужно актуализировать в конфигураторе: открыть расширение, сравнить заимствованную форму с новой типовой и перенести изменения вручную.

Типичные ошибки при работе с расширениями
01
Обновление конфигурации без проверки расширений — после обновления форма документа перестаёт открываться у всех пользователей
02
Правка типовой формы напрямую в конфигурации при наличии расширения — изменения конфликтуют, итоговая форма непредсказуема
03
Отключение расширения «для проверки» без фиксации того, что оно делало — теряются доработанные команды и проверки при записи документа

Обновление печатной формы документа

Печатная форма обновляется независимо от формы объекта. Если макет встроен в типовую конфигурацию, он обновится вместе с релизом — достаточно штатного обновления конфигурации. Если печатная форма подключена как внешняя через «Дополнительные отчеты и обработки», её нужно заменить вручную: откройте список дополнительных обработок, найдите нужную печатную форму и загрузите новую версию файла обработки.

Если макет дорабатывался прямо в конфигурации, изменения вносятся в конфигураторе: найдите макет в ветке документа (или в «Общие» → «Макеты»), отредактируйте табличный документ и обновите конфигурацию базы данных. Учтите, что при следующем типовом обновлении изменённый макет может затребовать ручного сравнения и объединения.

Способы обновить печатную форму

Типовое обновление конфигурации

Подходит, если макет не дорабатывался. Ограничение: перезапишет любые ручные правки типового макета

Внешняя печатная форма

Подходит для доработанных бланков без изменения конфигурации. Ограничение: требует обновления файла обработки при смене формата

Правка макета в конфигураторе

Подходит для разовой точечной доработки. Ограничение: усложняет последующие обновления, лучше заменить расширением

Проверка результата и откат изменений

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

Перед любыми изменениями конфигурации делайте резервную копию: для файловой базы — копию файла 1Cv8.1CD или выгрузку в dt, для клиент-серверной — средствами СУБД. Если после обновления форма работает некорректно, восстановление из копии — единственный гарантированный способ вернуться к исходному состоянию.

Контрольные точки

Как проверить результат

Открытие документа
Норма

Форма открывается без ошибок, новые элементы на месте

Тревожный признак

Ошибка «Поле не найдено» или старый вид формы

Запись и проведение
Норма

Документ записывается и проводится штатно

Тревожный признак

Ошибки проверки заполнения у ранее корректных документов

Печать
Норма

Печатная форма формируется в актуальном виде

Тревожный признак

Старый бланк или ошибка формирования

У разных пользователей
Норма

Форма одинакова на всех рабочих местах

Тревожный признак

Расхождения — признак кэша на отдельных ПК

Итог

Что важно запомнить

Обновление формы документа начинается с диагностики: форма объекта, печатная форма или расширение. Основные инструменты — обновление конфигурации базы данных (F7), перезапуск сеансов, очистка кэша и актуализация расширений. Перед изменениями всегда делайте резервную копию, а после — проверяйте открытие, проведение и печать документа.

Частые вопросы

Обновил конфигурацию, но форма документа не изменилась. Что делать?

Проверьте три вещи по порядку: выполнено ли обновление конфигурации базы данных (F7, а не только загрузка cf), перезапущен ли сеанс пользователя после обновления, нет ли расширения конфигурации, которое перекрывает форму. Если всё выполнено, а форма старая только на одном компьютере — очистите локальный кэш метаданных.

Можно ли обновить форму, не прерывая работу пользователей?

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

Как обновить только печатную форму, не трогая всю конфигурацию?

Если печатная форма подключена как внешняя обработка — замените файл в списке дополнительных отчетов и обработок. Если макет типовой и не дорабатывался, он обновится только вместе с релизом конфигурации; для точечной замены потребуется правка макета в конфигураторе или подключение внешней печатной формы.

После обновления документ не открывается с ошибкой. В чём причина?

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

Почему у одного пользователя форма новая, а у другого старая?

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

Обязательно ли делать резервную копию перед обновлением формы?

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