Волшебная процедура Программное изменение формы элемента

Добавляет на форму элемента закладку, на нее помещает таблицу значений с командной панелью

Процедура ПриОткрытииMobile()

    Массив = Новый Массив;
    Массив.Добавить(Тип("СправочникСсылка.Номенклатура"));
    ТипЗначения = Новый ОписаниеТипов(Массив);

    ТабНом = Новый ТаблицаЗначений;
    ТабНом.Колонки.Добавить("Номенклатура", ТипЗначения, "Номенклатура");

    Запрос = Новый Запрос;
    Запрос.УстановитьПараметр("Договор", Ссылка);
    Запрос.Текст =
        "ВЫБРАТЬ
        |   яДоговорыНоменклатура.Номенклатура
        |ИЗ
        |   РегистрСведений.яДоговорыНоменклатура КАК яДоговорыНоменклатура
        |ГДЕ
        |   яДоговорыНоменклатура.Договор = &Договор";

    Выборка = Запрос.Выполнить().Выбрать();
    Пока Выборка.Следующий() Цикл ЗаполнитьЗначенияСвойств(ТабНом.Добавить(), Выборка);
    КонецЦикла;


    Стр = ЭтаФорма.ЭлементыФормы.Панель.Страницы.Добавить("Mobile", "Номенклатура");
    ЭлементыФормы.Панель.ТекущаяСтраница = Стр;

    ТабличноеПоле = ЭлементыФормы.Добавить(Тип("ТабличноеПоле"), "ТабНом", Истина, ЭлементыФормы.Панель);
    ТабличноеПоле.Имя = "ТабНом";
    ТабличноеПоле.Значение = ТабНом;
    ТабличноеПоле.Верх = 31;
    ТабличноеПоле.Высота = 288;
    ТабличноеПоле.Ширина = 337;
    ТабличноеПоле.Лево = 6;
    ТабличноеПоле.Доступность = Истина;
    ТабличноеПоле.АвтоВводНовойСтроки = Ложь;
    ТабличноеПоле.АвтоКонтекстноеМеню = Истина;
    ТабличноеПоле.АктивизироватьПоУмолчанию = Ложь;
    ТабличноеПоле.ВертикальнаяПолосаПрокрутки = ИспользованиеПолосыПрокрутки.Использоватьавтоматически;
    ТабличноеПоле.ВертикальныеЛинии = Истина;
    ТабличноеПоле.Видимость = Истина;
    ТабличноеПоле.Вывод = ИспользованиеВывода.Авто;
    ТабличноеПоле.ВысотаПодвала = 1;
    ТабличноеПоле.ВысотаШапки = 1;
    ТабличноеПоле.ГоризонтальнаяПолосаПрокрутки = ИспользованиеПолосыПрокрутки.Использоватьавтоматически;
    ТабличноеПоле.ГоризонтальныеЛинии = Истина;
    ТабличноеПоле.ИзменяетДанные = Истина;
    ТабличноеПоле.ИзменятьНастройкуКолонок = Истина;
    ТабличноеПоле.ИзменятьПозициюКолонок = Истина;
    ТабличноеПоле.ИзменятьПорядокСтрок = Истина;
    ТабличноеПоле.ИзменятьСоставСтрок = Истина;
    ТабличноеПоле.ПервыйВГруппе = Ложь;
    ТабличноеПоле.Подвал = Ложь;
    ТабличноеПоле.ПорядокОтображения = 2;
    ТабличноеПоле.ПрозрачныйФон = Ложь;
    ТабличноеПоле.ПропускатьПриВводе = Ложь;
    ТабличноеПоле.РазрешитьНачалоПеретаскивания = Ложь;
    ТабличноеПоле.РазрешитьПеретаскивание = Ложь;
    ТабличноеПоле.РежимВыбора = Ложь;
    ТабличноеПоле.ТолькоПросмотр = Ложь;
    ТабличноеПоле.ЧередованиеЦветовСтрок = Ложь;
    ТабличноеПоле.Шапка = Истина;
    ТабличноеПоле.УстановитьПривязку(ГраницаЭлементаУправления.Низ, ЭтаФорма.Панель, ГраницаЭлементаУправления.Низ);
    ТабличноеПоле.СоздатьКолонки();

    Колонка = ТабличноеПоле.Колонки[0];
    Колонка.Доступность = Истина;
    Колонка.ЭлементУправления.Доступность = Истина;
    Колонка.ЭлементУправления.РедактированиеТекста = Истина;

    КоманднаяПанель = ЭлементыФормы.Добавить(Тип("КоманднаяПанель"), "КоманднаяПанельТабНом", Истина, ЭлементыФормы.Панель);
    КоманднаяПанель.Имя = "КоманднаяПанельТабНом";
    КоманднаяПанель.Верх = 6;
    КоманднаяПанель.Высота = 25;
    КоманднаяПанель.Ширина = 337;
    КоманднаяПанель.Лево = 6;
    КоманднаяПанель.Доступность = Истина;
    КоманднаяПанель.АвтоЗаполнение = Истина;
    КоманднаяПанель.АвтоКонтекстноеМеню = Истина;
    КоманднаяПанель.АктивизироватьПоУмолчанию = Ложь;
    КоманднаяПанель.Видимость = Истина;
    КоманднаяПанель.Вспомогательная = Истина;
    КоманднаяПанель.ИзменяетДанные = Истина;
    КоманднаяПанель.ИсточникДействий = ЭлементыФормы.ТабНом;
    КоманднаяПанель.ПервыйВГруппе = Ложь;
    КоманднаяПанель.ПорядокОтображения = 1;
    КоманднаяПанель.ПрозрачныйФон = Ложь;
    КоманднаяПанель.ПропускатьПриВводе = Ложь;
    КоманднаяПанель.УстановитьПривязку(ГраницаЭлементаУправления.Низ, ЭлементыФормы.КоманднаяПанельТабНом, ГраницаЭлементаУправления.Верх);

    ЭлементыФормы.Панель.ТекущаяСтраница = ЭлементыФормы.Панель.Страницы[0];

КонецПроцедуры

Добавить комментарий