Коллеги, добрый день!
Некоторое время назад мне потребовалось организовать программный вывод произвольной таблицы значений на управляемую форму. Ранее таких потребностей не возникало и беглый поиск по интернету так же мне не помог.
Покажу, как сделать вот такую штуку:
1. Откроем конфигуратор, создадим новую обработку, в обработке добавим форму.
2. В событии формы "ПриСозданииНаСервере" добавим следующий текст:
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
Тз = Новый ТаблицаЗначений;
тз.Колонки.Добавить("К1");
тз.Колонки.Добавить("К2");
стр = тз.Добавить();
стр.К1 = 111;
стр.К2 = 222;
стр = тз.Добавить();
стр.К1 = 333;
стр.К2 = 444;
Реквизит_Табл = новый РеквизитФормы("Табл", Новый ОписаниеТипов("ТаблицаЗначений"));
Реквизит_к1 = новый РеквизитФормы("К1", Новый ОписаниеТипов("Строка"), "Табл");
Реквизит_к2 = новый РеквизитФормы("К2", Новый ОписаниеТипов("Число"),"Табл");
м = новый Массив;
м.Добавить(Реквизит_к1);
м.Добавить(Реквизит_к2);
м.Добавить(Реквизит_Табл);
ИзменитьРеквизиты(м);
Табл = Элементы.Добавить("Табл", Тип("ТаблицаФормы"));
Табл.ПутьКДанным = "Табл";
Поле1 = Элементы.Добавить("К1", Тип("ПолеФормы"), Табл);
Поле1.ПутьКДанным = "Табл.К1";
Поле2 = Элементы.Добавить("К2", Тип("ПолеФормы"), Табл);
Поле2.ПутьКДанным = "Табл.К2";
ЗначениеВРеквизитФормы(тз, "Табл");
КонецПроцедуры
3. Сохраним и запустим в режиме "Предприятие".
Проверено на следующих конфигурациях и релизах:
- Управление торговлей, редакция 11, релизы 11.5.21.106