Добавляет новую колонку или обновляет существующую Если колонка уже есть, то обновляет свойства Заголовок и Ширина
// Добавляет новую колонку или обновляет существующую
// Если колонка уже есть, то обновляет свойства Заголовок и Ширина
// Источник: https://github.com/SeiOkami/CollectionMethodsOneS/issues/23
//
// Параметры:
// ТаблицаЗначений - ТаблицаЗначений - Таблица значений, в которую нужно добавить колонку
// Имя - Строка - Имя колонки
// Тип - ОписаниеТипов, Неопределено - Объект, описывающий допустимые типы значений для колонки.
// Если параметр не указан, в колонке можно будет хранить значение любого типа.
// Заголовок - Строка, Неопределено - Заголовок колонки таблицы значений.
// Используется при визуальном отображении таблицы значений.
// Ширина - Число, Неопределено - Ширина колонки в символах.
// Используется при визуальном отображении таблицы значений.
//
// Возвращаемое значение:
// КолонкаТаблицыЗначений - добавленная (или найденная) колонка
//
// Пример:
// ТЗ = Новая ТаблицаЗначений;
// К1 = ОбновленнаяКолонкаТаблицы(ТЗ, "К1"); //ТЗ.Колонки.Количество() = 1
// К2 = ОбновленнаяКолонкаТаблицы(ТЗ, "К2"); //ТЗ.Колонки.Количество() = 2
// К1 = ОбновленнаяКолонкаТаблицы(ТЗ, "К1"); //ТЗ.Колонки.Количество() = 2
//
Функция ОбновленнаяКолонкаТаблицы(Знач ТаблицаЗначений, Знач Имя,
Знач Тип = Неопределено, Знач Заголовок = Неопределено, Знач Ширина = Неопределено) Экспорт
Колонка = ТаблицаЗначений.Колонки.Найти(Имя);
Если Колонка = Неопределено Тогда
Колонка = ТаблицаЗначений.Колонки.Добавить(Имя, Тип);
КонецЕсли;
Если Заголовок <> Неопределено Тогда
Колонка.Заголовок = Заголовок;
КонецЕсли;
Если Ширина <> Неопределено Тогда
Колонка.Ширина = Ширина;
КонецЕсли;
Возврат Колонка;
КонецФункции
Конструктор массива (Массив = Массив(Значение1, ... , Значение20))