Вход | Регистрация

1С:Предприятие :: 1С:Предприятие 8 общая

Вывод в иерархии результатов запроса

Вывод в иерархии результатов запроса
Я
   Звездец
 
11.05.18 - 09:47
8.3 

Нужно вывести номенклатуру в иерархии, с ценой и у которой есть остаток. Вроде как все просто, но что-то никак не соображу.

Проба 1.
Делаем вывод по справочнику номенклатура с иерархией, далее левое соединение к регистру остатков и еще левое к регистру с ценами (срезпоследних).

Но тут имеем массу дублей из-за выборки из регистра цен, так как ВЫБРАТЬ ПЕРВЫЕ не укажешь

Проба 2.
Делаем 3 запроса по Номенклатуре, регистрам остатков и Цен (срез последних Первые 1), помещаем все в 3 виртуальные таблицы, и далее запрос по ним. Ок. Дублей нет, но и иерархию так сделать же не получится.

Проба 3. Получение цен отдельным запросом. Но это уже будет запрос в цикле, некошерно и жутко медленно.

Какие еще есть варианты?
 
 
   mistеr
 
1 - 11.05.18 - 09:52
(0) 1. Запрос к остаткам, результат в ВТ1.
2. Запрос к регистру цен, срез последних, с условием (Номенклатура В (ВЫБРАТЬ Номенклатура ИЗ ВТ)), результат в ВТ2
3. Внутреннее соединение ВТ1 и ВТ2, упорядочить по иерархии.
   hhhh
 
2 - 11.05.18 - 09:55
(0) в запрос по ценам добавь ТипЦены = &ТипЦены
   Звездец
 
3 - 11.05.18 - 09:56
(2) ну это и так само собой
   Звездец
 
4 - 11.05.18 - 09:58
(1) сейчас попробую
   hhhh
 
5 - 11.05.18 - 10:00
(3) откуда тогда дубли в регистре цен.
   Звездец
 
6 - 11.05.18 - 10:07
(5) потому что при левом соединении никак не укажешь Выбрать первые 1, получается в выборке много значений. Цена то устанавливалась не раз
   aleks_default
 
7 - 11.05.18 - 10:26
(6)Дык у тебя же срез последних... откуда много значений?
   Звездец
 
8 - 11.05.18 - 10:38
(7) так, стоп, что-то я затупил. на Срез же некорректно использовать ГДЕ, нужно отбор накладывать

Список тем форума
Рекламное место пустует  Рекламное место пустует
Компьютеры — прекрасное средство для решения проблем, которых до их появления не было.
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует