Когда требуется работать со списком типов – используется объект ОписаниеТипов (см. «Получение доступных типов», «Работа с типами реквизитов в метаданных конфигурации», «Указать фильтр типов в фильтре»).
Получить список типов
Предположим, что Вы получили готовый объект ОписаниеТипов:
ЭлементыФормы.ИмяПоля.ТипЗначения
ДокументСсылка.Метаданные().Реквизиты.ИмяРеквизита.Тип
СписокЗначений.ДоступныеЗначения
Получить список типов из объекта ОписаниеТипов можно с помощью метода .Типы(), например:
Для каждого ДоступныйТип из ЭлементыФормы.ИмяПоля.ТипЗначения Цикл
Если ДоступныйТип = Тип("Строка") Тогда
//…
КонецЕсли;
КонецЦикла;
Проверка наличия типа в списке
Если требуется просто проверить – есть ли в списке типов требуемый, можно использовать метод .СодержитТип(), например:
Если ЭлементыФормы.ИмяПоля.ТипЗначения.СодержитТип( Тип("Строка") ) Тогда
//…
КонецЕсли;
Приведение значения к разрешенному типу
Если у Вас имеется значение (например, переменная со значением) и имеется фильтр типов значений в объекте ОписаниеТипов, то возможно привести значение к тем ограничениям типов, которые указаны в объекте ОписаниеТипов.
Например:
ЗначениеРазрешенногоТипа = ОписаниеТиповФильтр.ПривестиЗначение( НекотороеЗначение );
Создание описания типов
Создать объект ОписаниеТипов требуется в тех случаях, когда требуется указать какой фильтр типов будет установлен, например, при добавлении колонки таблицы значений методом .Добавить (фильтр типов указывается вторым параметром), или для установки фильтра разрешенных типов в список значений в свойстве .ДоступныеЗначения
Если в списке разрешенных типов присутствует только один тип, то в качестве параметра при создании объекта ОписаниеТипов указывается просто название типа (см. выше «Работа с типами»).
Например:
ФильтрТипов = Новый ОписаниеТипов("Строка");
Если в списке разрешенных типов нужно указать список типов, то требуется сначала создать массив типов и указать в качестве параметра массив.
Например:
При добавлении базовых типов (строка, число, дата) Вы указываете имя типа. Но ведь базовые типы имеют настройки – длину строки, разрядность числа, дата и время или только дата.
При создании объекта ОписаниеТипов возможно указать дополнительными параметрами настройки базовых типов (любой из указанных параметров настроек – необязательный и можно пропустить).
Новый ОписаниеТипов(ИмяТипа, НастройкиТипаЧисло, НастройкиТипаСтрока, НастройкиТипаДата);
Настройки числа
Создадим настройку для целого числа с 5 цифрами: 99 999
НастройкаТипаЧисла = Новый КвалификаторыЧисла(5,0);
Создадим настройку для дробного числа с 5 цифрами до запятой и 2 цифрами после запятой: 99 999,99
НастройкаТипаЧисла = Новый КвалификаторыЧисла(5,2);
Настройка для того же числа, что и выше, и дополнительно – неотрицательного:
Настройки строки
Если необходимо использовать строку неограниченной длины – настройку указывать не надо.
Настройка для строки длиной 100 символов:
НастройкаТипаСтроки = Новый КвалификаторыСтроки(100);
Настройка для строки длиной 100 символов, значения которой дополняются до 100 символов пробелами:
Настройки даты
Если необходимо использовать дату и время – настройку указывать не надо.
Настройка для только даты, без времени (значение будет содержать время 00:00:00):
НастройкаТипаДаты = Новый КвалификаторыДаты(ЧастиДаты.Дата);
Настройка для только времени, без даты (значение будет содержать дату 01.01.0001):
НастройкаТипаДаты = Новый КвалификаторыДаты(ЧастиДаты.Время);
Пример использования настроек
Добавить комментарий
Для отправки комментария вам необходимо авторизоваться.