К списку форумов К списку тем
Регистрация    Правила    Главная форума    Поиск   
Имя: Пароль:
Рекомендовать в новости

1С++ Прямой запрос, как соединить по реквизиту типа "Документ" (неопределённого вида)

Гость
0 - 17.05.2020 - 05:18
Всем доброго времени.
Немножко пробую раскуривать прямые запросы, и прошу помощи знатоков. Понимаю, что вопрос ерундовый, но как-то не получается найти ответ.
В конфигурации есть документ "Челобитная".
И есть справочник "БиблиотекаИванаГрозного", в нём реквизит "ДокументСсылка".
Тип этого реквизита - "Документ", неопределённого вида.
Пытаюсь сделать запрос по документам вида "Челобитная", с внутренним соединением по справочнику "БиблиотекаИванаГрозного".

SELECT
ДокументЧелобитная.IDDoc as [Ссылка $Документ.Челобитная],
$СправочникБиблиотека.Полка as Полка,
СправочникБиблиотека.ID as [ЭлементБиблиотеки $Справочник.БиблиотекаИванаГрозного]
FROM
$Документ.Челобитная AS ДокументЧелобитная
INNER JOIN
$Справочник.БиблиотекаИванаГрозного as СправочникБиблиотека
ON
ДокументЧелобитная.IDDoc = $СправочникБиблиотека.ДокументСсылка

Результат запроса пустой.
Умом понимаю, что причина в несовпадении реквизитов. В справочнике реквизит "ДокументСсылка" имеет длину 13 символов. А IDDoc документа имеет длину 9 символов.
Подскажите плиз, как правильно написать условие соединения?



Гость
1 - 17.05.2020 - 06:48
ДокументЧелобитная.IDDoc = RIGHT($СправочникБиблиотека.ДокументСсылка,9)
На вид документа (первые 4 символа наверное условие можно не накладывать, так как IdDoc уникальный, в отличие от Id справочников)
Гость
2 - 17.05.2020 - 09:10
1-USSR > Спасибо! Всё гениальное просто )
Интересно, а для справочников как тогда решать эту проблему? Добавлять какое-то условие по виду?
Гость
3 - 17.05.2020 - 10:52
Да, смотрите $ВидДокумента36
Гость
4 - 17.05.2020 - 12:20
Спасибо!
Гость
5 - 17.05.2020 - 12:31
Только немного ошибся - $ВидСправочника36 )


К списку вопросов






Copyright ©, Все права защищены