|
Как запретить удалить документ?
| ☑ |
0
Zend
10.01.13
✎
20:15
|
Требуется запретить удалить документ, в котором скажем заполнен определённый реквизит.
Как это можно сделать, куда копать? Какое ни будь событие типа ПриУдалениеДокуента()
|
|
1
Fragster
гуру
10.01.13
✎
20:17
|
ДокументОбъект.<Имя документа>.ПередУдалением (DocumentObject.<Имя документа>.BeforeDelete)
ДокументОбъект.<Имя документа> (DocumentObject.<Имя документа>)
ПередУдалением (BeforeDelete)
Синтаксис:
ПередУдалением(<Отказ>)
Параметры:
<Отказ>
Тип: Булево.
Признак удаления документа. Если в теле процедуры-обработчика установить данному параметру значение Истина, то удаление документа выполнено не будет.
Значение по умолчанию: Ложь
Описание:
Возникает в транзакции удаления перед непосредственным удалением объекта из базы данных.
|
|
2
Zend
10.01.13
✎
20:33
|
(1) Спасибо!
|
|
3
Zend
10.01.13
✎
21:39
|
Проблема вот какая возникла.
Если поставить пометку удаления, и потом удалять обработкой, то обработка отказывается удалять остальные докумунты если помечен документ который не нужно удалять
|
|
4
Живой Ископаемый
10.01.13
✎
21:43
|
а проблема какая возникла?
|
|
5
Zend
10.01.13
✎
21:45
|
(4) ))) Ну так это и есть проблема, как решить?
Нужно что бы когда обработка удаляла то, что сможет удалить, а то что не сможет удалить - выводила бы ошибку.
|
|
6
Живой Ископаемый
10.01.13
✎
22:26
|
ну раз нужно, то нужно это сделать. когда начнешь делать, и не получится, мы подскажем в какой строчке кода ты налажал.
|
|
7
Займись делом
10.01.13
✎
22:45
|
(0) В чём смысл именно запрета удаления? Может быть стоит запретить пометку удаления?
|
|
8
Zend
10.01.13
✎
22:52
|
(7) Можно и так, как это сделать?
|
|
9
Живой Ископаемый
10.01.13
✎
22:54
|
так ведь в (1) написано!
|
|
10
Zend
10.01.13
✎
23:02
|
(9) Что написано?
В модуле документа создаю процедуру
Процедура ПередУдалением(Отказ)
Если Реквизит <> "блабла" Тогда
Отказ = Истина;
КонецЕсли;
КонецПроцедуры
Пометку удаления поставить можно. Но удалить документ нельзя. Но когда запускаю обработку по удалению помеченных документов, то она не удаляет документы, которые помечены и которые можно удалить.
|
|
11
Займись делом
10.01.13
✎
23:03
|
(8) В модуле объекта процедуры ПередЗаписью и ПриЗаписи. Запоминать значение пометки удаления в базе перед записью, смотреть значение пометки удаления после записи. Если сменилось с Ложь на Истина и установлен реквизит - устанавливать Отказ в Истина.
|
|
12
Zend
10.01.13
✎
23:18
|
(11) Спасибо, работает.
|
|
Требовать и эффективности, и гибкости от одной и той же программы — все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух. Фредерик Брукс-младший