Добрый день! Суть проблемы такова - Есть периодический РегистрСведений. При записи записи(сорри за тавтологию) в регистр мне нужно записать в реквизит GUID записи этого регистра свежесгенерированный уникальный идентификатор.
Делаю я это в подписке на событие. Тип реквизита - Строка,36симв. Ниже код обработчика :
Процедура ПрисвоитьРеквизитGUIDПриЗаписи(Источник, Отказ, Замещение) Экспорт
Для Каждого Запись Из Источник Цикл
Если Не ЗначениеЗаполнено(Запись.GUID) Тогда
Запись.GUID = Строка(Новый УникальныйИдентификатор);
КонецЕсли;
КонецЦикла;
КонецПроцедуры
Код успешно прогоняется, но в итоге значение реквизита не заполняется. Что я делаю не так?
(3) Это не только в подписке. В ПриЗаписи объект уже записан в базу, но транзакция еще не завершена.
В ПередЗаписью, объект еще не записан и его можно менять.
(5) А в чем тогда смысл ПриЗаписи? просто чтобы отменить транзакцию в зависимости от каких-то условий или поменять что-то связанное с записываемым объектом(например присвоить чему-то свеженькую ссылку на этот объект)?
(6) "поменять что-то связанное с записываемым объектом(например присвоить чему-то свеженькую ссылку на этот объект)" - да.
Кaк может человек ожидaть, что его мольбaм о снисхождении ответит тот, кто превыше, когдa сaм он откaзывaет в милосердии тем, кто ниже его? Петр Трубецкой