Запрос. Условие "ГДЕ" реквизит определенного типа #355547


#0 by ne6o
Нужно отобрать все документы, где реквизит имеет тип строка. Изначально реквизит составного типа: 2.Ссылка на справочник; Выбрать  Док.Ссылка КАК Ссылка Из  Документы.Док КАК Док
#1 by ТелепатБот
#2 by IronDemon
Поля исходных таблиц могут иметь составной тип. Для таких полей возникает необходимость привести значения поля к какому-либо определенному типу. В языке запросов предусмотрена возможность приведения типа, ею можно пользоваться в списке полей выборки и в условии отбора в предложении ГДЕ. <Приведение типа> СТРОКА [(Длина)]| Число Число <Выражение> приводится к одному из примитивных типов, или к ссылочному типу данных; в последнем случае <Имя таблицы> указывает на соответствующую таблицу информационной базы. Если <Выражение> содержит в составном типе требуемый <Тип значения>, то приведение типа считается осуществимым, и для каждого значения указанного типа результатом будет это самое значение. Для значений других типов результатом приведения типа будет значение NULL. Если <Выражение> не содержит в составном типе требуемый <Тип значения>, то выполнение данного запроса завершится ошибкой из-за принципиальной невозможности совершить приведение типов. Для <Тип значения> СТРОКА с указанием длины максимальный размер строки 1024.
#3 by ne6o
мне не нужно приводить к типу Строка Нужно отобрать ТОЛЬКО те документы, у которых ТипЗнч(Реквизита) = Тип("Строка")
#4 by tautau
ГДЕ НЕ ПолеТакоеТо ССЫЛКА Справочник.СправочникСякойТо
#5 by ne6o
Так и делаю, поэтому возник вопрос неужели нельзя отобрать ТОЛЬКО где ТипЗнч(Док.Реквизит) = Тип("Строка") ?
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С