odata запрос с фильтром по полю ссылочного (НЕ составного) типа

1. e-9 60 17.05.19 14:13 Сейчас в теме
ЕРП 2.4
Через стандартный интерфейс хочу вытянуть "Приобретение товаров и услуг", созданный на основании заказа с известным мне гуином.
Делаю запрос к списку всех приобретений:
http://localhost/erpup/odata/standard.odata/Document_ПриобретениеТоваровУслуг
Все ок, получаю список документов, в котором имеется интересующий меня (содержит <d:ЗаказПоставщику_Key>9ac24e41-66a8-11e9-8b98-a01d48dffcd7</d:ЗаказПоставщику_Key>) документ.

Делаю запрос с фильтром:
http://localhost/erpup/odata/standard.odata/Document_ПриобретениеТоваровУслуг?$filter=ЗаказПоставщику eq guid'9ac24e41-66a8-11e9-8b98-a01d48dffcd7'
получаю:
Неверные параметры в операции сравнения. Нельзя сравнивать поля неограниченной длины и поля несовместимых типов. ( sourceAlias.ЗаказПоставщику ) <<?>>= ( &fc_param0 )

Хотя реквизит "ЗаказПоставщику" и НЕ составной - делаю запрос:
http://localhost/erpup/odata/standard.odata/Document_ПриобретениеТоваровУслуг?$filter=ЗаказПоставщику eq cast(guid'9ac24e41-66a8-11e9-8b98-a01d48dffcd7', 'Document_ЗаказПоставщику')
получаю: Неправильный тип аргумента у функции "cast"

По другим полям (например, Number) - фильтр работает.

Заказ поставщику тоже вытягивается без проблем запросом:
http://localhost/erpup/odata/standard.odata/Document_ЗаказПоставщику(guid'9ac24e41-66a8-11e9-8b98-a01d48dffcd7')

ЧЯДНТ???
По теме из базы знаний
Найденные решения
5. e-9 60 19.05.19 14:52 Сейчас в теме
Итого: вся проблема в неумении 1С писать документацию - см. скрин.

Пример (2) написан синтаксически некорректно. Если посмотреть на описание синтаксиса (1), то запрос надо было писать так:

http://localhost/erpup/odata/standard.odata/Document_ПриобретениеТоваровУслуг?$filter=cast(ЗаказПоставщику, 'Document_ЗаказПоставщику') eq guid'9ac24e41-66a8-11e9-8b98-a01d48dffcd7'

Да, можно сказать, что "и я олень" - надо сразу было смотреть в табличку синтаксиса. Но! пример-то с ИТС ближе к моей ситуации.....
Прикрепленные файлы:
shitskov.a.a; user785225; Sejix; TanyTany; kirabr; _root; ducks01; Danil.Potapov; +8 Ответить
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. e-9 60 19.05.19 14:31 Сейчас в теме
да-а..... не пользуется популярностью стандартный интерфейс, похоже
Ну хоть каких-то идей может кто подкинет(((
Переопубликация не помогла (фары протер, колеса попинал); что еще.... ах, да: платформа 8.3.12.1595, режим совместимости 8.3.10.

Вроде все сделано как надо - "Нельзя сравнивать поля неограниченной длины и поля несовместимых типов."

1С [как всегда] в продакшн недопиленный функционал выбросила?
5. e-9 60 19.05.19 14:52 Сейчас в теме
Итого: вся проблема в неумении 1С писать документацию - см. скрин.

Пример (2) написан синтаксически некорректно. Если посмотреть на описание синтаксиса (1), то запрос надо было писать так:

http://localhost/erpup/odata/standard.odata/Document_ПриобретениеТоваровУслуг?$filter=cast(ЗаказПоставщику, 'Document_ЗаказПоставщику') eq guid'9ac24e41-66a8-11e9-8b98-a01d48dffcd7'

Да, можно сказать, что "и я олень" - надо сразу было смотреть в табличку синтаксиса. Но! пример-то с ИТС ближе к моей ситуации.....
Прикрепленные файлы:
shitskov.a.a; user785225; Sejix; TanyTany; kirabr; _root; ducks01; Danil.Potapov; +8 Ответить
3. e-9 60 19.05.19 14:40 Сейчас в теме
..... оказывается, просто желтые так и не научились мануалы писать!
Синтаксис фильтра по составному (хотя у нас и не составное - но это так, мелочи желтой профессии) полю такой:

http://localhost/erpup/odata/standard.odata/Document_ПриобретениеТоваровУслуг?$filter=cast(ЗаказПоставщику, 'Document_ЗаказПоставщику') eq guid'9ac24e41-66a8-11e9-8b98-a01d48dffcd7'

И подсмотрел я эту мысль на "левом" сайте (https://1c-programmer-blog.ru/programmirovanie/rest-interfejs-odata-v-1c.html)!

Сравниваем с ИТС: https://its.1c.ru/db/v8312doc#bookmark:dev:TI000001757
$filter=ДокументПрихода­eq­cast(guid'0d4a79cb-9843-4147-bcd9-80ac3ca2b9c7',­'Document_ПриходнаяНакладная')­

...
4. acanta 19.05.19 14:43 Сейчас в теме
По реквизиту для фильтра индекс не нужен?
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот