Когда ТипыДокументов = Неопределено, Типы не заполняются и появляется ошибка:
Неверные параметры в операции сравнения. Нельзя сравнивать поля
неограниченной длины и поля несовместимых типов.
Неужели теперь проверяются все условия, хотя первого достаточно, что бы не заходить в ветку?
М.б. секрет какой кесть?)
8.3.9.1818
скульный запрос на основании запроса в (1) при ЕстьУсловие = Ложь выдает "WHERE 1=1".
При Истина - конструкцию "CASE WHEN..."
Но только в том случае, когда переменная ТипыДокументов имеет тип "Тип".
Если ТипыДокументов другого типа, ругается.
ВЫБРАТЬ ПЕРВЫЕ 10
АктОбОказанииПроизводственныхУслуг.Ссылка
ИЗ
Документ.АктОбОказанииПроизводственныхУслуг КАК АктОбОказанииПроизводственныхУслуг
ГДЕ
ВЫБОР
КОГДА &ЕстьОтбор = ИСТИНА
ТОГДА ТИПЗНАЧЕНИЯ(АктОбОказанииПроизводственныхУслуг.Ссылка) В (&Отбор)
ИНАЧЕ ИСТИНА
КОНЕЦ
Параметры
ЕстьОтбор = Ложь
Отбор = неопределено
8.3.5.1443
SELECT TOP 10
T1._IDRRef
FROM dbo._Document261 T1
WHERE 0x01 = 0x01
Кaк может человек ожидaть, что его мольбaм о снисхождении ответит тот, кто превыше, когдa сaм он откaзывaет в милосердии тем, кто ниже его? Петр Трубецкой