тип может быть разный в зависимости от типа свойства Характеристики номенклатуры
И потом я пытаюсь определить какого типа свойство
ТипЗначения = ТипЗнч(СписокНоменклатуры.Колонки[НомерКолонки].ТипЗначения);
ОбъектМетаданных = Метаданные.НайтиПоТипу(ТипЗначения);
Если Метаданные.Справочники.Содержит(ОбъектМетаданных) Тогда
Сообщить("Справочник");
//Зн=Справочники[].
ИначеЕсли Метаданные.Документы.Содержит(ОбъектМетаданных) Тогда
Сообщить("Документ");
КонецЕсли;
Но он выдает ошибку:
{Форма.Форма.Форма(247)}: Ошибка при вызове метода контекста (Содержит)
Если Метаданные.Справочники.Содержит(ОбъектМетаданных) Тогда
по причине:
Несоответствие типов (параметр номер '1')
(1) Теперь ошибка
{Форма.Форма.Форма(247)}: Ошибка при вызове метода контекста (НайтиПоТипу)
ОбъектМетаданных = Метаданные.НайтиПоТипу(ТипЗначения);
по причине:
Несоответствие типов (параметр номер '1')
Требовать и эффективности, и гибкости от одной и той же программы — все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух. Фредерик Брукс-младший