|
Нужно программно создать реквизит ТЗ у формы и вевести ее на саму форму, количество колоно |
☑ |
0
antipod13
27.12.19
✎
11:05
|
Может у кого есть пример?
В инете нашел несколько вариантов, но запутался в них, не настолько силен в 1се, что бы сразу понять, а самый подходящий пример платный.
|
|
1
Галахад
гуру
27.12.19
✎
11:15
|
Может книжки почитать. Они платные, но полезные.
|
|
2
Максимка_
Космонавтом
27.12.19
✎
11:16
|
Не нужно никаких примеров. Ставишь точку останова где-нибудь при открытии формы. В отладчике по Шифт-Ф9 смотришь, какой тип значения у колонок формы, потом в синтаксис-помощнике ищешь, что можно сделать с этим (то бишь, какие методы и свойства существуют у объект данного типа). Там же смотришь, какие методы есть у объекта, на который ты хочешь добавить элемент.
Вот тебе удочка, рыбу поймаешь сам.
|
|
3
Максимка_
Космонавтом
27.12.19
✎
11:18
|
(1) А еще лучше курсы какие-нибудь купить. Тоже бывают весьма полезные.
|
|
4
yalex
27.12.19
✎
11:20
|
(0)Програмно создать, чтобы форму не ломать?
|
|
5
JeHer
27.12.19
✎
11:22
|
(0) у тебя заголовок не влез. Что там с "количество колоно"?
(4) скорее всего, таблица формируется динамически.
|
|
6
yzimin
27.12.19
✎
11:25
|
Весь модуль МодификацияКонфигурацииПереопределяемый пестрит таким кодом. Правда тут добавляется реквизит, но смысл думаю ясен.
МассивДобавляемыхРеквизитов = Новый Массив;
МассивДобавляемыхРеквизитов.Добавить(Новый РеквизитФормы("ВесНетто", Новый ОписаниеТипов("Число",,, Новый КвалификаторыЧисла(15,3)),, "Вес")); // Шапка формы
Форма.ИзменитьРеквизиты(МассивДобавляемыхРеквизитов);
НовыйРеквизит = Форма.Элементы.Добавить("Вес_Программно", Тип("ПолеФормы"), Форма.Элементы.ГруппаВсегоСкидка);
НовыйРеквизит.Заголовок = "Вес";
НовыйРеквизит.ПутьКДанным = "ВесНетто";
НовыйРеквизит.Вид = ВидПоляФормы.ПолеВвода;
НовыйРеквизит.Ширина = 12;
ОбщегоНазначенияУТКлиентСервер.УстановитьСвойствоЭлементаФормы(Форма.Элементы, "Вес_Программно", "ТолькоПросмотр", Истина);
|
|
7
yalex
27.12.19
✎
11:37
|
Вот для таблицы и тоже в модуле МодификацияКонфигурацииПереопределяемый.
Создаёт страницу в страницах формы и на этой новой странице Таблицу формы
Процедура ПриСозданииНаСервере(Форма, Отказ, СтандартнаяОбработка) Экспорт
Если Форма.ИмяФормы = "Справочник.Контрагенты.Форма.ФормаЭлемента" Тогда
НСтраница = Форма.Элементы.Добавить("ВидыДеятельности",Тип ("ГруппаФормы"),Форма.Элементы.СтраницыФормы);
НСтраница.Вид = ВидГруппыФормы.Страница;
НСтраница.Заголовок = "Виды деятельности";
НСтраница.РастягиватьПоВертикали = Истина;
Нстраница.РастягиватьПоГоризонтали = Истина;
МетаданныеТЧ = Метаданные.Справочники.Контрагенты.ТабличныеЧасти.ВидыДеятельности;
СоздатьТаблицуФормыДляТЧ(Форма, Форма.Элементы.ВидыДеятельности, МетаданныеТЧ)
КонецЕсли;
КонецПроцедуры;
Процедура СоздатьТаблицуФормыДляТЧ(Форма, Родитель, МетаданныеТЧ)
ТаблицаФормы = Форма.Элементы.Добавить("ТаблицаВидыДеятельности", Тип("ТаблицаФормы"), Родитель);
ТаблицаФормы.ПутьКДанным = "Объект.ВидыДеятельности";
Для Каждого Рек Из МетаданныеТЧ.Реквизиты Цикл
ПолеФормы = Форма.Элементы.Добавить(ТаблицаФормы.Имя + Рек.Имя, Тип("ПолеФормы"), ТаблицаФормы);
ПолеФормы.ПутьКДанным = ТаблицаФормы.ПутьКДанным + "." + Рек.Имя;
ПолеФормы.Заголовок = Рек.Синоним;
ПолеФормы.Вид = ВидПоляФормы.ПолеВвода;
КонецЦикла;
КонецПроцедуры
|
|
Требовать и эффективности, и гибкости от одной и той же программы — все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух. Фредерик Брукс-младший