|
ПодпискаНаСобытие ПриЗаписи РС |
☑ |
0
Droning1C
06.12.19
✎
16:10
|
Добрый день! Суть проблемы такова - Есть периодический РегистрСведений. При записи записи(сорри за тавтологию) в регистр мне нужно записать в реквизит GUID записи этого регистра свежесгенерированный уникальный идентификатор.
Делаю я это в подписке на событие. Тип реквизита - Строка,36симв. Ниже код обработчика :
Процедура ПрисвоитьРеквизитGUIDПриЗаписи(Источник, Отказ, Замещение) Экспорт
Для Каждого Запись Из Источник Цикл
Если Не ЗначениеЗаполнено(Запись.GUID) Тогда
Запись.GUID = Строка(Новый УникальныйИдентификатор);
КонецЕсли;
КонецЦикла;
КонецПроцедуры
Код успешно прогоняется, но в итоге значение реквизита не заполняется. Что я делаю не так?
|
|
1
FIXXXL
06.12.19
✎
16:12
|
(0) ПередЗаписью делаются такие вещи
|
|
2
RomanYS
06.12.19
✎
16:13
|
(0) Делай перед записью. "ПриЗаписи" уже поздно
|
|
3
Droning1C
06.12.19
✎
16:25
|
(1) (2) Спасибо! Помогло! А нету ли случайно на примете какой-то статейки хорошей по обработчикам событий подписок?
|
|
4
RomanYS
06.12.19
✎
16:27
|
(3) СП читай
|
|
5
dezss
06.12.19
✎
16:27
|
(3) Это не только в подписке. В ПриЗаписи объект уже записан в базу, но транзакция еще не завершена.
В ПередЗаписью, объект еще не записан и его можно менять.
|
|
6
Droning1C
06.12.19
✎
16:32
|
(5) А в чем тогда смысл ПриЗаписи? просто чтобы отменить транзакцию в зависимости от каких-то условий или поменять что-то связанное с записываемым объектом(например присвоить чему-то свеженькую ссылку на этот объект)?
|
|
7
ptiz
06.12.19
✎
16:48
|
(6) "поменять что-то связанное с записываемым объектом(например присвоить чему-то свеженькую ссылку на этот объект)" - да.
|
|