| 0
    
        Анцеранана   19.04.12✎ 17:14 | 
        Это не спам, просто теперь появились другие грабли...
 Друзья, помогите..
 
 Передо мной стоит следующая задача: открыть форму (неважно в каком режиме модально или нет) , записать значение реквизита "наименование", записать объект и закрыть форму...Знаю, что бред, по-другому нельзя вроде...
 Вот первая проблема:
 
 V8 = Новый COMObject ("V81.Application");
 Соединение = V8.Connect("File="""+КаталогИБ+"""; Usr ="""+ИмяПользователя+""";");
 МенеджерСправочники = V8.Справочники;
 Для Каждого СтрСправочник Из МенеджерСправочники Цикл
 ...//получили НайденныйЭлемент. фрагмент не привожу все работает
 ФормаЭлемента = НайденныйЭлемент.ПолучитьФорму();
 ФормаОткрыта = Истина; //это просто переменная
 Попытка
 ФормаЭлемента.Открыть();
 //ФормаЭлемента.ОткрытьМодально();
 Исключение
 ФормаОткрыта = Ложь;
 КонецПопытки;
 ...
 КонецЦикла;
 
 У пользователя нет прав на открытие...
 Если я делаю ОткрытьМодально() - у меня алгоритм прекращает работу - пока я не нажму в открывшейся форме какую-нибудь кнопку: например "закрыть", но попытка отрабатывает корректно...
 
 Если я делаю просто Открыть() - то попытка не отрабатывает, на экран выводится системное сообщение "нарушение прав доступа", то есть обработка опять же останавливается и значение переменной ФормаОткрыта не меняется с Истины...
 
 Что делать. как обойти эти вилы, чтобы дальше двигаться по циклу ...
 |  | 
    
        | 3
    
        Анцеранана   19.04.12✎ 18:01 | 
        (2) Мне нужно определить, что я не могу зайти, если права ограничены и выдать это в протокол. Как раз задача и стоит зайти под пользователенм с ограниченными правами     |  | 
    
        | 4
    
        Молчаливый   19.04.12✎ 18:14 | 
        Зачем "открыть форму, записать объект, закрыть форму" если всё что нужно -- это записать значение реквизита Наименование?
 Почему бы не сделать это вообще без использования формы, при этом сам вызов Записать() обернуть в Попытку, получив тем самым исключение если нет прав на запись справочника?
 |  |