Имя: Пароль:
1C
1С v8
Как открыть внешнюю обработку модально?
,
0 Ar-Bus
 
03.10.13
12:16
Привет всем! Вопрос следующий. Существует пользователь с ограниченными правами, так вот, ему надо разрешить запускать одну обработку(выгрузка данных в файл)... При выгрузке 1с ругается на ограниченные права, обработка прерывается. Хочу сделать, чтобы при открытии формы выполнялся метод УстановитьПривилегированныйРежим(Истина), а при закрытии - УстановитьПривилегированныйРежим(Ложь);
Возникает нюанс: пользователь может открыть форму и не закрывая ее работать в программе под полными правами... Как этого избежать? Как запретить пользователю уходить с формы без ее закрытия?
1 Холодильник
 
03.10.13
12:18
Процедура ПриЗакрыти()
ЗавершитьРаботыСистемы()
КонецПроцедуры
2 Ar-Bus
 
03.10.13
12:19
(1) так это при закрытии формы... а если он ее не будет закрывать? Просто свернет, метод УстановитьПривилегированныйРежим(Ложь) не сработает, т.к. форма же не закрылась, и будет работать в базе под полными правами...
3 BuHu
 
03.10.13
12:25
(0) бредово , но думаю работать будет : создай для это отдельную конфу , с одной обработкой , которая будет подключаться к рабочей базе под пользователем с полными правами и выполнять нужные действия . строку подключение в модуль обработки , на модуль обработки пароль )))
4 Ar-Bus
 
03.10.13
12:27
(3) а проще никак нельзя??? Метод ОткрытьМодально() - разве не подойдет?
5 BuHu
 
03.10.13
12:28
(4) ))) подойдет , открывай при начале работы системы , в самой обработке (1) .
6 Ar-Bus
 
03.10.13
12:30
пользоатель открывает базу, жмет "Открыть файл", выбирает нужную обработку, открывает ее. Куда надо прописать "ОткрытьМодально()", чтобы форма обработки открылась модально?
7 Ar-Bus
 
03.10.13
12:31
когда пишу ЭтаФорма.ОткрытьМодально() в процедуру ПередОткрытием, 1с зависает
8 Ar-Bus
 
03.10.13
12:31
может быть надо какую-нибудь настройку сделать в свойствах этой формы...
9 BuHu
 
03.10.13
12:33
(6) а справочника внешнии обработки \ печатные формы нет? если есть добавить туда , в интерфейсе размести вызов команды которая будет открывать твою обработку ,из справочника внешнии , модально
10 catena
 
03.10.13
12:33
(7)Нехило ты ее зацикливаешь :)
11 catena
 
03.10.13
12:36
Можно две формы, при открытии основной
    Ф = ЭтотОбъект.ПолучитьФорму("ФормаДругая");
    Ф.ОткрытьМодально();
    Ф.Закрыть();
12 BuHu
 
03.10.13
12:38
(6) если вы так переживаете за безопасность , то закрывайте нафиг доступ к "открыть файл" , иначе это не безопасность ))) я напишу обработку в другой конфе и поставлю себе любые права , да и вообще все что угодно смогу написать в этой обработке )))
13 catena
 
03.10.13
12:39
т.е. третья строчка просто Закрыть();
14 Ar-Bus
 
03.10.13
16:09
как быть? Написал обрабоку для файлового варианта базы(обычное приложение), запускаю эту обработку на клиент-серверном варианте(обычное приложение), метод УстановитьПривилегированныйРежим() не работает!!! Да, в синтаксис-помощнике так и написано:" В клиент-серверном варианте при выполнении на клиенте данный метод не выполняет никаких действий." И как быть? Никак не получиться воспользоваться данным методом?
15 del123
 
03.10.13
16:20
Пользуюсь вариантом как в (11)
16 Rebelx
 
03.10.13
16:26
УстановитьПривилегированныйРежим работает только в той процедуре, в которой вызван
Программист всегда исправляет последнюю ошибку.