Помогите с запросом в СКД

1. user698184_bunegin 06.10.17 14:56 Сейчас в теме
Добрый день. Подскажите, как в запросе с помощью СКД сделать такой отбор(справочник номенклатура):
Сейчас запрос выводит так :
Код ПолноеНаименование

1 Товар А
2 Товар Б
3 Товар В
4 Товар Г
и т.д.

Сам справочник номенклатура выглядит так (см рисунок), т.е. сам товар находится в папках(группе). Мне нужно исключить товар находящийся в группе "АРХИВ". Но при этом вывод должен быть, как сейчас выводит.
Прикрепленные файлы:
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. Xamele0n88 06.10.17 15:23 Сейчас в теме
Если в запросе, то
НЕ Номенклатура.Родитель В ИЕРАРХИИ (&ИсключаемаяГруппа)
Если в скд, то просто отбор в пользовательском режиме с видом сравнения "не в группе"
3. seka09 4 06.10.17 15:41 Сейчас в теме
Выбрать
Ном.ссылка КАК РОдитель
Поместить ВТ_Ном
ИЗ
Справочники.Номенклатура КАК Ном
Где
Ном.ЭтоГруппа=истина
И Ном.Наименование="Архив"
;
/////////////
Выбрать
Ном.Код,
Ном.ПолноеНаименование
ИЗ
Справочники.Номенклатура Как Ном
Где
Ном.Этогруппа=Ложь
И Не Ном.Родитель В Иерархии (Выбрать Вт_Ном.Родитель КАК Родитель ИЗ 
ВТ_НОМ КАК ВТ_НОМ)
Показать
4. user698184_bunegin 06.10.17 16:22 Сейчас в теме
(3) Объясните пожалуйста
1.Так, мне не понятно, что вот это "Вт_Ном" ?
2. Мой код начальный:
 "ВЫБРАТЬ
	        |Номенклатура.Код,
		|	Номенклатура.НаименованиеПолное
		|ИЗ
		|	Справочник.Номенклатура КАК Номенклатура
                |УПОРЯДОЧИТЬ ПО
		|	Код  ";


С вашей подсказкой:
ВЫБРАТЬ
					|	Номенклатура.Код КАК Код,
					|	Номенклатура.НаименованиеПолное,
					|ИЗ
					|	Справочник.Номенклатура КАК Номенклатура
					|ГДЕ
					|Номенклатура.Этогруппа=Ложь 
					|И Не Номенклатура.Родитель В Иерархии (Выбрать Вт_Номенклатура.Родитель КАК Родитель ИЗ 
					|ВТ_Номенклатура КАК ВТ_Номенклатура)
					|УПОРЯДОЧИТЬ ПО
					|	Код  ";
Показать


Возникает ошибка
{ВнешняяОбработка.ВнешняяОбработка1.Форма.Форма.Форма(42)}: Ошибка при вызове метода контекста (Выполнить)
Выборка = Запрос.Выполнить().Выгрузить();
по причине:
{(10, 1)}: Таблица не найдена "ВТ_Номенклатура"
<<?>>ВТ_Номенклатура КАК ВТ_Номенклатура)
5. seka09 4 06.10.17 20:48 Сейчас в теме
(4)
латур

Где первый запрос? Временная таблица ВТ_Ном. Ты первую часть забыл
Можно так сделать
1) Если это скд
Выбрать
Ном.ссылка КАК РОдитель
Поместить ВТ_Ном
ИЗ
Справочники.Номенклатура КАК Ном
Где
Ном.ЭтоГруппа=истина
И Ном.Наименование="Архив"
;
/////////////
Выбрать
Ном.Код,
Ном.ПолноеНаименование
ИЗ
Справочники.Номенклатура Как Ном
Где
Ном.Этогруппа=Ложь
И Не Ном.Родитель В Иерархии (Выбрать Вт_Ном.Родитель КАК Родитель ИЗ
ВТ_НОМ КАК ВТ_НОМ)

2) Или
Запрос.Текст=
"Выбрать
|Ном.Код,
|Ном.ПолноеНаименование
|ИЗ
|Справочники.Номенклатура Как Ном
|Где
|Ном.Этогруппа=Ложь
|И Не Ном.Родитель В Иерархии (&ИсклГруппа)";
Запрос.УстановитьПараметр("ИсклГруппа",Справочники.Номенклатура.НайтиПоНаименованию("Архив")); ИЛи вообще найтиПОКоду использовать
6. pavel06 2 07.10.17 02:07 Сейчас в теме
(4)
Так, мне не понятно, что вот это "Вт_Ном" ?


Это временная таблица - результат другого запроса, который отделен в тексте - /////, прочитайте про их создание http://1clancer.ru/article/skd_ispolzovanie_vremennykh_tablits_v_zaprosakh_1­518

https://www.youtube.com/watch?v=zyYgvIVNCIU
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот