Здравствуйте. На скрине пытаюсь сравнить поле тип значения доп реквизита, с типом число, дает ошибку ниже, понимаю что на типы ругается, но вроде вт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.ЗначениеРеквизита) <> ТИП(ЧИСЛО)) ТОГДА Истина
Прикрепленные файлы:

По теме из базы знаний
- Расчёт медианы числовых рядов запросом
- Консоль запросов для управляемых форм 8.3
- Консоль кода с поддержкой объявления процедур и функций, с дополнительными функциями отслеживания и вывода значений
- Автоматизация импорта значений в отбор типовых отчетов конфигурации 1С: Бухгалтерия предприятия 3.0
- Быстродействие типовой 1С
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(3)это реквизит доп реквизита определяющий его тип число, строка, значение свойств объекта, мне именно он и нужет, чтобы проверить какой тип установлен для доп реквизита, который не заполнен, в объектной модели можно использовать содержиттип, а в запросе как понимаю так не получится, т.к. и составного типа может быть, а такой функции нет
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот