Чтобы не изобретать велосипед. Существует ли уже написанная функция, которая бы текстовую строку приводила к соответствующему типу из описания типов, предпринимая попытки искать в индексированных реквизитах?
Если Метаданные.Справочники.Содержит(ОбъектМетаданных) Тогда
Если ОбъектМетаданных.ДлинаКода > 0 Тогда
Значение = Справочники[ОбъектМетаданных.Имя].НайтиПоКоду(Текст);
Если ЗначениеЗаполнено(Значение) Тогда
Возврат Значение;
КонецЕсли;
КонецЕсли;
Если ОбъектМетаданных.ДлинаНаименования > 0 Тогда
Значение = Справочники[ОбъектМетаданных.Имя].НайтиПоНаименованию(Текст, Истина);
Если ЗначениеЗаполнено(Значение) Тогда
Возврат Значение;
КонецЕсли;
КонецЕсли;
ИначеЕсли Метаданные.Документы.Содержит(ОбъектМетаданных) Тогда
Значение = Документы[ОбъектМетаданных.Имя].НайтиПоНомеру(Текст);
Если ЗначениеЗаполнено(Значение) Тогда
Возврат Значение;
КонецЕсли;
ИначеЕсли Метаданные.ПланыСчетов.Содержит(ОбъектМетаданных) Тогда
Значение = ПланыСчетов[ОбъектМетаданных.Имя].НайтиПоКоду(Текст);
Если ЗначениеЗаполнено(Значение) Тогда
Возврат Значение;
КонецЕсли;
КонецЕсли;
КонецЦикла;
Возврат ОписаниеТипов.ПривестиЗначение(Текст);
КонецФункции
Применяется для загрузки макета или Excel в типизированную ТЗ.
Кaк может человек ожидaть, что его мольбaм о снисхождении ответит тот, кто превыше, когдa сaм он откaзывaет в милосердии тем, кто ниже его? Петр Трубецкой