Имя: Пароль:
1C
1С v8
Как запрос правильно сделать
0 Лиза777
 
05.10.12
17:58
В поступлении товаров
три строки с одинаковой номенклатурой, у двух одинаковое содержание, у третьего другое.
Следующий запрос выводит одну строку по номенклатурам с одинаковым содержанием, не складывая сумму по ним. То есть в каждой из них 227руб., так и выводит просто 227, а не 454.

Подскажите что не так? Как вывести все суммы по всем строкам?

ВЫБРАТЬ РАЗЛИЧНЫЕ
   ПоступлениеТоваровУслугУслуги.Ссылка,
   ПоступлениеТоваровУслугУслуги.Номенклатура,
   ПоступлениеТоваровУслугУслуги.Ссылка.Подразделение,
   ПоступлениеТоваровУслугУслуги.СтатьяЗатрат,
   ПоступлениеТоваровУслугУслуги.ПодразделениеОрганизации,
   ПоступлениеТоваровУслугУслуги.Сумма
ИЗ
   Документ.ПоступлениеТоваровУслуг.Услуги КАК ПоступлениеТоваровУслугУслуги
       ПОЛНОЕ СОЕДИНЕНИЕ РегистрНакопления.ПрочиеЗатраты КАК ПрочиеЗатраты
       ПО (ПрочиеЗатраты.Регистратор = ПоступлениеТоваровУслугУслуги.Ссылка)
ГДЕ
   ПоступлениеТоваровУслугУслуги.Ссылка.Проведен = ИСТИНА
   И ПоступлениеТоваровУслугУслуги.Ссылка.Дата <= &КонПериода
   И ПоступлениеТоваровУслугУслуги.Ссылка.Дата >= &НачПериода
1 zak555
 
05.10.12
17:59
зачем тебе делать запрос по документам ?
2 IronDemon
 
05.10.12
18:00
Открой для себя группировки и агрегатные функции.
3 Deon
 
05.10.12
18:00
(0) Не выбирай РАЗЛИЧНЫЕ, делай группировку.
(1) При вводе на основании, к примеру?
4 YF
 
05.10.12
18:00
(0) Не понял ОДНУ строку содинаковыМИ ... единственное число и множественное в повествовании - че-то не вяжется
5 DrShad
 
05.10.12
18:01
ВЫБРАТЬ
   ПоступлениеТоваровУслугУслуги.Ссылка,
   ПоступлениеТоваровУслугУслуги.Номенклатура,
   ПоступлениеТоваровУслугУслуги.Ссылка.Подразделение,
   ПоступлениеТоваровУслугУслуги.СтатьяЗатрат,
   ПоступлениеТоваровУслугУслуги.ПодразделениеОрганизации,
   Сумма(ПоступлениеТоваровУслугУслуги.Сумма)
ИЗ
   Документ.ПоступлениеТоваровУслуг.Услуги КАК ПоступлениеТоваровУслугУслуги
       ПОЛНОЕ СОЕДИНЕНИЕ РегистрНакопления.ПрочиеЗатраты КАК ПрочиеЗатраты
       ПО (ПрочиеЗатраты.Регистратор = ПоступлениеТоваровУслугУслуги.Ссылка)
ГДЕ
   ПоступлениеТоваровУслугУслуги.Ссылка.Проведен
   И ПоступлениеТоваровУслугУслуги.Ссылка.Дата Между &КонПериода И &НачПериода
Сгруппировать ПО
   ПоступлениеТоваровУслугУслуги.Ссылка,
   ПоступлениеТоваровУслугУслуги.Номенклатура,
   ПоступлениеТоваровУслугУслуги.Ссылка.Подразделение,
   ПоступлениеТоваровУслугУслуги.СтатьяЗатрат,
   ПоступлениеТоваровУслугУслуги.ПодразделениеОрганизации
6 DrShad
 
05.10.12
18:02
+(5) если не вдаваться в детали
7 sapphire
 
05.10.12
18:11
(0) Научитесь правильно формулировать задачу
8 sapphire
 
05.10.12
18:14
(0)

И так ... па-апа-пам!

ВЫБРАТЬ РАЗЛИЧНЫЕ // из слова понятно, что только уникальные....

//  для строк документа наверное не хватает ПоступлениеТоваровУслугУслуги.НомерСтроки
   ПоступлениеТоваровУслугУслуги.Ссылка,
   ПоступлениеТоваровУслугУслуги.Номенклатура,
   ПоступлениеТоваровУслугУслуги.Ссылка.Подразделение,
   ПоступлениеТоваровУслугУслуги.СтатьяЗатрат,
   ПоступлениеТоваровУслугУслуги.ПодразделениеОрганизации,
   ПоступлениеТоваровУслугУслуги.Сумма
ИЗ
   Документ.ПоступлениеТоваровУслуг.Услуги КАК ПоступлениеТоваровУслугУслуги
       ПОЛНОЕ СОЕДИНЕНИЕ РегистрНакопления.ПрочиеЗатраты КАК ПрочиеЗатраты   // И что это даст?
       ПО (ПрочиеЗатраты.Регистратор = ПоступлениеТоваровУслугУслуги.Ссылка) // это зачем?

ГДЕ
   ПоступлениеТоваровУслугУслуги.Ссылка.Проведен = ИСТИНА     //за неявное соединение сразу  атата давать надо
   И ПоступлениеТоваровУслугУслуги.Ссылка.Дата <= &КонПериода // см. выше
   И ПоступлениеТоваровУслугУслуги.Ссылка.Дата >= &НачПериода // см. выше