Имя: Пароль:
1C
1С v8
Режим основного окна
0 slafor
 
29.09.19
14:56
Читаю с its.1c.ru книгу "Разработка интерфейса прикладных решений на платформе 1С:Предприятие 8" и никак не пойму: для чего все-таки был сделан такой параметр, как режим основного окна клиентского приложения, и как он работает?
Задать его можно только установкой одноименного свойства для ВСЕЙ конфигурации в целом (т.е. и для ВСЕХ пользователей). А какой смысл задавать одинаковый режим основного окна для всех?Пытаюсь в процедуре ПриНачалеРаботыСистемы() в модуле клиентского приложения написать УстановитьРежимОсновногоОкна(), выдает ошибку. Код такой:

Если ПолучитьРольПользователя() = "Продавец" Тогда
   УстановитьРежимОсновногоОкна(РежимОсновногоОкнаКлиентскогоПриложения.ПолноэкранноеРабочееМесто);
КонецЕсли;

Ошибка:
{МодульУправляемогоПриложения(10,3)}: Процедура или функция с указанным именем не определена (УстановитьРежимОсновногоОкна)
  <<?>>УстановитьРежимОсновногоОкна(РежимОсновногоОкнаКлиентскогоПриложения.ПолноэкранноеРабочееМесто); (Проверка: Тонкий клиент).

Функция ПолучитьРольПользователя() получает роль, доступную для текущего пользователя. Она выполняется на сервере, а УстановитьРежимОсновногоОкна() - на клиенте.

В чем ошибка?
1 PR
 
29.09.19
15:06
2 seevkik
 
29.09.19
15:12
(1) нифига ты прошаренный
3 shuhard
 
29.09.19
15:13
(2) ты о Роме или Гугле, которым Рома ищет =)
4 slafor
 
29.09.19
15:14
(1) Спасибо, я это уже прочитал, поэтому и обратился с вопросом )

"Задать режим основного окна вы можете в конфигураторе, или из встроенного языка. Но тут есть особенность. Мы предполагаем, что режим основного окна определяется самой сутью прикладного решения. Поэтому возможность изменить его программно существует только при старте прикладного решения. В дальнейшем клиентское приложение будет функционировать в том режиме, который ему установлен.".

Прикладное решение может одновременно запускаться и у кассира, и у бухгалтера. При этом, естественно, режим основного окна у них должен быть разный.

А УстановитьРежимОсновногоОкна() из встроенного языка не работает...
5 slafor
 
29.09.19
15:15
Или нельзя для разных пользователей устанавливать разные режимы основного окна?
6 shuhard
 
29.09.19
15:15
(4) ты убъёшься читать документацию без изучения типовых
7 seevkik
 
29.09.19
15:20
(3) я уже не уверен :(
(4) написано же "Эти режимы будут удобны в тех случаях, когда приложение запускается на специализированных устройствах, таких как кассовые аппараты, терминалы сбора данных и тому подобных."
Как вариант при запуске текущий пользователь равно "тыгыдык тыгыдыкович", правда не буду говорить про правильность этого)
8 RomanYS
 
29.09.19
15:22
(4) режим совместимости какой?
УстановитьРежимОсновногоОкна() Доступен, начиная с версии 8.3.10.
9 PR
 
29.09.19
15:35
(3) Все, что касается 1С, Гугл ищет в моей голове, а не я в Гугл
10 RomanYS
 
29.09.19
15:43
(9) Ты крут, можно судьбу БП2.0 у тебя узнать?
11 PR
 
29.09.19
15:46
(10) БП3 пришла вместо нее
12 RomanYS
 
29.09.19
15:57
(11) гугл конечно поинформативнее будет.
Когда закончится поддержка БП2?
Что делать тем (с теми), к кому БП3 не пришла? Хотя тут сами разберемся.
13 craxx
 
29.09.19
16:26
(12) а в чем проблема на БП3 перелезть?
14 RomanYS
 
29.09.19
16:32
(13) Время и деньги очевидно.
15 slafor
 
29.09.19
17:53
(8) установлен режим совместимости с 8.3.10. Что интересно, если до ПриНачалеРаботыСистемы писать директиву &НаСервере, ошибок не выдает, но при запуске Предприятия все равно работает в обычном режиме. Бред какой-то... ведь по документации УстановитьРежимОсновногоОкна() должно работать только на клиенте (толстый, тонкий и веб).
16 slafor
 
29.09.19
17:56
Упс... прочитал, что ПриНачалеРаботыСистемы отрабатывается НаКлиенте.
17 Василий Алибабаевич
 
29.09.19
18:30
(0) "В чем ошибка?"
Помимо прочих причин есть одна.
УстановитьРежимОсновногоОкна работает до построения основного окна. А значит только в ПередНачаломРаботыСистемы. И не работает в ПриНачалеРаботыСистемы.

"Задать его можно только установкой одноименного свойства для ВСЕЙ конфигурации в целом". Здесь даже комментировать нечего.
18 PR
 
29.09.19
19:11
(17) Да по ссылке в (1) написано русским по белому "Метод УстановитьРежимОсновногоОкна() вы можете вызывать только в обработчике события ПередНачаломРаботыСистемы."
Но у ТС видимо с чтением не очень
19 rphosts
 
29.09.19
19:15
(9) от скромности ты точно не умрёшь
20 PR
 
29.09.19
19:25
(19) Точно!

Так-то (3) первый начал с инсинуациями, что я Зазеркалье в Гугле ищу :))
Уж чего чего, а Зазеркалье я полностью читаю, обычно в день выхода статьи, так что и без Гугла в курсе его содержимого
21 rphosts
 
29.09.19
19:57
(20) скажи ещё что у тебя все ссылки в голове
22 PR
 
29.09.19
20:56
(21) Ну уж точно не в Гугле
23 slafor
 
29.09.19
21:18
(18) Виноват, ошибся. Проблем со чтением нет, я и в самом начале писал это в ПередНачаломРаботыСистемы, просто здесь неправильно написал в (0) и в  (15), (16). А там эта функция не вызывается именно в ПередНачаломРаботыСистемы().