Расширение формы констант.ПослеЗаписи

События · AfterWrite

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

Синтаксис

ПослеЗаписи()
Полное описание, параметры и ограничения

Расширение формы констант.ПослеЗаписи (Constant form extension.AfterWrite)

Расширение формы констант (Constant form extension)

ПослеЗаписи (AfterWrite)

Доступен, начиная с версии 8.0.

Синтаксис:
ПослеЗаписи()
Описание:

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

Доступность:

Толстый клиент.

Использование в версии:

Доступен, начиная с версии 8.0.

Методическая информация

Практические примеры

ПослеЗаписи: собственная обычная форма constant

После успешной платформенной записи своей формы увеличиваем её локальный счётчик. Здесь нет параметра Отказ и отменять уже завершённую запись этим событием нельзя.

Где и как запускать

Модуль обычной формы конкретного собственного объекта. Открывающий обработчик — другая собственная обычная форма; толстый клиент.

Подготовка

  1. В отдельной пустой учебной конфигурации создайте константу УчебныйЛимитФормы типа Число 12.2.

  2. В Общие → Общие формы конструктором создайте обычную форму констант УчебныеКонстанты, включите только УчебныйЛимитФормы. В свойствах корня конфигурации назначьте её Основной формой констант.

  3. Форма должна быть именно формой констант, а не произвольной формой с похожим числовым реквизитом. Источник открывает назначенную основную форму; изменяйте только свой учебный лимит.

  4. В самой обычной форме констант добавьте собственные реквизиты Статус (Строка 200) и СчетчикЗаписей (Число 10.0); выведите их на форму.

  5. Основной блок назначьте событию формы ПослеЗаписи, дополнительный инициализатор — ПриОткрытии этой же формы. Это не событие модуля набора / значения константы.

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

Процедура ПослеЗаписи()
    СчетчикЗаписей = СчетчикЗаписей + 1;
    Статус = "Успешных записей своей формы: " + Строка(СчетчикЗаписей);
    Сообщить(Статус);
КонецПроцедуры
Та же целевая обычная форма: назначить событию ПриОткрытии
Процедура ПриОткрытии()
    СчетчикЗаписей = 0;
    Статус = "Собственная форма готова к проверке записи";
    Сообщить(Статус);
КонецПроцедуры
Другая обычная форма своей внешней обработки: кнопка ОткрытьСвойУрок
Процедура ОткрытьСвойУрок(Кнопка)
    ФормаУрока = Константы.ПолучитьФорму();
    ФормаУрока.Открыть();
    Сообщить("Измените только свой УчебныйЛимитФормы");
КонецПроцедуры

Разбор по шагам

  1. Конструктор создаёт настоящую форму конкретной собственной записи / набора / констант.

  2. Открывающая кнопка передаёт форме реальный собственный объект с ограниченным ключом / регистратором.

  3. Стандартная команда формы вызывает платформенное событие; обработчик меняет только свой флаг отказа или локальный статус.

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

  1. После успешной стандартной записи счётчик увеличился на 1.

  2. Отменённая запись не должна отмечаться как успешная. Счётчик относится к открытому экземпляру формы, а не к количеству записей в регистре.

Ожидаемый результат

Этап записи показан на настоящей собственной обычной форме, а не ручным вызовом процедуры с подставными аргументами.

На что обратить внимание

  1. ПередЗаписью, ПриЗаписи и ПослеЗаписи — разные этапы. Не посылайте внешние сообщения об успехе из ПриЗаписи до фиксации.

  2. Источник набора нельзя открывать без отбора регистратора / собственного ключа; не заменяйте источник рабочим набором.

  3. При сборке HTML BSL, запись в 1С и открытие её форм не выполнялись.

Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.

Не хотите разбираться сами?

Адаптируем это решение под вашу базу. Оценка бесплатно.

Оставить задачу

1С, 1С:Предприятие — товарные знаки ООО «1С». Сайт не является официальным представительством фирмы «1С» и не аффилирован с ней.