Добрый день.

Пытаюсь в процедуре ПриЗаписиНаСервере управляемой формы изменить реквизит записываемого объекта. Для этого использую параметр ТекущийОбъект (ИТС, описание процедуры ПриЗаписиНаСервере: Если нужно изменить записанные данные перед отправкой их на клиент, необходимо использовать ТекущийОбъект.).
После записи запросом проверяю значение реквизита, который записывал - он пуст. Все-таки, можно или нельзя менять значение реквизитов в ПриЗаписиНаСервере()?
---
Нужен обработчик формы "ПередЗаписьюНаСервере". В обработчике "ПриЗаписиНаСервере" запись уже свершилась, менять что-либо в данных поздно.
---
Нужен обработчик формы "ПередЗаписьюНаСервере". В обработчике "ПриЗаписиНаСервере" запись уже свершилась, менять что-либо в данных поздно.
---
Я на самом деле уже видел ваш ответ в подобной теме(https://forum.infostart.ru/forum9/topic230637/), но решил попытать счастья.

Тогда два вопроса:
- как вы понимаете фразу с ИТС: Если нужно изменить записанные данные перед отправкой их на клиент, необходимо использовать ТекущийОбъект?

- Обработчик формы "ПередЗаписьюНаСервере" выполняется ранее, чем проверки в обработчике ПередЗаписью модуля объекта. Необходимо выполнять действия по заполнению реквизита объекта (используя контекст УФ) только в случае, если проверки в модуле объекта успешны. В каком обработчике в этом случае выполнять заполнение реквизита объекта?
---
На первый вопрос Вам ответили в (9).

На второй вопрос однозначно ответить не могу. Согласно идеологии платформы, проверки должны быть реализованы в обработчике "ОбработкаПроверкиЗаполнения" модуля объекта. Это событие возникает до событий записи формы. И тогда описанной проблемы не возникает.
---
Но вы не упоминаете один нюанс - указанные проверки работают только при интерактивной записи объекта. Если записывать объект программно, то указанная вами логика не отработает. И поэтому второй вопрос остается актуальным.
---
На самом деле при желании и при программной записи эти проверки доступны:

```1c
    Если Объект.ПроверитьЗаполнение() Тогда
    Объект.Записать();
    КонецЕсли;
```

Как я уже сказал, однозначно ответить не могу. Можете вынести проверки в отдельный модуль и вызывать их в контексте формы, например. Можете таки попытаться отказаться от условия, что "сначала проверки, потом заполнение реквизитов". Можете данные для заполнения реквизитов передать через дополнительные свойства в обработчик модуля объекта, и заполнять уже там после проверок.
---
Если не затруднит, дайте, пожалуйста, ссылку на ИТС, по который Вы читали описание события.
---
Лучше менять в обработчике модуля объекта ПередЗаписью.

(3) в Гугле есть.
---
Обработчики событий при записи объектов. Зачем и что за чем?
https://infostart.ru/1c/articles/1098803/
---
Спасибо, но моя цель была не узнать последовательность событий, а понять причину, по которой у автора поста возникли трудности: то ли он некорректно прочитал документацию, то ли в документации ошибка.
---
именно эту статью я читал ранее, причем там есть этот же, взятый с ИТС фрагмент:
Если нужно изменить записанные данные перед отправкой их на клиент, необходимо использовать ТекущийОбъект.
---
https://its.1c.ru/db/pubv8devui/content/206/hdoc
---
Если нужно изменить записанные данные перед отправкой их на клиент, необходимо использовать ТекущийОбъект.).
Читайте внимательно. Главное выделил. Это для изменения данных формы на клиенте (при необходимости). А не в базе данных.
---
Интересно, кстати, а какая может быть в этом необходимость? Не могу придумать такую ситуацию.
---
подмена данных. Довольно сложно что-то придумать, что нельзя сделать по другому.
Но как вымышленный вариант: На форме показывать одну организацию(контрагента, склад и т.д.), а в базу записывать другую )