|
Показ разных форм в зависимости от клиента |
☑ |
0
C0oLZ3r0
05.08.20
✎
22:14
|
Всем привет!
Такая ситуация: в самописной конфе есть документ. При открытии хочется показывать форму в зависимости от клиента (тонкий клиент или мобильное приложение).
Сделал, как положено, две формы. В модуле менеджера описал процедуру "ОбработчикПолученияФормы", где директивами препроцессора указываю какую форму получать:
Получилось так:
#Если МобильноеПриложениеКлиент ИЛИ МобильныйКлиент Тогда
ВыбраннаяФорма = "ФормаДокументаМобильная";
#Иначе
ВыбраннаяФорма = "ФормаДокумента"
#КонецЕсли
Ну, в общем, не отрабатывает )))
Подскажите, где и что делаю не так. Заранее благодарен!
|
|
1
C0oLZ3r0
05.08.20
✎
22:15
|
Да, забыл указать: СтандартнаяОбработка = Ложь указана )))
|
|
2
Широкий
05.08.20
✎
22:29
|
Наверно потому что получение формы выполняется на сервере?
|
|
3
C0oLZ3r0
05.08.20
✎
22:42
|
(2) В СП тоже так написано )
|
|
4
C0oLZ3r0
05.08.20
✎
22:53
|
Решил посмотреть, а какой клиент подходит:
#Если МобильноеПриложениеКлиент ИЛИ МобильныйКлиент Тогда
ВыбраннаяФорма = "ФормаДокументаМобильная";
#ИначеЕсли ТонкийКлиент Тогда
ВыбраннаяФорма = "ФормаДокумента";
#ИначеЕсли ВебКлиент Тогда
ВыбраннаяФорма = "ФормаДокументаМобильная"
#КонецЕсли
Сообщить(ВыбраннаяФорма);
В итоге - не известный идентификатор формы. И сообщение пустое )))
|
|
5
C0oLZ3r0
05.08.20
✎
22:55
|
(4) ... это и в тонком клиенте и с мобильного устройства
|
|
6
youalex
05.08.20
✎
23:06
|
(4) полностью имя формы пропиши
типа ВыбраннаяФорма = "Документ.ТвойДокумент.Форма.ФормаДокументаМобильная";
|
|
7
Широкий
05.08.20
✎
23:37
|
(5) я намекаю какой же у тебя "МобильноеПриложениеКлиент" если это сервер
|
|
8
C0oLZ3r0
06.08.20
✎
09:56
|
(7) Просветление пришло ))
Резонный вопрос: как организовать задуманное?
|
|
9
C0oLZ3r0
06.08.20
✎
09:56
|
(4) пробовал. Не прошло, потому что (2)
|
|
10
C0oLZ3r0
06.08.20
✎
09:57
|
(9) -> (4) = (6)
|
|
11
youalex
06.08.20
✎
10:13
|
(8) как вариант, из клиента (ПередНачаломРаботыСистемы()) писать вид клиента в параметры сеанса (понятно, нужен будет ОМ с галкой "вызов сервера")
В БСП можно посмотреть ,например : СтандартныеПодсистемыКлиентПовтИсп.ПараметрыРаботыКлиентаПриЗапуске()
|
|
12
C0oLZ3r0
06.08.20
✎
10:19
|
(11) Дело понятное... Можно и в ПриОткрытии() поставить Отказ = Истина и открыть нужную. Хочется узнать как по феншую сделать )))
|
|
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший