Имя: Пароль:
1C
 
количество строк в запросе
0 little_s
 
11.01.09
16:46
Подскажите если ли какая нибудь функция типа ТабличнаяЧасть.Количество() для того, чтобы получить количество строк в табличной части в запросе?блема в том
про
1 IronDemon
 
11.01.09
16:47
"Количество" в запросе.
И что ты с ним делать будешь?
2 Черный всадник
 
11.01.09
16:47
есть
3 little_s
 
11.01.09
16:48
проблема в том, что в самом запросе я выбираю не все строки, а по условию...  а потом мне надо получить дополнительно и сколько всего строк в документе

можно конечно сделать вложенный запрос, но может быть есть специальная фукнция для этого?
4 little_s
 
11.01.09
16:50
ВЫБРАТЬ
   ЗаказНаСервисноеОбслуживаниеОсновная.Ссылка КАК Ссылка,
   СУММА(ЗаказНаСервисноеОбслуживаниеОсновная.Сумма) КАК Сумма,
   КОЛИЧЕСТВО(РАЗЛИЧНЫЕ ЗаказНаСервисноеОбслуживаниеОсновная.НомерСтроки) КАК КоличествоСтрок
ИЗ
   Документ.ЗаказНаСервисноеОбслуживание.Основная КАК ЗаказНаСервисноеОбслуживаниеОсновная
ГДЕ
   ЗаказНаСервисноеОбслуживаниеОсновная.ОбъектОбслуживания.Код ЕСТЬ NULL

СГРУППИРОВАТЬ ПО
   ЗаказНаСервисноеОбслуживаниеОсновная.Ссылка


но мне ещё надо получить и количество строк всего. а не только сумму по условию, для того, чтобы потом распределить эту сумму пропорционально
5 little_s
 
11.01.09
16:51
тут в запросе соответственно выбраны уже строки по условию... а не все....
6 IronDemon
 
11.01.09
16:51
ВЫБРАТЬ
   КОЛИЧЕСТВО(РАЗЛИЧНЫЕ РеализацияТоваровУслугТовары.НомерСтроки) КАК КвоСтрок,
   РеализацияТоваровУслугТовары.Ссылка,
   ПРЕДСТАВЛЕНИЕ(РеализацияТоваровУслугТовары.Ссылка)
ИЗ
   Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслугТовары
ГДЕ
   РеализацияТоваровУслугТовары.Ссылка = &Ссылка
   И РеализацияТоваровУслугТовары.Количество > 10

СГРУППИРОВАТЬ ПО
   РеализацияТоваровУслугТовары.Ссылка
7 Лефмихалыч
 
11.01.09
16:51
Сумма(1) как КОличествоСтрокВЗапросе

или

Запрос.Выполнить().Количество()
8 Мелкий бес
 
11.01.09
16:53
фотка на велике где ?
9 little_s
 
11.01.09
16:54
Суммма(1) - это хорошо, когда ты выбираешь все строки из табличной части, а в моем случае я выбираю не все строки,а те где заполнен товар...  

а мне надо получить количество строк ВСЕГО с учетом тех, где не заполнен товар
10 IronDemon
 
11.01.09
16:54
ВЫБРАТЬ
   NULL КАК ВсегоСтрок,
   КОЛИЧЕСТВО(РАЗЛИЧНЫЕ РеализацияТоваровУслугТовары.НомерСтроки) КАК КвоСтрок,
   РеализацияТоваровУслугТовары.Ссылка,
   ПРЕДСТАВЛЕНИЕ(РеализацияТоваровУслугТовары.Ссылка)
ИЗ
   Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслугТовары
ГДЕ
   РеализацияТоваровУслугТовары.Ссылка = &Ссылка
   И РеализацияТоваровУслугТовары.Количество > 10

СГРУППИРОВАТЬ ПО
   РеализацияТоваровУслугТовары.Ссылка

ОБЪЕДИНИТЬ ВСЕ

ВЫБРАТЬ
   КОЛИЧЕСТВО(РАЗЛИЧНЫЕ РеализацияТоваровУслугТовары.НомерСтроки),
   NULL,
   РеализацияТоваровУслугТовары.Ссылка,
   ПРЕДСТАВЛЕНИЕ(РеализацияТоваровУслугТовары.Ссылка)
ИЗ
   Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслугТовары
ГДЕ
   РеализацияТоваровУслугТовары.Ссылка = &Ссылка

СГРУППИРОВАТЬ ПО
   РеализацияТоваровУслугТовары.Ссылка
11 Aprobator
 
11.01.09
17:07
А ты условие в расчет суммы закатай:

ВЫБРАТЬ
   ЗаказНаСервисноеОбслуживаниеОсновная.Ссылка КАК Ссылка,
   СУММА(ВЫБОР КОГДА ЗаказНаСервисноеОбслуживаниеОсновная.ОбъектОбслуживания.Код ЕСТЬ NULL  ТОГДА ЗаказНаСервисноеОбслуживаниеОсновная.Сумма ИНАЧЕ 0 КОНЕЦ) КАК Сумма,
   МАКСИМУМ(ЗаказНаСервисноеОбслуживаниеОсновная.НомерСтроки) КАК КоличествоСтрок
ИЗ
   Документ.ЗаказНаСервисноеОбслуживание.Основная КАК ЗаказНаСервисноеОбслуживаниеОсновная
СГРУППИРОВАТЬ ПО ЗаказНаСервисноеОбслуживаниеОсновная.Ссылка
12 little_s
 
11.01.09
17:18
(11) Спасибо огромное :)
всё работает :)
13 Aprobator
 
11.01.09
17:21
(+11) Это если тебе нужно количество строк во всех документах. Если же тебе нужны только документы в которых это условие имеет место, тогда так:

ВЫБРАТЬ
   ЗаказНаСервисноеОбслуживаниеОсновная.Ссылка КАК Ссылка,
   СУММА(ВЫБОР КОГДА ЗаказНаСервисноеОбслуживаниеОсновная.ОбъектОбслуживания.Код ЕСТЬ NULL  ТОГДА ЗаказНаСервисноеОбслуживаниеОсновная.Сумма ИНАЧЕ 0 КОНЕЦ) КАК Сумма,
   МАКСИМУМ(ЗаказНаСервисноеОбслуживаниеОсновная.НомерСтроки) КАК КоличествоСтрок
ИЗ
   Документ.ЗаказНаСервисноеОбслуживание.Основная КАК ЗаказНаСервисноеОбслуживаниеОсновная
ГДЕ
   ЗаказНаСервисноеОбслуживаниеОсновная.Ссылка В (ВЫБРАТЬ РАЗЛИЧНЫЕ аказНаСервисноеОбслуживаниеОсновная.Ссылка КАК Ссылка
ИЗ Документ.ЗаказНаСервисноеОбслуживание.Основная КАК ЗаказНаСервисноеОбслуживаниеОсновная ГДЕ ЗаказНаСервисноеОбслуживаниеОсновная.ОбъектОбслуживания.Код ЕСТЬ NULL)

СГРУППИРОВАТЬ ПО ЗаказНаСервисноеОбслуживаниеОсновная.Ссылка
14 Aprobator
 
11.01.09
17:23
(12) всегда пжлста. Может и (13) пригодится ;)
Пользователь не знает, чего он хочет, пока не увидит то, что он получил. Эдвард Йодан