Разработка и Конфигурация · 11 мин
Как обновить форму документа в 1С
Как обновить форму документа в 1С: обновление конфигурации, динамическое обновление, обновление печатных форм и типовых макетов. Частые ошибки и решения.
Форма документа в 1С может потребовать обновления в нескольких ситуациях: после обновления конфигурации изменения не отобразились у пользователей, разработчик доработал форму и нужно применить правки без перезапуска сеансов, либо устарела печатная форма документа и требуется подключить актуальный макет. Каждый из этих случаев решается своим способом, и важно не путать обновление конфигурации базы данных с простым обновлением интерфейса.
Чаще всего проблема выглядит так: конфигурацию обновили, всё прошло без ошибок, но пользователи видят старую форму документа. Причина почти всегда в кэше метаданных на клиентских компьютерах или в том, что обновление конфигурации базы данных не было выполнено до конца. Реже речь идёт о расширениях конфигурации, которые «перекрывают» типовую форму, или о внешних печатных формах, подключённых через механизм дополнительных отчетов и обработок.
Определите, какая именно форма требует обновления
Прежде чем что-то менять, установите, о какой форме идёт речь. В 1С у документа есть несколько форм: форма объекта (сам документ), форма списка, форма выбора, а также печатные формы, которые формируются по макетам. Проблемы с ними решаются по-разному, и ошибочная диагностика приводит к лишней работе.
Если пользователь открывает документ и видит старый набор реквизитов или старое расположение полей — это форма объекта. Если вопрос в том, что печатный бланк не соответствует актуальному законодательному образцу — это печатная форма, и обновлять нужно макет или внешнюю печатную форму, а не конфигурацию целиком.
Проверьте, выполнено ли обновление конфигурации базы данных и нет ли расширений
Проверьте раздел «Дополнительные отчеты и обработки» и состав макетов
Очистите кэш на проблемном компьютере
Проверьте список расширений и статус обновления конфигурации БД
Обновление формы через обновление конфигурации
Штатный способ применить изменения формы — обновить конфигурацию базы данных. Откройте конфигуратор под пользователем с правами администратора и проверьте статус: меню «Конфигурация» → «Конфигурация базы данных». Если пункт «Обновить конфигурацию базы данных» активен, а в заголовке окна есть признак отличия конфигураций — обновление выполнено не полностью.
Нажмите клавишу F7 или выберите «Конфигурация» → «Обновить конфигурацию базы данных». Если изменения затрагивают структуру данных (добавлены реквизиты документа), платформа покажет окно реструктуризации — подтвердите «Принять». После завершения попросите пользователей перезайти в программу: сеанс, открытый до обновления, продолжает работать со старыми метаданными.
- 1Откройте конфигуратор и убедитесь, что конфигурация поддерживается или изменения внесены корректно
- 2Выполните «Конфигурация» → «Обновить конфигурацию базы данных» (F7)
- 3Подтвердите реструктуризацию, если платформа её запросит
- 4Дождитесь завершения и проверьте отсутствие ошибок в окне сообщений
- 5Попросите пользователей завершить сеанс и войти заново
- 6Откройте документ и проверьте, что форма отображается в новом виде
Если база файловая и обновление блокируется активными сеансами, завершите работу всех пользователей или воспользуйтесь динамическим обновлением, когда изменения позволяют. В клиент-серверном варианте реструктуризация возможна и при работающих пользователях, но на больших таблицах это может занять заметное время и нагрузить сервер.
Динамическое обновление без отключения пользователей
Когда форму документа доработали без изменения структуры данных — например, переставили поля, добавили команду или изменили модуль формы — можно применить динамическое обновление. В окне обновления конфигурации базы данных при наличии активных сеансов платформа предложит вариант «Динамическое обновление».
После динамического обновления пользователям не обязательно выходить из программы, но открытые формы документов нужно закрыть и открыть заново — уже открытая форма сохраняет старый экземпляр. В клиент-серверной базе сеансы, работавшие до обновления, могут временно потреблять больше памяти, поэтому при первой возможности сеансы стоит перезапустить.
Очистка кэша, если форма не обновилась у отдельных пользователей
Характерный признак кэш-проблемы: у большинства пользователей форма новая, а на одном-двух компьютерах — старая. Платформа кэширует метаданные локально, и иногда кэш не обновляется. Сначала попробуйте простой способ: полностью закройте программу и откройте её снова. Если не помогло — очистите кэш вручную.
Для файловой базы удалите папки кэша в каталоге пользователя: %APPDATA%\1C\1cv8 и %LOCALAPPDATA%\1C\1cv8 — там находятся папки с именами в виде идентификаторов баз. Удалите папку, соответствующую проблемной базе, при закрытой программе. Альтернативный способ — удалить базу из списка в окне запуска и добавить её заново: при этом кэш для неё пересоздаётся.
Обновление формы, изменённой расширением конфигурации
Во многих базах формы документов доработаны через расширения — это позволяет не снимать конфигурацию с поддержки. Если типовая форма обновилась, а расширение устарело, возможны два сценария: форма выглядит как старая (расширение перекрывает новые элементы) или документ вообще не открывается с ошибкой.
Откройте список расширений: в режиме 1С:Предприятие «Все функции» → «Стандартные» → «Расширения конфигурации» (в типовых конфигурациях путь может отличаться). Проверьте статус каждого расширения и наличие ошибок совместимости. Доработку формы внутри расширения нужно актуализировать в конфигураторе: открыть расширение, сравнить заимствованную форму с новой типовой и перенести изменения вручную.
Обновление печатной формы документа
Печатная форма обновляется независимо от формы объекта. Если макет встроен в типовую конфигурацию, он обновится вместе с релизом — достаточно штатного обновления конфигурации. Если печатная форма подключена как внешняя через «Дополнительные отчеты и обработки», её нужно заменить вручную: откройте список дополнительных обработок, найдите нужную печатную форму и загрузите новую версию файла обработки.
Если макет дорабатывался прямо в конфигурации, изменения вносятся в конфигураторе: найдите макет в ветке документа (или в «Общие» → «Макеты»), отредактируйте табличный документ и обновите конфигурацию базы данных. Учтите, что при следующем типовом обновлении изменённый макет может затребовать ручного сравнения и объединения.
Способы обновить печатную форму
Подходит, если макет не дорабатывался. Ограничение: перезапишет любые ручные правки типового макета
Подходит для доработанных бланков без изменения конфигурации. Ограничение: требует обновления файла обработки при смене формата
Подходит для разовой точечной доработки. Ограничение: усложняет последующие обновления, лучше заменить расширением
Проверка результата и откат изменений
После любого способа обновления проверьте результат на реальном документе: откройте существующий документ, создайте новый, проверьте запись и проведение, сформируйте печатную форму. Особое внимание уделите обязательным полям — если в форму добавили реквизит с проверкой заполнения, старые документы могут перестать перепроводиться без его заполнения.
Перед любыми изменениями конфигурации делайте резервную копию: для файловой базы — копию файла 1Cv8.1CD или выгрузку в dt, для клиент-серверной — средствами СУБД. Если после обновления форма работает некорректно, восстановление из копии — единственный гарантированный способ вернуться к исходному состоянию.
Как проверить результат
Форма открывается без ошибок, новые элементы на месте
Ошибка «Поле не найдено» или старый вид формы
Документ записывается и проводится штатно
Ошибки проверки заполнения у ранее корректных документов
Печатная форма формируется в актуальном виде
Старый бланк или ошибка формирования
Форма одинакова на всех рабочих местах
Расхождения — признак кэша на отдельных ПК
Что важно запомнить
Обновление формы документа начинается с диагностики: форма объекта, печатная форма или расширение. Основные инструменты — обновление конфигурации базы данных (F7), перезапуск сеансов, очистка кэша и актуализация расширений. Перед изменениями всегда делайте резервную копию, а после — проверяйте открытие, проведение и печать документа.
Частые вопросы
Обновил конфигурацию, но форма документа не изменилась. Что делать?
Проверьте три вещи по порядку: выполнено ли обновление конфигурации базы данных (F7, а не только загрузка cf), перезапущен ли сеанс пользователя после обновления, нет ли расширения конфигурации, которое перекрывает форму. Если всё выполнено, а форма старая только на одном компьютере — очистите локальный кэш метаданных.
Можно ли обновить форму, не прерывая работу пользователей?
Да, если изменения не затрагивают структуру данных — используйте динамическое обновление. Пользователям достаточно закрыть и заново открыть форму документа. Если добавлялись реквизиты или табличные части, потребуется полное обновление с реструктуризацией, которое безопаснее выполнять без активных сеансов.
Как обновить только печатную форму, не трогая всю конфигурацию?
Если печатная форма подключена как внешняя обработка — замените файл в списке дополнительных отчетов и обработок. Если макет типовой и не дорабатывался, он обновится только вместе с релизом конфигурации; для точечной замены потребуется правка макета в конфигураторе или подключение внешней печатной формы.
После обновления документ не открывается с ошибкой. В чём причина?
Наиболее вероятная причина — расширение конфигурации, заимствующее эту форму и ссылающееся на удалённые или переименованные элементы. Откройте список расширений и проверьте их статус. Временно отключите проблемное расширение, чтобы восстановить работу, затем актуализируйте доработку в конфигураторе.
Почему у одного пользователя форма новая, а у другого старая?
Это классический признак устаревшего кэша метаданных на клиентском компьютере. Попросите пользователя полностью закрыть программу и войти снова. Если не помогло — удалите базу из списка в окне запуска и добавьте заново либо очистите папку кэша в профиле пользователя.
Обязательно ли делать резервную копию перед обновлением формы?
При правке формы через конфигуратор или расширение — да, копия обязательна: ошибка в модуле формы может сделать документы неоткрываемыми для всех пользователей сразу. При простой замене внешней печатной формы риск ниже, но старый файл обработки стоит сохранить, чтобы быстро вернуть прежний вариант.