Имя: Пароль:
1C
1С v8
Условие в запросе по типу документа выдает сообщение "Несовместимые типы "ССЫЛКА"&quo
0 pvase
 
07.03.19
15:22
Выполнение такого запроса дает ошибку "Несовместимые типы "ССЫЛКА"":
ВЫБРАТЬ
    ТИПЗНАЧЕНИЯ(РазмещениеЗаказовПокупателейОстатки.ЗаказПокупателя) КАК ВидДок
ИЗ
    РегистрНакопления.РазмещениеЗаказовПокупателей.Остатки КАК РазмещениеЗаказовПокупателейОстатки
ГДЕ    
    //ТИПЗНАЧЕНИЯ(РазмещениеЗаказовПокупателейОстатки.ЗаказПокупателя) = ТИП(Документ.ВнутреннийЗаказ)
    РазмещениеЗаказовПокупателейОстатки.ЗаказПокупателя ССЫЛКА Документ.ВнутреннийЗаказ

а вот такой запрос выполняется без проблем:
ВЫБРАТЬ
    ТИПЗНАЧЕНИЯ(РазмещениеЗаказовПокупателейОстатки.ЗаказПокупателя) КАК ВидДок
ИЗ
    РегистрНакопления.РазмещениеЗаказовПокупателей.Остатки КАК РазмещениеЗаказовПокупателейОстатки
ГДЕ    
    ТИПЗНАЧЕНИЯ(РазмещениеЗаказовПокупателейОстатки.ЗаказПокупателя) = ТИП(Документ.ВнутреннийЗаказ)
    //РазмещениеЗаказовПокупателейОстатки.ЗаказПокупателя ССЫЛКА Документ.ВнутреннийЗаказ

в чем может быть проблема?
1 pvase
 
07.03.19
15:26
Вот такой запрос:
ВЫБРАТЬ
    ТИПЗНАЧЕНИЯ(РазмещениеЗаказовПокупателейОстатки.ЗаказПокупателя) КАК ВидДок
ИЗ
    РегистрНакопления.РазмещениеЗаказовПокупателей.Остатки КАК РазмещениеЗаказовПокупателейОстатки
ГДЕ    1=1

возвращает 3 записи с заполненными ВидДок = "Заказ покупателя"
2 Cyberhawk
 
07.03.19
15:26
Это и есть нюансы. Тип составной.
3 Cyberhawk
 
07.03.19
15:27
4 aleks_default
 
07.03.19
15:29
(2)Типа ССЫЛКА для составного типа не работает? Даладно
5 aleks_default
 
07.03.19
15:30
А или у него в регистре НЕ составной тип?
6 Ns33
 
07.03.19
15:39
У тебя в регистре ЗаказПокупателя не может быть Документ.ВнутреннийЗаказ. Я проверил запрос у себя на КА 1, норм, как только меняю условие на "РазмещениеЗаказовПокупателейОстатки.ЗаказПокупателя ССЫЛКА Документ.АвансовыйОтчет" то такая-же ошибка.
7 Cyberhawk
 
07.03.19
15:46
(4) Думаю, что не работает, когда там Неопределено (а не пустая ссылка, чего в составном реквизита вроде как быть не может)
8 RomanYS
 
07.03.19
15:49
(1) Значит есть отстаки по 3-м заказам. Что не так?
9 aleks_default
 
07.03.19
15:51
(7) нифига, все работает. Неопределено нормально проверяется на ССЫЛКА.
10 aleks_default
 
07.03.19
15:53
И не понял почему в составном типе не может быть неопределено?
11 RomanYS
 
07.03.19
15:57
(9) такая же ошибка как в (0). Режим совместимости 8.2

ВЫБРАТЬ
    Неопределено ССЫЛКА Справочник.Контрагенты КАК Поле1
12 aleks_default
 
07.03.19
15:59
(11)немудрено
13 sqr4
 
07.03.19
16:01
(7) +
Похоже реально что то со значениями т.е попадается такое значение которому Ссылка нельзя прменить
14 RomanYS
 
07.03.19
16:02
(7) >> а не пустая ссылка, чего в составном реквизита вроде как быть не может
С чего вдруг, в составном типе могут быть как пустые ссылки так и неопределено
15 pvase
 
07.03.19
16:04
(6) Прав, в регистре для измерения "ЗаказПокупателя" не был выбран документ "ВнутреннийЗаказ". Спасибо
16 RomanYS
 
07.03.19
16:04
(13) ответ в (6). И ошибка эта возникает до выполнения запроса, независимо от и имеющихся в базе данных.
17 aleks_default
 
07.03.19
16:11
Поясню свое заявление. Имел ввиду, что если в таблице, в поле составного типа содержится значение НЕОПРЕДЕЛЕНО, то конструкция запроса "Поле ССЫЛКА КакойТоСсылочныйТип" нормально отрабатывает, без ошибок.
18 Cyberhawk
 
07.03.19
16:13
(9) Значит в составном типе нет такого, которые после ССЫЛКА указан
19 Cyberhawk
 
07.03.19
16:14
О, опоздал, уже выяснили)
20 Cyberhawk
 
07.03.19
16:15
(14) Я имел в виду "неинициализированное значение" не может быть какой-то ссылкой в реквизитах составного типа) Поправка справедливая.
Ну т.е. добавили новый реквизит составного типа - будет там сидеть Неопределено. Ну а потом уже будет сидеть то, что записали, в т.ч. пустую ссылку, это да.
Компьютеры — прекрасное средство для решения проблем, которых до их появления не было.