Имя: Пароль:
1C
 
Пользователь не видит параметры сеанса
0 Sinoptic
 
23.10.09
12:36
Добавил новую роль, настроил, доступ на получение и установку параметров сеанса разрешил. Захожу под пользователем например ввожу документ, в коде есть такая строка:
Ответственный = ПараметрыСеанса.ТекущийПользователь;
В итоге реквизит "Ответственный" остается незаполненным, а если в табло ввести "ПараметрыСеанса.ТекущийПользователь" показывает ошибку "{(1,1)}: Переменная не определена (ПараметрыСеанса)". Если в табло получать параметры под типовыми правами, параметр получается нормально. понимаю конечно что где-то галочку не поставил, но не могу найти.
1 ТелепатБот
 
гуру
23.10.09
12:36
2 Sinoptic
 
23.10.09
12:38
Код: Ответственный = ПараметрыСеанса.ТекущийПользователь;
При исполнении ошибку не вызывает, а просто ничего не присваевает.
3 vde69
 
23.10.09
12:38
получить()
4 Sinoptic
 
23.10.09
12:41
(3) Нет, этот метод тут не нужен.
5 vde69
 
23.10.09
12:43
попробуй через привелегированый модуль
6 Sammo
 
23.10.09
12:47
А ПараметрыСеанса.ТекущийПользователь заполнен? Точно?
7 Sinoptic
 
23.10.09
12:48
(6) Точно. В отладчике в табло параметры получаются.
8 YauheniL
 
23.10.09
12:50
Есть вопрос, но не по теме: если я объявляю переменную в процедуре модуля приложения, эта переменная уничтожится после выхода из процедуры или нет?
9 Ненавижу 1С
 
гуру
23.10.09
12:51
(8) если локальная в процедуре, то да
10 YauheniL
 
23.10.09
12:53
(9) Хорошо, тогда зачем пигшут вот такой код:

Попытка
       // Загружаем внешнюю компоненту
       ЗагрузитьВнешнююКомпоненту("NameDecl.dll");
       глКомпонентаСклоненияФИО = Новый("AddIn.NameDeclension");
       
   Исключение
       // Не удалось выполнить операции с внешней компонентой
       ОбщегоНазначения.СообщитьОбОшибке("Ошибка загрузки внешней компоненты для склонения ФИО! Функции склонения будут недоступны!");
       
   КонецПопытки;

Вся суть в том, что "глКомпонентаСклоненияФИО" в этом модуле встречается только в этом месте. Процедура "ПриНачалеРаботыСистемы". По идее, ссылка на компоненту же потеряется после выхода из процедуры
11 YauheniL
 
23.10.09
12:55
(9) +10 в параметрах сеанса тоже нет
12 Ц_У
 
23.10.09
12:55
Зачем через параметры сеанса? Просто ТекущийПользователь
13 YauheniL
 
23.10.09
12:56
(12) поясни
14 GenV
 
23.10.09
13:04
(10) Может код старый или обновли криво. Сеяас вроде компонента по другому возвращается.
15 Ц_У
 
23.10.09
13:04
(13) По твоему вопросу поясняю:
глКомпонентаСклоненияФИО потеряется только в том случае если она не экспортная и находится в локальном модуле..
В твоем случае, как я понял, глКомпонентаСклоненияФИО  является переменной общего модуля и Экспортной, так что .." не сцыте ббабы все уедем" =)
16 Mitriy
 
23.10.09
13:07
(10) это глобальная переменная...
17 YauheniL
 
23.10.09
13:11
(15) Все упоминания на эту переменную описаны в том куске кода, т.о. переменная локальна
18 YauheniL
 
23.10.09
13:12
(16) А глобальные переменные объявляются через сеанс пользователя или через экспортные переменные модуля приложения (ну, внешнего соединения, и т.п. .. от контекста зависит)

Просто копипастю код, возникают сомнения в его пригодности