|
Справочник, произвольный запрос, проверка на вхождение | ☑ | ||
---|---|---|---|---|
0
ixilimuse
14.06.13
✎
13:41
|
Всем доброго времени суток.
Использую 1С 8.2, Управляемые формы, тонкий клиент. Есть справочник. В нем есть форма списка. В ней список формируется Произвольным запросом. Изначально запрос был таковым: ВЫБРАТЬ СправочникДВК_МоеОкружение.Ссылка, СправочникДВК_МоеОкружение.ВерсияДанных, СправочникДВК_МоеОкружение.ПометкаУдаления, СправочникДВК_МоеОкружение.Предопределенный, СправочникДВК_МоеОкружение.Код, СправочникДВК_МоеОкружение.Наименование, СправочникДВК_МоеОкружение.ДатаРождения, СправочникДВК_МоеОкружение.Визитка, СправочникДВК_МоеОкружение.Комментарий, МЕСЯЦ(СправочникДВК_МоеОкружение.ДатаРождения) КАК МесяцРождения, ДЕНЬ(СправочникДВК_МоеОкружение.ДатаРождения) КАК ДеньРождения, ГОД(СправочникДВК_МоеОкружение.ДатаРождения) КАК ГодРождения ИЗ Справочник.ДВК_МоеОкружение КАК СправочникДВК_МоеОкружение ГДЕ СправочникДВК_МоеОкружение.Визитка = &Визитка На форме есть галочка, с помощью которой я фильтровал визитки и не визитки. И это прекрасно работало! Затем я решил ещё сделать фильтры по категориям. Для этого у меня у каждого элемента справочника есть Табличная часть Категории. В неё входят категории к которым относятся элементы. В общем формирую я список категорий для фильтрации. Передаю в параметр запроса списка. Запрос переписал вот таким образом: ВЫБРАТЬ СправочникДВК_МоеОкружение.Ссылка, СправочникДВК_МоеОкружение.ВерсияДанных, СправочникДВК_МоеОкружение.ПометкаУдаления, СправочникДВК_МоеОкружение.Предопределенный, СправочникДВК_МоеОкружение.Код, СправочникДВК_МоеОкружение.Наименование, СправочникДВК_МоеОкружение.ДатаРождения, СправочникДВК_МоеОкружение.Визитка, СправочникДВК_МоеОкружение.Комментарий, МЕСЯЦ(СправочникДВК_МоеОкружение.ДатаРождения) КАК МесяцРождения, ДЕНЬ(СправочникДВК_МоеОкружение.ДатаРождения) КАК ДеньРождения, ГОД(СправочникДВК_МоеОкружение.ДатаРождения) КАК ГодРождения ИЗ Справочник.ДВК_МоеОкружение КАК СправочникДВК_МоеОкружение ГДЕ СправочникДВК_МоеОкружение.Визитка = &Визитка И ВЫБОР КОГДА &ОтборПоКатегориям ТОГДА СправочникДВК_МоеОкружение.Ссылка В ( ВЫБРАТЬ РАЗЛИЧНЫЕ ПодзапросКатегории.Ссылка ИЗ Справочник.ДВК_МоеОкружение.Категории КАК ПодзапросКатегории ГДЕ ПодзапросКатегории.Категория В (&Категории) ) ИНАЧЕ ИСТИНА КОНЕЦ В идеале когда мы в фильтрах отмечаем все категории, у нас должны вывестись все записи справочника так как в каждой записи по одной категории да отмечено (Факт). Тем не менее, у меня отображается в таком случае только тот элемент, у которого в категориях есть первая категория из фильтров. Остальные отсеиваются.. Причем, такой же запрос выполняю в консоли запросов - и она отрабатывает на славу. Ладно, переклинило меня, я подумал может платформа самостоятельно выбирает мне табличную часть по конкретному элементу. Почему бы нет? Снова модифицирую запрос на такой вариант: ВЫБРАТЬ СправочникДВК_МоеОкружение.Ссылка, СправочникДВК_МоеОкружение.ВерсияДанных, СправочникДВК_МоеОкружение.ПометкаУдаления, СправочникДВК_МоеОкружение.Предопределенный, СправочникДВК_МоеОкружение.Код, СправочникДВК_МоеОкружение.Наименование, СправочникДВК_МоеОкружение.ДатаРождения, СправочникДВК_МоеОкружение.Визитка, СправочникДВК_МоеОкружение.Комментарий, МЕСЯЦ(СправочникДВК_МоеОкружение.ДатаРождения) КАК МесяцРождения, ДЕНЬ(СправочникДВК_МоеОкружение.ДатаРождения) КАК ДеньРождения, ГОД(СправочникДВК_МоеОкружение.ДатаРождения) КАК ГодРождения ИЗ Справочник.ДВК_МоеОкружение КАК СправочникДВК_МоеОкружение ГДЕ СправочникДВК_МоеОкружение.Визитка = &Визитка И ВЫБОР КОГДА &ОтборПоКатегориям ТОГДА СправочникДВК_МоеОкружение.Ссылка В (&Категории) ИНАЧЕ ИСТИНА КОНЕЦ Только теперь в параметр "Категории" я вношу список ссылок элементов справочника. Данный список формирую снаружи. Иду в отладку, четко вижу что в параметр передается весь перечень элементов справочника, но в таблицу мне все равно выводится только один элемент. Хотя в консоли запросов опять же этот запрос отрабатывает - идеально. Вопрос: Чего я не понимаю или не знаю? Где делаю не так? Вразумите добрые люди, благодарен буду) |
|||
1
ixilimuse
14.06.13
✎
14:01
|
Вах!!!
Все элементарнее простого оказалось.. Просто надо было походить, чай попить, посмотреть на облака.. Решение: В параметр надо передавать не СписокЗначений, а Массив! |
|||
2
ixilimuse
14.06.13
✎
14:01
|
Всем спасибо за участие, и позитивной всем Пятницы :)
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |