Как задать другую начальную страницу при запуске с мобильного клиента

1. Uillhard 20.09.19 07:33 Сейчас в теме
При запуске через любой клиент, кроме мобильного нужно отображать один состав начальной страницы, но при запуске через мобильный клиент состав должен быть другой.Как это эффективнее реализовать ?
По теме из базы знаний
Найденные решения
4. Uillhard 21.11.19 13:33 Сейчас в теме
Нашел решение
Нужно в модуле управляемого приложения в процедуре "ПередНачаломРаботыСистемы" прописать этот код

НастройкиНачальнойСтраницы = Новый НастройкаНачальнойСтраницы;
НовыйСоставФорм = Новый СоставФормНачальнойСтраницы;
НовыйСоставФорм.ЛеваяКолонка.Добавить("Тут путь к форме");
НастройкиНачальнойСтраницы.УстановитьСоставФорм(НовыйСоставФорм);

ХранилищеСистемныхНастроек.Сохранить("Общее/НастройкиНачальнойСтраницы", ,НастройкаНачальнойСтраницы);


И после этого обновить интерфейс методом ОбновитьИнтерфейс()
Остальные ответы
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
2. Aleksnow 10.11.19 03:20 Сейчас в теме
(1) Все зависит от умения создавать костыли)) Я это к тому что адаптация конфигураций под Мобильный клиент по моему до сих пор один большой костыль.
Итак, так как я надеюсь вы уже выполнили базовую адаптацию конфы под работу с мобильным клиентом, я имею ввиду расставили предпроцессорные условие #Если МобильныйКлиент в местах где он не будет работать (самый простой вариант опираться на условия #Если ВебКлиент).

А теперь по существу, создаем расширение (если жалко с поддержки снимать конфу), нам нужен модуль сеанса, там берем и добавляем в расширение процедуру "Установка параметров сеанса", если ее нет, то печаль (делаем ее в расширении сами)

в этой процедурке будет примерно вот такой код
НастройкиНачальнойСтраницы = Новый НастройкаНачальнойСтраницы;
НовыйСоставФорм = Новый СоставФормНачальнойСтраницы;
НовыйСоставФорм.ЛеваяКолонка.Добавить("Тут путь к форме");
НастройкиНачальнойСтраницы.УстановитьСоставФорм(НовыйСоставФорм);

ХранилищеСистемныхНастроек.Сохранить("Общее/НастройкиНачальнойСтраницы", ,НастройкаНачальнойСтраницы);


Ну что-то вроде этого)
Uillhard; +1 Ответить
3. Uillhard 20.11.19 15:44 Сейчас в теме
(2) Я пытался так сделать, но при это не сработало.
Ставил точку останова в процедуре "Установка параметров сеанса", но при использовании Мобильного клиента он туда не заходит.
Поэтому пока приходится просто открывать форму для мобильного клиента из начальной страницы
4. Uillhard 21.11.19 13:33 Сейчас в теме
Нашел решение
Нужно в модуле управляемого приложения в процедуре "ПередНачаломРаботыСистемы" прописать этот код

НастройкиНачальнойСтраницы = Новый НастройкаНачальнойСтраницы;
НовыйСоставФорм = Новый СоставФормНачальнойСтраницы;
НовыйСоставФорм.ЛеваяКолонка.Добавить("Тут путь к форме");
НастройкиНачальнойСтраницы.УстановитьСоставФорм(НовыйСоставФорм);

ХранилищеСистемныхНастроек.Сохранить("Общее/НастройкиНачальнойСтраницы", ,НастройкаНачальнойСтраницы);


И после этого обновить интерфейс методом ОбновитьИнтерфейс()
11. Hobbit_Jedi 08.07.21 16:43 Сейчас в теме
(4)
Нашел решение
Нужно в модуле управляемого приложения в процедуре "ПередНачаломРаботыСистемы" прописать этот код


Так ПередНачаломРаботыСистемы() исполняется на клиенте, а объект НастройкаНачальнойСтраницы доступен только на сервере.

Как этот момент "обходили"?
5. ikekoval 119 22.04.20 18:39 Сейчас в теме
Коллеги, а как тоже самое сделать для мобильного приложения?

НастройкиНачальнойСтраницы - Доступность: Сервер, толстый клиент.
СоставФормНачальнойСтраницы- Доступность: Сервер, толстый клиент.

При обновлении МП:

Тип не определен (СоставФормНачальнойСтраницы)
СоставФорм = Новый <<?>>СоставФормНачальнойСтраницы; (Проверка: Мобильное приложение-сервер)
Мобильное приложение содержит синтаксические ошибки.

Прекрасно работает при отладке в тонком клиенте и ниразу в мобильном приложении. За мобильный клиент не скажу.

Платформа 8.3.16.1030
6. ikekoval 119 23.04.20 01:55 Сейчас в теме
(5) Ну, через пятую точку, но сделать можно.
Создаём 2 роли
Ставим 2 формы в настройках рабочей области начальной страницы. Каждой в настройках видимости назначаем свою роль
Ну а дальше просто - создаем пользователя перед началом работы системы, назначаете нужную роль и наслаждаетесь результатом.
7. o4karek 24.04.20 09:09 Сейчас в теме
(5) А зачем так делать в мобильном приложении? Что мешает просто настроить форму начальной страницы в конфигураторе?
8. ikekoval 119 24.04.20 18:54 Сейчас в теме
(7) Потому-что одной формы мало.
Например разные формы для аворизованного и неавторизованного пользователя.
Например, разные рабочие столы для логиста, курьера, кладовщика

Вообще ваш вопрос так же можно адресовать в другую сторону - зачем в десктопной версии разные рабочие столы? Что мешает просто настроить форму начальной страницы в конфигураторе? Зачем вообще придумали "НастройкаНачальнойСтраницы" и "СоставФормНачальнойСтраницы"?
9. o4karek 24.04.20 20:17 Сейчас в теме
(8) Ответ достаточно простой: формы начальной страницы могут быть доступны, в зависимости от прав пользователя. Поэтому стартовый набор форм большой, а реально на форме их [может быть] видно меньше.
В мобильном приложении пользователей нет, поэтому состав форм там значительно менее динамичен. И больше одной формы мобильная платформа показывать не умеет.
А алгоритм определения списка форм вот тут есть: https://its.1c.ru/db/v83doc#bookmark:dev:TI000001554
10. ikekoval 119 24.04.20 22:23 Сейчас в теме
(9) Так я же и написал, что в событии "при запуске приложения" можно создать пользователя, если текущий не определен. Ему добавить роль там же, предварительно добавив их в конфигурацию. Дальше по ролям настраиваете видимость.
Я не писал, что мне нужны несколько форм. Не писал про левые и правые колонки.
Мне нужна одна из нескольких, но доступная в зависимости от условий.
Очень не хотелось связываться с пользователем и ролями т.к. и без них отлично до сих пор справлялся.

Пользователи в мобильном приложении есть. Не больше одного пользователя на приложение.
Оставьте свое сообщение
Вакансии
Программист
Санкт-Петербург
зарплата от 180 000 руб. до 240 000 руб.
Полный день

Разработчик 1С
Москва
зарплата от 150 000 руб. до 250 000 руб.
Полный день

Программист 1С
Москва
зарплата от 180 000 руб. до 220 000 руб.
Полный день

Программист 1С
Екатеринбург
зарплата от 130 000 руб. до 170 000 руб.
Полный день

Программист 1C
Санкт-Петербург
зарплата от 140 000 руб. до 200 000 руб.
Полный день