Имя: Пароль:
1C
1С v8
Показ разных форм в зависимости от клиента
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) Дело понятное... Можно и в ПриОткрытии() поставить Отказ = Истина и открыть нужную. Хочется узнать как по феншую сделать )))