Раскладываем стандартные панели по сторонам и объединяем две в собственную группу. Новое описание не применяется к приложению.
Где и как запускать
Учебная база: создайте серверный общий модуль УчебныеЗадачи (флаг Сервер). Код без директив вставьте в тело процедуры ВыполнитьПример() Экспорт. Вызовите её из серверного обработчика команды учебной обработки. Не запускайте в рабочей базе.
Подготовка
Используйте собственную учебную базу и отдельного учебного пользователя, не рабочее приложение. Типы настроек доступны на сервере и в толстом клиенте, не непосредственно в обработчике тонкого клиента.
Создайте серверный общий модуль УчебныеЗадачи. Для уроков с готовыми процедурами/функциями вставьте полный код в модуль; для остальных — в тело процедуры ВыполнитьПример() Экспорт. Вызовите её из серверного обработчика команды собственной управляемой обработки.
Чтение и конструирование черновика не сохраняют пользовательские настройки. Только последний урок намеренно вызывает УстановитьСостав; для него нужна собственная конфигурация с именем УчебнаяКонфигурацияСинтаксиса и возможность восстановить настройки учебного пользователя вручную.
Состав = Новый НастройкиСоставаИнтерфейсаКлиентскогоПриложения;
Разделы = Новый ЭлементНастройкиСоставаИнтерфейсаКлиентскогоПриложения("ПанельРазделов");
Функции = Новый ЭлементНастройкиСоставаИнтерфейсаКлиентскогоПриложения("ПанельФункцийТекущегоРаздела");
История = Новый ЭлементНастройкиСоставаИнтерфейсаКлиентскогоПриложения("ПанельИстории");
Избранное = Новый ЭлементНастройкиСоставаИнтерфейсаКлиентскогоПриложения("ПанельИзбранного");
Открытые = Новый ЭлементНастройкиСоставаИнтерфейсаКлиентскогоПриложения("ПанельОткрытых");
Состав.Верх.Добавить(Разделы);
Состав.Лево.Добавить(Функции);
Состав.Низ.Добавить(История);
ПраваяГруппа = Новый ГруппаНастройкиСоставаИнтерфейсаКлиентскогоПриложения;
ПраваяГруппа.Добавить(Избранное);
ПраваяГруппа.Добавить(Открытые);
Состав.Право.Добавить(ПраваяГруппа);
Сообщить(Состав.Верх.Количество() = 1);
Сообщить(Состав.Лево.Количество() = 1);
Сообщить(Состав.Низ.Количество() = 1);
Сообщить(Состав.Право.Количество() = 1);
Сообщить(ПраваяГруппа.Количество() = 2);
Сообщить(Состав.Верх.Получить(0).Имя = "ПанельРазделов");
Сообщить("Состав подготовлен в памяти и не установлен");Разбор по шагам
Имена пяти стандартных панелей взяты из справки ЭлементНастройкиСоставаИнтерфейсаКлиентскогоПриложения. Это не имена собственных элементов управляемой формы.
У состава четыре корневые коллекции. Справа добавляем одну группу, в которой две панели; поэтому количество справа 1, а внутри группы 2.
При установке платформа требует уникального размещения панелей. Здесь каждая стандартная панель встречается только один раз.
В группе размещаем только панели, не ещё одну группу: группы внутри групп при УстановитьСостав не поддерживаются.
Черновик сам не меняет окно. Поддержка конкретного расположения проверяется отдельно при применении в собственной учебной базе.
Как проверить результат
Шесть контрольных Истина: четыре стороны по одному элементу, в правой группе два, сверху ПанельРазделов.
Панели фактического окна не переместились, поскольку настройки не устанавливались.
Ожидаемый результат
Подготовлен собственный состав с корректным уровнем группировки и пятью уникальными панелями.
На что обратить внимание
Не считайте конструкцию описания доказательством того, что выбранный режим клиента отобразит все панели.
Не добавляйте одну и ту же панель на несколько сторон ради эксперимента: установщик проверяет уникальность.
Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.