1С 8.3 Добавление колонки в Таблица значений
Данные > Примеры кода 1С > 1С 8.3 Таблица значений
Перейти в раздел примеры кода 1С 8.3:
Пример №1: Добавление колонки (или обновление её свойств Заголовок и Ширина) в Таблица значений в 1С 8.3:
Функция Вставка_колонки_ТЗ(ТЗ, ИмяКолонки,
ТипКолонки = Неопределено, ЗаголовокКолонки = Неопределено, ШиринаКолонкки = Неопределено)
// Функция добавляет колонку в таблицу значений (если такой колонки нет)
// или обновляет свойства Заголовок и Ширина (если такая колонка уже есть)
// ТЗ - "Таблица значений", в которую нужно добавить колонку
// ИмяКолонки - "Строка"
// ТипКолонки - "ОписаниеТипов, Неопределено" -
// Объект, описывающий типы значений для колонки
// (если параметр не указан, в колонке можно будет хранить значение любого типа)
// ЗаголовокКолонки - "Строка, Неопределено" - Заголовок колонки ТЗ
// Используется при визуальном отображении таблицы значений.
// ШиринаКолонкки - "Строка, Неопределено" - Ширина колонки в символах для визуального отображения
КолонкаТЗ = ТЗ.Колонки.Найти(ИмяКолонки);
Если КолонкаТЗ = Неопределено Тогда
КолонкаТЗ = ТЗ.Колонки.Добавить(ИмяКолонки, ТипКолонки);
КонецЕсли;
Если Заголовок <> Неопределено Тогда
КолонкаТЗ.Заголовок = Заголовок;
КонецЕсли;
Если Ширина <> Неопределено Тогда
КолонкаТЗ.Ширина = Ширина;
КонецЕсли;
Возврат КолонкаТЗ; //добавленная (или найденная и обновленная колонка) колонка
КонецФункции
ТипКолонки = Неопределено, ЗаголовокКолонки = Неопределено, ШиринаКолонкки = Неопределено)
// Функция добавляет колонку в таблицу значений (если такой колонки нет)
// или обновляет свойства Заголовок и Ширина (если такая колонка уже есть)
// ТЗ - "Таблица значений", в которую нужно добавить колонку
// ИмяКолонки - "Строка"
// ТипКолонки - "ОписаниеТипов, Неопределено" -
// Объект, описывающий типы значений для колонки
// (если параметр не указан, в колонке можно будет хранить значение любого типа)
// ЗаголовокКолонки - "Строка, Неопределено" - Заголовок колонки ТЗ
// Используется при визуальном отображении таблицы значений.
// ШиринаКолонкки - "Строка, Неопределено" - Ширина колонки в символах для визуального отображения
КолонкаТЗ = ТЗ.Колонки.Найти(ИмяКолонки);
Если КолонкаТЗ = Неопределено Тогда
КолонкаТЗ = ТЗ.Колонки.Добавить(ИмяКолонки, ТипКолонки);
КонецЕсли;
Если Заголовок <> Неопределено Тогда
КолонкаТЗ.Заголовок = Заголовок;
КонецЕсли;
Если Ширина <> Неопределено Тогда
КолонкаТЗ.Ширина = Ширина;
КонецЕсли;
Возврат КолонкаТЗ; //добавленная (или найденная и обновленная колонка) колонка
КонецФункции
Пример №2: Добавление колонки (или обновление её свойств Заголовок и Ширина) в Таблица значений в 1С 8.3:
// Добавляет новую колонку или обновляет существующую
// Если колонка уже есть, то обновляет свойства Заголовок и Ширина
// Источник: https://github.com/SeiOkami/CollectionMethodsOneS/issues/23
//
// Параметры:
// ТаблицаЗначений - ТаблицаЗначений - Таблица значений, в которую нужно добавить колонку
// Имя - Строка - Имя колонки
// Тип - ОписаниеТипов, Неопределено - Объект, описывающий допустимые типы значений для колонки.
// Если параметр не указан, в колонке можно будет хранить значение любого типа.
// Заголовок - Строка, Неопределено - Заголовок колонки таблицы значений.
// Используется при визуальном отображении таблицы значений.
// Ширина - Число, Неопределено - Ширина колонки в символах.
// Используется при визуальном отображении таблицы значений.
//
// Возвращаемое значение:
// КолонкаТаблицыЗначений - добавленная (или найденная) колонка
//
// Пример:
// ТЗ = Новая ТаблицаЗначений;
// К1 = ОбновленнаяКолонкаТаблицы(ТЗ, "К1"); //ТЗ.Колонки.Количество() = 1
// К2 = ОбновленнаяКолонкаТаблицы(ТЗ, "К2"); //ТЗ.Колонки.Количество() = 2
// К1 = ОбновленнаяКолонкаТаблицы(ТЗ, "К1"); //ТЗ.Колонки.Количество() = 2
//
Функция ОбновленнаяКолонкаТаблицы(Знач ТаблицаЗначений, Знач Имя,
Знач Тип = Неопределено, Знач Заголовок = Неопределено, Знач Ширина = Неопределено) Экспорт
Колонка = ТаблицаЗначений.Колонки.Найти(Имя);
Если Колонка = Неопределено Тогда
Колонка = ТаблицаЗначений.Колонки.Добавить(Имя, Тип);
КонецЕсли;
Если Заголовок <> Неопределено Тогда
Колонка.Заголовок = Заголовок;
КонецЕсли;
Если Ширина <> Неопределено Тогда
Колонка.Ширина = Ширина;
КонецЕсли;
Возврат Колонка;
КонецФункции
// MIT License
// Copyright (c) 2024 SeiOkami
//
// Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files
// (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify,
// merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is
// furnished to do so, subject to the following conditions:
// The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
// Если колонка уже есть, то обновляет свойства Заголовок и Ширина
// Источник: https://github.com/SeiOkami/CollectionMethodsOneS/issues/23
//
// Параметры:
// ТаблицаЗначений - ТаблицаЗначений - Таблица значений, в которую нужно добавить колонку
// Имя - Строка - Имя колонки
// Тип - ОписаниеТипов, Неопределено - Объект, описывающий допустимые типы значений для колонки.
// Если параметр не указан, в колонке можно будет хранить значение любого типа.
// Заголовок - Строка, Неопределено - Заголовок колонки таблицы значений.
// Используется при визуальном отображении таблицы значений.
// Ширина - Число, Неопределено - Ширина колонки в символах.
// Используется при визуальном отображении таблицы значений.
//
// Возвращаемое значение:
// КолонкаТаблицыЗначений - добавленная (или найденная) колонка
//
// Пример:
// ТЗ = Новая ТаблицаЗначений;
// К1 = ОбновленнаяКолонкаТаблицы(ТЗ, "К1"); //ТЗ.Колонки.Количество() = 1
// К2 = ОбновленнаяКолонкаТаблицы(ТЗ, "К2"); //ТЗ.Колонки.Количество() = 2
// К1 = ОбновленнаяКолонкаТаблицы(ТЗ, "К1"); //ТЗ.Колонки.Количество() = 2
//
Функция ОбновленнаяКолонкаТаблицы(Знач ТаблицаЗначений, Знач Имя,
Знач Тип = Неопределено, Знач Заголовок = Неопределено, Знач Ширина = Неопределено) Экспорт
Колонка = ТаблицаЗначений.Колонки.Найти(Имя);
Если Колонка = Неопределено Тогда
Колонка = ТаблицаЗначений.Колонки.Добавить(Имя, Тип);
КонецЕсли;
Если Заголовок <> Неопределено Тогда
Колонка.Заголовок = Заголовок;
КонецЕсли;
Если Ширина <> Неопределено Тогда
Колонка.Ширина = Ширина;
КонецЕсли;
Возврат Колонка;
КонецФункции
// MIT License
// Copyright (c) 2024 SeiOkami
//
// Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files
// (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify,
// merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is
// furnished to do so, subject to the following conditions:
// The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
0
комментарии
____________________
Перепечатка текста и фотографий разрешена при наличии прямой ссылки на источник