|
СКД: не выбирать ничего, если не установлен отбор |
☑ |
0
echo77
22.10.13
✎
14:04
|
Есть справочник ВычислительнаяТехника.
У справочника есть ТЧ ЖесткиеДиски.
Я хочу сделать отчет на СКД, который бы позволял вывести:
- Всю вычислительную технику
- Вычислительную технику с полной ТЧ Жеские диска, но только в том случае, если в эту ВТ установлен один из перечисленных жеских дисков
|
|
1
echo77
22.10.13
✎
14:08
|
Таким образом я хочу сделать запрос с соединением реальной таблицы и вложенным запросом с объединением, в котором и будет стоять отбор по Жесткому диску
|
|
2
Defender aka LINN
22.10.13
✎
14:08
|
А "вывести всю вычислительную технику" и "не выбирать ничего" как между собой уживаются?
|
|
3
Fragster
модератор
22.10.13
✎
14:10
|
может пригодится:
ВЫБРАТЬ
ЦеновыеГруппы.Ссылка КАК ЦеноваяГруппа
ПОМЕСТИТЬ ЦеноваяГруппаИсключения
ИЗ
Справочник.ЦеновыеГруппы КАК ЦеновыеГруппы
ГДЕ
ЦеновыеГруппы.ДляКонтрагентов
{ГДЕ
ЦеновыеГруппы.Ссылка.* КАК ЦеноваяГруппаИсключения}
;
////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
ИСТИНА КАК Исключать
ПОМЕСТИТЬ ПризнакИсключать
ИЗ
Справочник.ЦеновыеГруппы КАК ЦеновыеГруппы
ГДЕ
ЦеновыеГруппы.ДляКонтрагентов
ИМЕЮЩИЕ
НЕ КОЛИЧЕСТВО(*) В
(ВЫБРАТЬ
КОЛИЧЕСТВО(*)
ИЗ
ЦеноваяГруппаИсключения)
;
////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
ВЫРАЗИТЬ(ЦеновыеГруппы.Объект КАК Справочник.Контрагенты) КАК Контрагент
ПОМЕСТИТЬ КонтрагентыИсключения
ИЗ
РегистрСведений.ЦеновыеГруппы КАК ЦеновыеГруппы
ВНУТРЕННЕЕ СОЕДИНЕНИЕ ЦеноваяГруппаИсключения КАК ЦеноваяГруппаИсключения
ПО ЦеновыеГруппы.ЦеноваяГруппа = ЦеноваяГруппаИсключения.ЦеноваяГруппа,
ПризнакИсключать КАК ПризнакИсключать
ГДЕ
ПризнакИсключать.Исключать = Истина
;
////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
Контрагенты.Ссылка КАК Контрагент
{ВЫБРАТЬ
Контрагент.* КАК КонтрагентИсключения}
ИЗ
Справочник.Контрагенты КАК Контрагенты
ЛЕВОЕ СОЕДИНЕНИЕ КонтрагентыИсключения КАК КонтрагентыИсключения
ПО Контрагенты.Ссылка = КонтрагентыИсключения.Контрагент
ГДЕ
КонтрагентыИсключения.Контрагент ЕСТЬ NULL
|
|
4
Холодильник
22.10.13
✎
14:11
|
не понятно.
Соединяешь левым соединением справочник с его ТЧ, что-то типа
Справочник.Ссылка как Ссылка,
ЕстьNULL(СправочникТЧ.ЖесткийДиск,Значение(Справочник.жесткийДиск.пустаяСсылка)) как ЖесткийДиск
|
|
5
Fragster
модератор
22.10.13
✎
14:11
|
|
|
6
Fragster
модератор
22.10.13
✎
14:13
|
еще можно анализировать отборы и схему подменять
|
|
7
echo77
22.10.13
✎
14:19
|
(3) спасибо за идею!
(6) Нет, этого не будем делать :-)
|
|