Студия/OnMoveToFolder
OnMoveToFolder (Визуальные события) | |||||||
---|---|---|---|---|---|---|---|
|
Событие, возникающее в момент интерактивного перемещения элемента в другую папку. Позволяет запретить или разрешить перемещение.
Аргументы
<Element (DB)>
- Переменная задает перемещаемый элемент (или папку).<Folder (DB)>
- Переменная задает папку, в которую выполняется перемещение элемента.<Result (INT)>
- (возможен аргумент-переменная (ByRef)) Переменная результата может принимать значения:- 0 (по умолчанию) -- Разрешить выполнить операцию.
- 1 -- Запретить выполнение операции.
Примеры
//Пример обработчика OnMoveToFolder If IsEmpty(Гр) Then Folder:=GetNothing("Ref.Контрагенты"); EndIf; If (Element.IsFolder())And(not Пользователь.Администратор) Then Box("Вы не имеете права переносить папки!",Q_STOP); Exit 1; ElseIf Element.IsFolder() Then //Разрешить перенос администраторам Exit; EndIf; Гр:=Folder; //Проверка запретов на папках While Гр.Selected()<>0 Do If Гр.ТипАктива>0 Then If Гр.ТипАктива-1<>Эл.ТипАктива Then Box("В папке "+Гр+" ("+Гр.Code+") должны находиться только контрагенты вида """+Гр.ТипАктива+"""!",Q_STOP); Exit 1; EndIf; Break; EndIf; Гр:=Гр.Folder(); EndDo; If (Эл.Folder().Selected()<>0)And(not Эл.IsFolder()) Then If Folder.Selected()=0 Then Box("Запрещено перемещать контрагентов в корневую папку!",Q_STOP); Exit 1; EndIf; EndIf;