Здравствуйте, у меня есть документ в ТЗ в которого создаются колонки в зависимости от периода выбранного пользователем(точного названия колонок и их количество не известно ибо может быть сколько угодно). Подскажите как можно программно создать последнюю колонку которая бы считала общую сумму выбранной строки.
---
Точно также, как вы создаете остальные колонки - создаете еще одну.
На тех колонках, которые влияют на сумму, добавляете обработчик - при изменении - и считаете сумму колонок по этой строке в итоговой колонке.
---
Смог сделать следующим образом:

```1c
    Итог="Итог";
    Для Каждого СтрокаТаблицы Из ТЗ Цикл

    ПервыйМесяц=НачалоМесяца(Объект.НачалоПериода);

    Пока ПервыйМесяц <= НачалоМесяца(Объект.КонецПериода) Цикл
    НоваяСтрока= СтрокаТаблицы;
    ТекущийМесяц=Формат(ПервыйМесяц, "ДФ=MMMMyyy");
    НоваяСтрока[Итог]=НоваяСтрока[ТекущийМесяц]+НоваяСтрока[Итог];
    ПервыйМесяц=ДобавитьМесяц(ПервыйМесяц,1);
    Сообщить(ПервыйМесяц)
    КонецЦикла;
    КонецЦикла;
```

Мало ли кому пригодится.
---
Точно также, как вы создаете остальные колонки - создаете еще одну.
На тех колонках, которые влияют на сумму, добавляете обработчик - при изменении - и считаете сумму колонок по этой строке в итоговой колонке.
---
документ в ТЗ в которого
Напишите попонятнее, что у вас есть и где вы хотите создать последнюю колонку. У вас есть документ с табличной частью, колонки которой создаются программно? Вы хотите программно добавить еще одну колонку?
---
Да, у меня есть документ, в нем ТЗ, в ТЗ программно создаются колонки. Нужно добавить колонку ИТОГ в которой будет итоговая сумма строки.
---
будет итоговая сумма строки.
(4) у меня есть документ, в нем ТЗ
ТС у Вас табличная часть? - это ТЧ
у любого числового значения ТЧ (табличной части) есть реквизит СуммаИтогСумма - Объект.ВашаТЧ.ИтогСумма

а ТЗ как для меня это таблица значений
---
Нет, у меня именно ТЗ- Таблица Значений, если бы было ТЧ то было бы гораздо проще но мне в процессе работы нужно изменять колонки )
---
Смог набросать код (методом проб и ошибок, не уверен что все нужное но тем не менее):

```1c
    МассивИтог = Новый Массив;
    Итог="Итог";
    Сообщить(МассивИтог);
    НазваниеКолонки=Итог;
    МассивИтог.Добавить(Новый РеквизитФормы(НазваниеКолонки, Новый ОписаниеТипов("Число"), "ТаблицаПрозводственныеПланы", НазваниеКолонки, Истина));
    ИзменитьРеквизиты(МассивИтог);
    НоваяКолонка = Элементы.Добавить(НазваниеКолонки, Тип("ПолеФормы"), Элементы.ТаблицаПрозводственныеПланы);
    НоваяКолонка.Вид = ВидПоляФормы.ПолеВвода;
    НоваяКолонка.ПутьКДанным = "ТаблицаПрозводственныеПланы."+НазваниеКолонки;
```

Вся проблема встает в получении итога по строке именно в этой колонке. Первая колонка строкового типа, а последующие до Итогов типа Число.
---
А почему просто в цикле не обойти все колонки и не сложить значения?
---
Пробовал вот так:

```1c
    Индекс=1;
    Для Каждого КолонкаТЧ ИЗ ТаблицаПрозводственныеПланы Цикл
    Сообщить(КолонкаТЧ);
    Сообщить(КолонкаТЧ[Индекс]);
    Индекс=Индекс+1;
    КонецЦикла;
```

и так:

```1c
    Индекс=1;
    Для Каждого КолонкаТЧ ИЗ ТаблицаПрозводственныеПланы Цикл
    Сообщить(КолонкаТЧ);
    Строка=ТаблицаПрозводственныеПланы.Получить(Индекс);
    Сообщить(Строка);
    Индекс=Индекс+1;
    КонецЦикла;
```

Но не выходит поймать значение.
---
Смог сделать следующим образом:

```1c
    Итог="Итог";
    Для Каждого СтрокаТаблицы Из ТЗ Цикл

    ПервыйМесяц=НачалоМесяца(Объект.НачалоПериода);

    Пока ПервыйМесяц <= НачалоМесяца(Объект.КонецПериода) Цикл
    НоваяСтрока= СтрокаТаблицы;
    ТекущийМесяц=Формат(ПервыйМесяц, "ДФ=MMMMyyy");
    НоваяСтрока[Итог]=НоваяСтрока[ТекущийМесяц]+НоваяСтрока[Итог];
    ПервыйМесяц=ДобавитьМесяц(ПервыйМесяц,1);
    Сообщить(ПервыйМесяц)
    КонецЦикла;
    КонецЦикла;
```

Мало ли кому пригодится.
---
1) перед циклом стоит очистить значение в графе Итог.
2) Можно немного проще.
Создайте реквизит формы тип Произвольный, например, КолнонкиДляСумм - при создании колонок для месяцев - запишите имена колонок с суммами в структуру. В КолнонкиДляСумм присвойте фиксированную структуру из структуры с именами колонок.
Так у вас будут всегда имена колонок, которые созданы и по которым надо считать итог - и в цикле не надо вычислять имена колонок, порядок именования которых со временем может измениться.
---
Спасибо за совет, но уже полностью отрабатывает)
Здесь указал решение только по конкретной части вопроса)