Как при динамическом добавлении колонок в ТЗ вставить значение?

1. user817897 2 24.03.20 00:15 Сейчас в теме
Подскажите пожалуйста на обычных формах, как при динамическом добавлении колонок в ТЗ вставить значение?

	
РЗ = Запрос.Выполнить().Выгрузить();
	для Каждого строка из РЗ цикл
		
		Нед = НеделяГода(строка.ПериодНедели);			
		НоваяКолонка = 	ЭлементыФормы.ТЗ.Колонки.Добавить();
		НоваяКолонка.ТекстШапки = Нед;
		НоваяКолонка.Имя = Нед;

КонецЦикла();
Показать

В коде,создаю колонку,как сразу в её записать значение?
По теме из базы знаний
Ответы
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
4. tusv 210 24.03.20 08:44 Сейчас в теме
(1)У Вас обычные формы.
Достаточно
ЭлементыФормы.ТЗ.Значение=Запрос.Выполнить().Выгрузить();
ЭлементыФормы.ТЗ.СоздатьКолонки();
2. burgomister 59 24.03.20 04:10 Сейчас в теме
1. Поскольку у вас цикл по строкам, значит колонок будет столько, сколько строк.
2. Присвоение значения в новой ячейке: строка.НоваяКолонка = что-то там;
3. То есть значение будет присвоено только в текущей строке в новой колонке.
4. Вообще очень странный код. Какая цель?
5. user817897 2 24.03.20 10:52 Сейчас в теме
(2) Цель такая:

Есть Набитый список номенклатуры подбором,далее заполняются автоматически где-то остатки,где-то количество для списания,и т.д. много разных данные.
Но мне необходимо между этими колонками каким-то образом создать 20 колонок динамических и заполнить в них данные продаж максимальное количество:
То есть Сегодня у нас 13-я неделя года, было продано по первой строке:
50неделя 51неделя 52неделя 53неделя 1неделя 2неделя и т.д. и в каждую колонку вбить помимо данных которе уже заполнены,заполнить эти динамические колонки.
Это как бы сказать будет (Документ - отчёт). Чтобы потом Человек которые будет анализировать эти 20 колонок и остальные колонки. и делать дальнейшие манипуляции с этим документом(нарядом на комплектацию)
8. user817897 2 24.03.20 11:31 Сейчас в теме
(2)вообще,по правильному было бы мне сделать создание колонок по какому-нибудь календарю) но хз как))
9. user817897 2 24.03.20 11:43 Сейчас в теме
(2) вот сам запрос:

Для каждого стр из  ЭтотОбъект.Товары цикл
	
	Запрос = Новый Запрос;
	Запрос.Текст = 
		"ВЫБРАТЬ
		|	ПродажиОбороты.Номенклатура,
		|	СУММА(ПродажиОбороты.КоличествоОборот) КАК Количество,
		|	ПродажиОбороты.Период КАК ПериодНедели
		|ИЗ
		|	РегистрНакопления.Продажи.Обороты(&НачалоПериода, &КонецПериода, Неделя, ) КАК ПродажиОбороты
		|ГДЕ
		|	ПродажиОбороты.Номенклатура = &Номенклатура
		|
		|СГРУППИРОВАТЬ ПО
		|	ПродажиОбороты.Номенклатура,
		|	ПродажиОбороты.Период
		|
		|УПОРЯДОЧИТЬ ПО
		|	ПродажиОбороты.Период";
	
	Запрос.УстановитьПараметр("НачалоПериода", НачалоНедели(ТекущаяДата()-86400*150) );
	Запрос.УстановитьПараметр("КонецПериода", КонецНедели(ТекущаяДата()));
	Запрос.УстановитьПараметр("Номенклатура", стр.Номенклатура);
	
	РЗ = Запрос.Выполнить().Выгрузить();
	для Каждого строка из РЗ цикл
		
		Нед = НеделяГода(строка.ПериодНедели);			
		НоваяКолонка = 	ЭлементыФормы.ТЗ.Колонки.Добавить();
		НоваяКолонка.ТекстШапки = Нед;
		НоваяКолонка.Имя = Нед;
		
		//строка.количество сразу в эту колонку как внести?
	КонецЦикла;	

Прервать;

	КонецЦикла;
Показать
3. maksbl 12 24.03.20 06:13 Сейчас в теме
Перед циклом создай эту колонку и записывай в цикле значения в строку этой колонки.
danjer74; +1 Ответить
6. burgomister 59 24.03.20 10:58 Сейчас в теме
7. user817897 2 24.03.20 11:30 Сейчас в теме
(3) а как можно создать эти колонки,между уже существующими колонками,а не в конце всех колонок?
10. burgomister 59 24.03.20 12:12 Сейчас в теме
(7) Метод Вставить имеет следующий синтаксис:

Вставить(<Индекс>, <Имя>, <Тип>, <Заголовок>, <Ширина>)

Метод Вставить имеет синтаксис, как и у метода Добавить, но только появился первый параметр Индекс, он указывает тот индекс, на место которого будет вставляться новая колонка.

ОписаниеТиповСтрока = Новый ОписаниеТипов(«Строка»);
ОписаниеТиповДата   = Новый ОписаниеТипов(«Дата»)

ФИО = Новый ТаблицаЗначений;
ФИО.Колонки.Добавить(«Фамилия»,ОписаниеТиповСтрока,«Фамилия»,50);
ФИО.Колонки.Добавить(«Имя»,ОписаниеТиповСтрока,«Имя»,50);
ФИО.Колонки.Добавить(«Отчество»,ОписаниеТиповСтрока,«Отчество»,50);
ФИО.Колонки.Добавить(«ДатаРождения»,ОписаниеТиповДата,«Дата рождения»,10);

ФИО.Колонки.Вставить(3,«ФИО»,ОписаниеТиповСтрока,«ФИО»,50);
Показать


В нашем случае колонка ФИО встала точно между Отчеством и Датой рождения.
Оставьте свое сообщение
Вакансии
1С аналитик
Москва
зарплата от 210 000 руб.
Полный день

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

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

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

Аналитик 1С / Бизнес-аналитик
Нижний Новгород
зарплата от 100 000 руб. до 250 000 руб.
Временный (на проект)