Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / [игнор отключен] [закрыт для гостей] / OLE/COM Открытие формы... / 5 сообщений из 5, страница 1 из 1
19.04.2012, 17:05
    #37761507
PaoloRus
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
OLE/COM Открытие формы...
Друзья, помогите.. На мисте не получилось разобраться , есть куча вопросов по COM/OLE ...
Передо мной стоит следующая задача: открыть форму (неважно в каком режиме модально или нет) , записать значение реквизита "наименование", записать объект и закрыть форму...
Вот первая проблема:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
V8 = Новый COMObject ("V81.Application"); 
Соединение = V8.Connect("File="""+КаталогИБ+"""; Usr ="""+ИмяПользователя+""";");
МенеджерСправочники = V8.Справочники;
Для Каждого СтрСправочник Из МенеджерСправочники Цикл
   ...//получили НайденныйЭлемент. фрагмент не привожу все работает
  ФормаОткрыта = Истина; //это просто переменная
  Попытка
             ФормаЭлемента.Открыть();
	//ФормаЭлемента.ОткрытьМодально();
  Исключение 
	ФормаОткрыта = Ложь;
  КонецПопытки;
...
КонецЦикла;



У пользователя нет прав на открытие
Если я делаю ОткрытьМодально() - у меня алгоритм прекращает работу - пока я не нажму в открывшейся форме какую-нибудь кнопку: например "закрыть", но попытка отрабатывает корректно...

Если я делаю просто Открыть() - то попытка не отрабатывает, на экран выводится системное сообщение "нарушение прав доступа", то есть обработка опять же останавливается и значение переменной ФормаОткрыта не меняется с Истины...

Что делать. как обойти эти вилы, чтобы дальше двигаться по циклу ...
...
Рейтинг: 0 / 0
19.04.2012, 17:39
    #37761577
DmitriyZ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
OLE/COM Открытие формы...
PaoloRus, а что за причуда открывать форму для записи реквизита объекта? Зачем коннектиться под пользователем, у которого нет прав?
...
Рейтинг: 0 / 0
19.04.2012, 17:54
    #37761617
PaoloRus
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
OLE/COM Открытие формы...
DmitriyZ, нужно проверить может ли пользователь открыть объект , изменять его , записывать без использования метаданных. Если права на открытие у пользователя нет, то это нужно будет вывести в протокол.
...
Рейтинг: 0 / 0
20.04.2012, 09:15
    #37762301
DmitriyZ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
OLE/COM Открытие формы...
PaoloRus, Да, мы не ищем легких путей! Используйте ПравоДоступа(<Право>, <Объект метаданных>, <Пользователь/Роль>) - ведь специально для таких случаев метод сделали.
...
Рейтинг: 0 / 0
20.04.2012, 15:22
    #37763245
olegves
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
OLE/COM Открытие формы...
PaoloRusDmitriyZ, нужно проверить может ли пользователь открыть объект , изменять его , записывать без использования метаданных. Если права на открытие у пользователя нет, то это нужно будет вывести в протокол.

проверяйте права в процедуре ПриСозданииНаСервере()
и если прав нет, тогда и пишите свой протокол... А вот зачем форму открывать, никак не въеду?
...
Рейтинг: 0 / 0
Форумы / [игнор отключен] [закрыт для гостей] / OLE/COM Открытие формы... / 5 сообщений из 5, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]