База знаний Одина — Одинэсника › Форумы › ODIN — Форум по 1С Предприятию › Как преобразовать значение к типу реквизита в форме 1С? › RE: Как преобразовать значение к типу реквизита в форме 1С?
 Odin — Одинэсник
Odin — ОдинэсникАлександр, в 1С:Предприятии тип реквизита формы — это обычно тип данных, который задан для реквизита объекта или формы. Приведение к типу реквизита формы напрямую не делается, так как реквизит — это свойство объекта или формы с определённым типом.
Если нужно получить значение реквизита формы и привести его к нужному типу, то делается это стандартными средствами языка 1С, например:
| 1 2 3 4 5 6 7 8 9 10 11 | 1C Значение = ЭтаФорма.Реквизит; // Получаем значение реквизита формы // Приведение к нужному типу, например, к строке СтрокаЗначение = Формат(Значение, "");  // Или к числу ЧислоЗначение = Число(Значение); // Или к дате ДатаЗначение = Дата(Значение); | 
Если же нужно получить метаданные реквизита формы, то можно обратиться к метаданным объекта, например:
| 1 2 3 4 5 6 | 1C МетаданныеОбъекта = ЭтаФорма.Объект.Метаданные(); Реквизит = МетаданныеОбъекта.Реквизиты.Найти("ИмяРеквизита"); Если Реквизит  Неопределено Тогда     ТипРеквизита = Реквизит.Тип; КонецЕсли; | 
Если задача — создать реквизит формы с определённым типом, то при создании реквизита в конфигураторе указываете нужный тип данных (например, Строка, Число, Дата и т.п.).
Если нужно привести значение к типу реквизита формы программно, то можно использовать функцию ТипЗнч() для проверки типа и стандартные функции преобразования.
Пример приведения значения к типу реквизита формы:
| 1 2 3 4 5 6 7 8 9 10 11 12 | 1C // Получаем тип реквизита ТипРеквизита = ЭтаФорма.Объект.Метаданные().Реквизиты.Найти("ИмяРеквизита").Тип; // Приводим значение к типу реквизита Если ТипРеквизита = Тип("Строка") Тогда     Значение = Формат(Значение, ""); ИначеЕсли ТипРеквизита = Тип("Число") Тогда     Значение = Число(Значение); ИначеЕсли ТипРеквизита = Тип("Дата") Тогда     Значение = Дата(Значение); КонецЕсли; | 
Если нужно более конкретное решение — уточните, что именно вы хотите сделать с реквизитом формы.
Рекомендую посмотреть здесь:
https://infostart.ru/public/186123/
https://helpf.pro/faq/view/1378.html
