Версия для печати темы (https://pro1c.org.ua/index.php?s=324765fcb19f961a59964dfa9080a4b3&showtopic=21105)

Нажмите сюда для просмотра этой темы в обычном формате

Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 _ Программирование обычных форм 1С 8.2 и не интерфейсной логики _ Проверка в запросе на вхождение

Автор: SergXP 09.12.14, 15:03

В языке запросов оператор "В" и "В ИЕРАРХИИ" проверяют параметр на вхождение в элемент справочника (иерархического). Мне нужно проверить вхождение в табличную часть элемента справочника. Результат запроса возвращается пустой. Чем можно победить условие вхождения?
Спасибо.

Автор: Petre 09.12.14, 15:21

Здесь нет никакого "вхождения".
Опишите подробней, что вам надо получить. Возможно все обойдется запросом к табличной части справочника.

Автор: SergXP 09.12.14, 15:47

Я уже кое-что выяснил, но это только то, что нужно действовать через вложенный запрос к ТЧ элемента справочника и результта передавать оператору В (). А чтобы было понятно - поясню задачу...
Есть план счетов, реестр бухгалтерии. Есть справочник журнал-ордер с табличной частью. ТЧ содержит список счетов для элемента. В запросе к регистру бухгалтерии нужно отбирать обороты с условием вхождения счета Кт в список выбранного журнала (другими словами - фильтр). Я попробовал в параметры запроса передать ссылку на ТЧ выбранного журнала

Запрос.УстановитьПараметр("Журнал", Журнал.Счета);

Выполнить() - не ругается, но и ничего не выбирает. Я думал, что если оператор "В ()" работает с элементом иерархического справочника, то смог бы и с ТЧ тоже, но видимо ошибался.

Автор: alex040269 09.12.14, 16:24

Цитата(SergXP @ 09.12.14, 15:47) *
Запрос.УстановитьПараметр("Журнал", Журнал.Счета);

не правильно. условие запроса?

Автор: logist 09.12.14, 16:39

Цитата(SergXP @ 09.12.14, 15:47) *
думал, что если оператор "В ()" работает с элементом иерархического справочника

Оператор "В работает с массивом или списком значений, или результатом другого запроса, результатом которого является одна колонка

Автор: SergXP 09.12.14, 16:54

Цитата(logist @ 09.12.14, 17:39) *
Оператор "В работает с массивом или списком значений, или результатом другого запроса, результатом которого является одна колонка

Да, это я уже выяснил. Немного поизвращался и решил вопрос вложенным запросом. Всем спасибо... А может есть еще решения? 433.gif

Автор: logist 09.12.14, 17:00

Цитата(SergXP @ 09.12.14, 16:54) *
А может есть еще решения?

Покажите Ваш запрос. Не совсем понятно, что решать надо...

Автор: SergXP 26.12.14, 13:21

Цитата(logist @ 09.12.14, 18:00) *
Покажите Ваш запрос. Не совсем понятно, что решать надо...

Все, спасибо. Вопрос решил и снял его с повестки дня.

Автор: drug_com 14.04.18, 8:42

Цитата(SergXP @ 26.12.14, 14:21) *
Вопрос решил и снял его с повестки дня.

Эгоистично.
Неужели сложно для наглядности выложить решение для подрастающих новых поколений программистов 1с?
sad.gif

Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7
https://pro1c.org.ua