Имя: Пароль:
1C
1С v8
Удаление документа из управляемой формы
0 location
 
naïve
29.12.16
15:32
Добрый день. Подскажите как пометить на удаление документ из управляемой формы. У роли стоит галочка удаление, интерактивное удаление снята. При определенном условии можно только удалить документ, поэтому в остальных случаях нельзя давать удалять, вот изза этого и нужна отдельная кнопка на форме. Подскажите плз.
1 SergTheGreat
 
29.12.16
15:44
(0) Во-первых, удалять объект из формы этого же объекта - это не комильфо. Ну, из формы списка еще куда не шло.

Во-вторых, определись, требуется удаление или установка пометки на удаление. Первое - это "стирание" объекта из базы. Второе - изменение одного из его реквизитов.
2 Fragster
 
гуру
29.12.16
15:46
http://nazva.net/logic_test1
непонятно, как из "При определенном условии можно только удалить документ" следует "поэтому в остальных случаях нельзя давать удалять" и уж тем более непонятно, почему "нужна отдельная кнопка на форме" вместо разрешения удаления и проверки перед удалением тех самых условий...
3 location
 
naïve
29.12.16
15:49
(1) нужно именно установить пометку удаления чтобы он стал с крестиком и непроведенный на форме списка. далее снять эту пометку нельзя.
4 location
 
naïve
29.12.16
15:50
(2) потому что документ специфический. установить можно только при определнном условии. снять документ из помеченного вообще нельзя, т.е. установка права на интерактивное удаление тут не поможет.
5 Fragster
 
гуру
29.12.16
15:58
я сейчас одну очень вещь скажу, только ты не обижайся (с):
если ты перед записью будешь проверять твои условия (включая снятие пометки) и выставлять отказ в истину - тебя никто ругать не будет.
6 location
 
naïve
29.12.16
15:59
(5) ну пользователь сам должен нажать кнопочку, потому что с такими условиями могут быть и проведенные документы.
7 Fragster
 
гуру
29.12.16
16:02
(6) ну да, при наличии права он может нажать на кнопку пометки на удаление. в обработке перед записью сработает алгоритм проверки условия и если нельзя - не даст удалить. то же и при снятии пометки.
8 SergTheGreat
 
29.12.16
16:03
(3) В форме создаешь команду (например, "ИзменитьПометку") и кнопку (например, "КнопкаИзменитьПометку"). Доступность их пользователю настраиваешь или через "Использование" команды, или через "Пользовательская видимость" кнопки, или программно (например, через "ПравоДоступа"). В действии команды пишешь:
Элементы.КнопкаИзменитьПометку.Пометка = Элементы.КнопкаИзменитьПометку.Пометка;
ПометкаУдаления = Элементы.КнопкаИзменитьПометку.Пометка;
Записать();
Ну, и по желанию, там же добавляешь др. проверки.