1С 8.3 Добавление колонки в Таблица значений - Программист 1С Минск. Автоматизация бизнеса.

Перейти к контенту

1С 8.3 Добавление колонки в Таблица значений

Данные > Примеры кода 1С > 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.
0
комментарии
____________________
Copyright©, «Программист 1С в г.Минске», 16.04.2021
Перепечатка текста и фотографий разрешена при наличии прямой ссылки на источник
Яндекс.Метрика
Защищенное соединение ssl
visa
mastercard
Maestro
Яндекс деньги
Назад к содержимому