Имя: Пароль:
1C
1С v8
СКД, два набора данных. Вывести количество с условием
0 mishkerdon
 
16.05.14
09:34
В общем есть два справочника здания и помещения. Здания является владельцем для помещения. В СКД создаю два набора данных, в первом беру все здания, во втором беру здания с помещениями типа "Жилое" (соединение внутри набора "внутреннее"). Соединяю первый набор (источник) со вторым (приемник). Создаю группировку "только иерархия" по Зданию (поле первого набора). Затем хочу добавить ресурс "количество зданий, у которых количество помещений равно 0". Как это можно сделать? Всяко разно пытался через вычисляемые поля и ресурсы, никак не получается.
На данный момент написано так: ресурс ВсегоПомещения - выражение "Количество(ВсегоПомещения)", ресурс ЗданияБезПомещения - выражение "Количество(Выбор Когда ВсегоПомещения=0 Тогда Здания Иначе Null)". Но ничего не выводит.
1 andreymongol82
 
16.05.14
09:55
Зачем два набора - не проще в самом запросе соединение сделать? Зачем внутреннее соединение, когда тут напрашивается левое? Почему условие нельзя поместить куда-нибудь в запрос в "ВЫБОР" или "ГДЕ"?
2 mishkerdon
 
16.05.14
10:07
хочется гибче. У меня еще до кучи условий, например, где помещения нежилые, где материал стен здания дерево, где только муниципальные помещения. Для каждого плодить вложенный запрос это не ведь не очень хорошо?? Или я чего-то не понимаю?
3 MKZM
 
16.05.14
10:09
(2) Параметры
4 mishkerdon
 
16.05.14
10:19
(3) что это значит? Параметры для запросов имеете ввиду??
5 wade25
 
16.05.14
10:21
(2) Не понимаешь. Не делай 2 набора данных, они совершенно для другого. Если хочешь тупой запрос, лучше временные таблицы юзай. А в твоем случае 1 вложенного хватит для всех условий.
6 mishkerdon
 
16.05.14
10:43
(5) подскажите пожалуйста, как можно такое реализовать?? Ну вот взял в одном наборе данных здания, вложенным запросом помещения (или левым соединением). Теперь мне надо посчитать количество зданий без помещений, еще количество зданий с материалом стен дерево, и еще количество зданий где форма собственности помещения муниципальный. Я написал для третьего ресурса вычисление (ВЫБОР КОГДА (Помещения.ФормаСобственности=&Муниципальный) ТОГДА ЗДАНИЯ ИНАЧЕ NULL).
Затем в ресурсах добавил это вычисляемое поле с функцией Количество. Но он мне в иерархии выводит во всех группах хотя бы 1 количество, хотя в некоторых группах здания все с помещениями.
7 mishkerdon
 
16.05.14
10:45
кстати общий итог правильный выводит, сверил через запрос.
8 antoneus
 
16.05.14
10:47
А почему не написать ВЫБОР КОГДА Помещения.ФормаСобственности=&Муниципальный ТОГДА 1 ИНАЧЕ 0 КОНЕЦ и запихать это в ресурс?
9 MKZM
 
16.05.14
10:50
(4) Или параметры или условия генерируй динамически
10 mishkerdon
 
16.05.14
10:54
(8) тогда он выводит количество помещений, а не зданий