Имя: Пароль:
1C
 
Двойной цикл в запросе
0 Gluk
 
05.07.07
11:06
УТ 8.0
Запрос по характеристикам номенклатуры. Нужно вывести остатки по регистру "ПартииТовровНаСкладах" и "ТоварыВНТТ" в разрезе складов.

Делаю так:
Создаю вложеный запрос по справочнику характеристки номенклатуры для получения ссылки, по этой ссылке связываю регистры "Партии...Остаки" и "Товары...Остатки" на дату. Вроде все нормально получаю остатки.

Как сделать цикл по складам в запросе, чтоб получилось:

ХХХХХХХХХХХХХХ |        Склад1         |        Склад2         |...
Характеристика | ПартииОст | ТоварыОст | ПартииОст | ТоварыОст |...
1 ТелепатБот
 
гуру
05.07.07
11:06
2 Gluk
 
05.07.07
11:16
up
3 Wladimir_spb
 
05.07.07
11:25
Цикл в запросе?..  :)

Нужно две группировки (итоги) по характеристикам и по складам.
Одна пойдет в строки, другая в столбцы.

Если умеете работать с консолью, то справитесь.
4 Gluk
 
05.07.07
11:27
(3) примером не поможете ?
5 Wladimir_spb
 
05.07.07
11:29
нет. выхожу с форума.

Апните в конце дня, если будут проблемы.
6 Gluk
 
05.07.07
12:22
кто-нибудь подскажите как сделать (3)
7 Gluk
 
05.07.07
12:29
up
8 ОператорПК
 
05.07.07
12:33
вместо того чтобы апать запрос лучше бы показал.
9 Gluk
 
05.07.07
12:37
ВЫБРАТЬ
   ВложенныйЗапросПоХарактеристикам.Ссылка.Наименование КАК Характеристика,
   ПартииТоваровНаСкладахОстатки.КоличествоОстаток КАК ПартииОстаток,
   ТоварыВНеавтоматизированныхТорговыхТочкахОстатки.КоличествоОстаток КАК ТоварыОстаток
ИЗ
   (ВЫБРАТЬ
       ХарактеристикиНоменклатуры.Ссылка КАК Ссылка
   ИЗ
       Справочник.ХарактеристикиНоменклатуры КАК ХарактеристикиНоменклатуры) КАК ВложенныйЗапросПоХарактеристикам
       ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ПартииТоваровНаСкладах.Остатки(&НаДату, Склад = &Склад) КАК ПартииТоваровНаСкладахОстатки
       ПО ВложенныйЗапросПоХарактеристикам.Ссылка = ПартииТоваровНаСкладахОстатки.ХарактеристикаНоменклатуры
       ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ТоварыВНеавтоматизированныхТорговыхТочках.Остатки(&НаДату, Склад = &Склад) КАК ТоварыВНеавтоматизированныхТорговыхТочкахОстатки
       ПО ВложенныйЗапросПоХарактеристикам.Ссылка = ТоварыВНеавтоматизированныхТорговыхТочкахОстатки.ХарактеристикаНоменклатуры
ИТОГИ
   СУММА(ПартииОстаток),
   СУММА(ТоварыОстаток)
ПО
   ОБЩИЕ
10 ОператорПК
 
05.07.07
12:41
мощно... зачем по справочнику характеристики запрос? тебе нужны на которых нулевой остаток? зачем вложеный запрос? делай еще итоги по складу и характеристике.
11 Gluk
 
05.07.07
12:43
(10) нет нужно как раз по всем характеристикам (не только нулевые), а главное в разрезе складов
12 Gluk
 
05.07.07
12:50
как в (9) задать условие ТоварыОстаток <> ПартииОстаток ?
13 Gluk
 
05.07.07
17:21
(12) - разобрался.
подниму из-за (11)
14 Wladimir_spb
 
05.07.07
20:56
Нет возможности проверить, но смысл приблизительно такой:

ВЫБРАТЬ
   ВложенныйЗапросПоХарактеристикам.Ссылка.Наименование КАК Характеристика,
   ПартииТоваровНаСкладахОстатки.Склад КАК Склад,
   ПартииТоваровНаСкладахОстатки.КоличествоОстаток КАК ПартииОстаток
ИЗ
   (ВЫБРАТЬ
       ХарактеристикиНоменклатуры.Ссылка КАК Ссылка
   ИЗ
       Справочник.ХарактеристикиНоменклатуры КАК ХарактеристикиНоменклатуры) КАК ВложенныйЗапросПоХарактеристикам
       ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ПартииТоваровНаСкладах.Остатки(&НаДату, ) КАК ПартииТоваровНаСкладахОстатки
       ПО ВложенныйЗапросПоХарактеристикам.Ссылка = ПартииТоваровНаСкладахОстатки.ХарактеристикаНоменклатуры
ИТОГИ
   СУММА(ПартииОстаток)
ПО
   ОБЩИЕ,
   Характеристика,
   Склад

Неавтоматизированные точки я убрал для упрощения примера.
Этот запрос нужно пробовать в консоли, выбрав там соответствующие группировки для строк и для колонок.
Есть два вида языков, одни постоянно ругают, а вторыми никто не пользуется.