Тип значения при сравнении в запросе
Здравствуйте. На скрине пытаюсь сравнить поле тип значения доп реквизита, с типом число, дает ошибку ниже, понимаю что на типы ругается, но вроде вт3.Свойство.ТипЗначения стандартный реквизит пвх и содержит тип, что ему нужно.
{(122, 36)}: Неверные параметры в операции сравнения. Нельзя сравнивать поля
неограниченной длины и поля несовместимых типов.
КОГДА (вт3.Свойство.ТипЗначения <<?>>= ТИП(ЧИСЛО)) И (ТИПЗНАЧЕНИЯ(вт3.ЗначениеРеквизита) <> ТИП(ЧИСЛО)) ТОГДА Истина
{ВнешняяОбработка.ЗагрузкаЗначенийДополнительныхРеквизитов.Форма.Форма.Форма(330)}:РезультатЗапроса = Запрос.Выполнить();
{ВнешняяОбработка.ЗагрузкаЗначенийДополнительныхРеквизитов.Форма.Форма.Форма(108)}:ТаблицаЗаполнения = ПолучитьИменаДопРеквизитовОбщиеИВидыНоменклатуры(ТЗДинамическихПолей, ТаблицаЗначений, СтруктураСтатическихПолей); //сами реквизиты
{ВнешняяОбработка.ЗагрузкаЗначенийДополнительныхРеквизитов.Форма.Форма.Форма(45)}:Номенклатура = ЗапросПолученияНоменклатуры(ТаблицаЗначений, МассивИменКолонок);
{ВнешняяОбработка.ЗагрузкаЗначенийДополнительныхРеквизитов.Форма.Форма.Форма(20)}:ОбработатьФайл(ВыбранныйФайл);
по причине:
{(122, 36)}: Неверные параметры в операции сравнения. Нельзя сравнивать поля
неограниченной длины и поля несовместимых типов.
КОГДА (вт3.Свойство.ТипЗначения <<?>>= ТИП(ЧИСЛО)) И (ТИПЗНАЧЕНИЯ(вт3.ЗначениеРеквизита) <> ТИП(ЧИСЛО)) ТОГДА Истина
{(122, 36)}: Неверные параметры в операции сравнения. Нельзя сравнивать поля
неограниченной длины и поля несовместимых типов.
КОГДА (вт3.Свойство.ТипЗначения <<?>>= ТИП(ЧИСЛО)) И (ТИПЗНАЧЕНИЯ(вт3.ЗначениеРеквизита) <> ТИП(ЧИСЛО)) ТОГДА Истина
{ВнешняяОбработка.ЗагрузкаЗначенийДополнительныхРеквизитов.Форма.Форма.Форма(330)}:РезультатЗапроса = Запрос.Выполнить();
{ВнешняяОбработка.ЗагрузкаЗначенийДополнительныхРеквизитов.Форма.Форма.Форма(108)}:ТаблицаЗаполнения = ПолучитьИменаДопРеквизитовОбщиеИВидыНоменклатуры(ТЗДинамическихПолей, ТаблицаЗначений, СтруктураСтатическихПолей); //сами реквизиты
{ВнешняяОбработка.ЗагрузкаЗначенийДополнительныхРеквизитов.Форма.Форма.Форма(45)}:Номенклатура = ЗапросПолученияНоменклатуры(ТаблицаЗначений, МассивИменКолонок);
{ВнешняяОбработка.ЗагрузкаЗначенийДополнительныхРеквизитов.Форма.Форма.Форма(20)}:ОбработатьФайл(ВыбранныйФайл);
по причине:
{(122, 36)}: Неверные параметры в операции сравнения. Нельзя сравнивать поля
неограниченной длины и поля несовместимых типов.
КОГДА (вт3.Свойство.ТипЗначения <<?>>= ТИП(ЧИСЛО)) И (ТИПЗНАЧЕНИЯ(вт3.ЗначениеРеквизита) <> ТИП(ЧИСЛО)) ТОГДА Истина
Прикрепленные файлы:
По теме из базы знаний
Ответы
В избранное
Подписаться на ответы
Сортировка:
Древо развёрнутое
Свернуть все
(3)это реквизит доп реквизита определяющий его тип число, строка, значение свойств объекта, мне именно он и нужет, чтобы проверить какой тип установлен для доп реквизита, который не заполнен, в объектной модели можно использовать содержиттип, а в запросе как понимаю так не получится, т.к. и составного типа может быть, а такой функции нет
Вакансии
1С-Программист (интегратор Битрикс24)
Санкт-Петербург
зарплата от 150 000 руб. до 250 000 руб.
Полный день
Санкт-Петербург
зарплата от 150 000 руб. до 250 000 руб.
Полный день