|
v7: Как получить в запросе только группы справочника первого уровня? | ☑ | ||
---|---|---|---|---|
0
box
15.06.17
✎
08:08
|
Как получить в запросе только группы справочника первого уровня?
|
|||
1
DrZombi
гуру
15.06.17
✎
08:13
|
(0) 7.7 и запросом?
Используй прямой запрос ;) или если нет такого, то лучше через цикл. |
|||
2
FIXXXL
15.06.17
✎
08:15
|
ЭтоГруппа и Родитель=пусто
елси правильно понял как там в 7 запросы - хз :) |
|||
3
box
15.06.17
✎
08:17
|
(1) (2) Скорее всего так и есть
|
|||
4
Злопчинский
15.06.17
✎
08:25
|
Мона
|
|||
5
пипец
15.06.17
✎
09:11
|
а запрос по справочнику или по регистру ?
|
|||
6
Ёпрст
15.06.17
✎
09:20
|
(0) в чорном - никак.
|
|||
7
Ёпрст
15.06.17
✎
09:21
|
Это делается в выборке, причем, мгновенно
|
|||
8
Ёпрст
15.06.17
✎
09:21
|
используя ВключатьПодчиенные(0)
|
|||
9
Ёпрст
15.06.17
✎
09:21
|
будет обход только по первому уровню
|
|||
10
pofigos
15.06.17
✎
09:22
|
Прямым как-то так:
SELECT Номенклатура.ID [Ссылка $Справочник.Номенклатура] , Номенклатура.DESCR Наименование FROM $Справочник.Номенклатура AS Номенклатура With (NOLOCK) WHERE (Номенклатура.ISFOLDER = 1) AND (Номенклатура.PARENTID = $ПустойИд) |
|||
11
Builder
15.06.17
✎
09:30
|
Выкладывал тут уже, правда давно.
Вот такой запрос выдает только группы, правда не пустые :) Осталось условие на уровень поставить. "//{{ЗАПРОС(Сформировать) |Родитель = Справочник.Номенклатура.Родитель; |Группировка Родитель; |"//}}ЗАПРОС ; |
|||
12
AliAksA
15.06.17
✎
15:59
|
Пустышка = ПолучитьПустоеЗначение("Справочник.Номенклатура");
Запрос = СоздатьОбъект("Запрос"); ТекстЗапроса = " |Обрабатывать НеПомеченныеНаУдаление; |Номен = Справочник.Номенклатура.ТекущийЭлемент; |Группа = Справочник.Номенклатура.Родитель; |Условие(Группа = Пустышка); |Функция Количество = Счётчик; |Группировка Номен Без групп;"; Если Запрос.Выполнить(ТекстЗапроса) = 1 Тогда Пока Запрос.Группировка(1) = 1 Цикл Сообщить(Запрос.Номен.Наименование); КонецЦикла; КонецЕсли; |
|||
13
Builder
15.06.17
✎
16:10
|
(12)
1. ТС просил группы. 2. Функция тут не нужна совсем. |
|||
14
AliAksA
15.06.17
✎
17:59
|
УПС, сори - отвлекли - переделывал по памяти, так сработает:
Пустышка = ПолучитьПустоеЗначение("Справочник.Номенклатура"); Запрос = СоздатьОбъект("Запрос"); ТекстЗапроса = " |Обрабатывать НеПомеченныеНаУдаление; |Группа = Справочник.Номенклатура.Родитель; |Условие(Группа.Родитель = Пустышка); |Группировка Группа;"; Если Запрос.Выполнить(ТекстЗапроса) = 1 Тогда Пока Запрос.Группировка(1) = 1 Цикл Сообщить(Запрос.Группа.Наименование); КонецЦикла; КонецЕсли; |
|||
15
FN
15.06.17
✎
19:43
|
14 не покажет группы, у которых нет вложенных элементов
|
|||
16
Злопчинский
15.06.17
✎
21:33
|
(6) стопудово?
|
|||
17
Злопчинский
15.06.17
✎
21:34
|
(15) и покажет элементы которые лежат на первом уровне вне групп
|
|||
18
Ёпрст
16.06.17
✎
09:22
|
(16) да. Чорный запрос никогда не возвратит тебе группы без элементов.
|
|||
19
Ёпрст
16.06.17
✎
09:23
|
и зачем запрос, когда 7-9 сделает это быстрее.
Сравнимо с прямым запросом |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |