Перезапись регистра записи сведений #275558


#0 by YF
Есть регистр сведений, редактируемый в диалоге. Открываю форму новой записи регистра. Человек выбрал необходимые измерения и ресурсы и пытается сохранить. Вывалилось предупреждение, что запись с таким набором измерений уже существует.     Как сделать, чтобы в этом случае просто перезаписалась существующая запись?     Для этого нужно открывать не форму записи регистра, а произвольную, а потом кодом писать запись. Или можно обойтись открытием формы записи?
#1 by ТелепатБот
#2 by YF
+ Блин, опечатался, если можно, то (модераторы) плизз, исправьте тему на: "Перезапись записи регистра сведений".
#3 by rom
Обработчик ПриЗаписи
#4 by YF
Ну там можно сделать, чтобы не ругалось и найти нужную запись и перезаписать. Я правильно понял методику?
#5 by Defender aka LINN
+ Тогда уж ПередЗаписью. Но, ИМХО, это из разряда извращений. Лучше уж произвольную форму.
#6 by rom
имеется ввиду в обработчик записи объекта: параметр Замещение = Истина.
#7 by sergeante
может лучше тогда переодическим сделать, чтобы изменения отслеживать?
#8 by YF
Не дает это ничего, все-равно ругается, хотя может версия 1С у меня старая. + Я выбираю записи с теми-же измерениями, что и заполнены в форме, как отличить другую запись от редактируемой?
#9 by YF
Он и так периодический ...
#10 by YF
Ап
#11 by Defender aka LINN
Щаззззззззз. Параметр "Замещение" там будет "Ложь". Потому что это другая запись. Я имел в виду проверять в ПередЗаписью и сносить старую предварительно.
#12 by YF
А как отличить старую запись от новой?
#13 by selenat
в передЗаписью новой еще нет...
#14 by YF
У меня форма записи регистра, кнопку "записать" я могу нажать при создании новой записи, а могу и при открытии существующей ...
#15 by Legj
Отличить редактируемую запись от "другой", похоже, никак не получится. Поэтому как выход, к примеру, в форме записи в событии ПередЗаписью проверять, нет ли уже записи с таким ключом. Если есть (пускай даже это она сама и есть) - перезаписывать её вручную, а от стандартной записи отказаться (Отказ = Итсина). Почему в форме? -  так не будет системного "Операция не выполнена!" и больше "пространства для маневров" соответственно. Или вообще самому прописать кнопку "ОК" и прописать там всё как тебе нужно, а от записи любым другим образом отказом отказываться с предупреждением типа "только по ОК!". Но уж делать форму с типом основного реквизита отличным от "РегистрСведенийМенеджерЗаписи" - это совсем изврат, можно всё проще решить.
#16 by rom
попробуй правда в обработчике формы ПередЗаписью удалять записи с существующими измерениями НаборЗаписей =  РегистрыСведений.РегистрСведений1.СоздатьМенеджерЗаписи; НаборЗаписей.Измерение1 = Измерение1; ....
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям