Вход | Регистрация
 
1С:Предприятие :: 1С:Предприятие 8 общая

Количество элементов выборки запроса с итогами

Количество элементов выборки  запроса с итогами
Я
   Slon747
 
29.10.19 - 13:53
Запрос с итогами.
Можно ли получить кол-во элементов внутренней группировки?
Или придется обходить группировки выборки и перебором считать?
 
 
   RomaH
 
1 - 29.10.19 - 13:58
итоговое поле количество или сумма не пойдет?
   RomanYS
 
2 - 29.10.19 - 13:59
дублировать нужные поля и 
Итоги количество (различные ПолеСчетчик)
   dka80
 
3 - 29.10.19 - 14:00
Можно. Если итоговое поле "Количество" не подходит по каким-то причинам, например, добавить колонку "Количество" со значением 1 и итог по нему "Сумма"
   DrWatson
 
4 - 29.10.19 - 14:07
(0) Метод Количество() у выборки не подходит?
   Консультант Баранов
 
5 - 29.10.19 - 14:13
ВЫБРАТЬ
    АвансовыйОтчетТовары.Ссылка.Склад КАК Склад,
    АвансовыйОтчетТовары.Номенклатура КАК Номенклатура,
    КОЛИЧЕСТВО(РАЗЛИЧНЫЕ АвансовыйОтчетТовары.Ссылка) КАК Ссылка,
    СУММА(АвансовыйОтчетТовары.Количество) КАК Количество,
    СУММА(АвансовыйОтчетТовары.Сумма) КАК Сумма
ПОМЕСТИТЬ втДанные
ИЗ
    Документ.АвансовыйОтчет.Товары КАК АвансовыйОтчетТовары

СГРУППИРОВАТЬ ПО
    АвансовыйОтчетТовары.Ссылка.Склад,
    АвансовыйОтчетТовары.Номенклатура
;

////////////////////////////////////////////////////////////////////////////////

ВЫБРАТЬ
    взКоличествоНоменклатураНаСкладе.Склад КАК Склад,
    взКоличествоНоменклатураНаСкладе.Номенклатура КАК Номенклатура,
    взКоличествоНоменклатураНаСкладе.КоличествоНоменклатурыНаСкладе КАК КоличествоНоменклатурыНаСкладе
ПОМЕСТИТЬ втКоличествоНоменклатураНаСкладе
ИЗ
    (ВЫБРАТЬ
        втДанные.Склад КАК Склад,
        втДанные.Номенклатура КАК Номенклатура,
        СУММА(1) КАК КоличествоНоменклатурыНаСкладе
    ИЗ
        втДанные КАК втДанные
    
    СГРУППИРОВАТЬ ПО
        втДанные.Склад,
        втДанные.Номенклатура) КАК взКоличествоНоменклатураНаСкладе
;

////////////////////////////////////////////////////////////////////////////////

ВЫБРАТЬ
    втДанные.Склад КАК Склад,
    втДанные.Номенклатура КАК Номенклатура,
    втДанные.Ссылка КАК Ссылка,
    втДанные.Количество КАК Количество,
    втДанные.Сумма КАК Сумма,
    1 КАК КоличествоСтрок,
    втКоличествоНоменклатураНаСкладе.КоличествоНоменклатурыНаСкладе КАК КоличествоНоменклатурыНаСкладе
ИЗ
    втДанные КАК втДанные
        ЛЕВОЕ СОЕДИНЕНИЕ втКоличествоНоменклатураНаСкладе КАК втКоличествоНоменклатураНаСкладе
        ПО втДанные.Склад = втКоличествоНоменклатураНаСкладе.Склад
            И втДанные.Номенклатура = втКоличествоНоменклатураНаСкладе.Номенклатура
ИТОГИ
    СУММА(Количество),
    СУММА(Сумма),
    СУММА(КоличествоСтрок),
    МАКСИМУМ(КоличествоНоменклатурыНаСкладе)
ПО
    ОБЩИЕ,
    Склад,
    Номенклатура,
    Ссылка
   Консультант Баранов
 
6 - 29.10.19 - 14:17
"ВЫБРАТЬ
|    АвансовыйОтчетТовары.Ссылка.Склад КАК Склад,
|    АвансовыйОтчетТовары.Номенклатура КАК Номенклатура,
|    АвансовыйОтчетТовары.Ссылка КАК Ссылка,
|    СУММА(АвансовыйОтчетТовары.Количество) КАК Количество,
|    СУММА(АвансовыйОтчетТовары.Сумма) КАК Сумма
|ПОМЕСТИТЬ втДанные
|ИЗ
|    Документ.АвансовыйОтчет.Товары КАК АвансовыйОтчетТовары
|
|СГРУППИРОВАТЬ ПО
|    АвансовыйОтчетТовары.Ссылка.Склад,
|    АвансовыйОтчетТовары.Номенклатура,
|    АвансовыйОтчетТовары.Ссылка
|;
|
////////////////////////////////////////////////////////////////////////////////

|ВЫБРАТЬ
|    взКоличествоНоменклатураНаСкладе.Склад КАК Склад,
|    взКоличествоНоменклатураНаСкладе.Номенклатура КАК Номенклатура,
|    взКоличествоНоменклатураНаСкладе.КоличествоНоменклатурыНаСкладе КАК КоличествоНоменклатурыНаСкладе
|ПОМЕСТИТЬ втКоличествоНоменклатураНаСкладе
|ИЗ
|    (ВЫБРАТЬ
|        втДанные.Склад КАК Склад,
|        втДанные.Номенклатура КАК Номенклатура,
|        СУММА(1) КАК КоличествоНоменклатурыНаСкладе
|    ИЗ
|        втДанные КАК втДанные
|    
|    СГРУППИРОВАТЬ ПО
|        втДанные.Склад,
|        втДанные.Номенклатура) КАК взКоличествоНоменклатураНаСкладе
|;
|
////////////////////////////////////////////////////////////////////////////////

|ВЫБРАТЬ
|    втДанные.Склад КАК Склад,
|    втДанные.Номенклатура КАК Номенклатура,
|    втДанные.Ссылка КАК Ссылка,
|    втДанные.Количество КАК Количество,
|    втДанные.Сумма КАК Сумма,
|    1 КАК КоличествоСтрок,
|    втКоличествоНоменклатураНаСкладе.КоличествоНоменклатурыНаСкладе КАК КоличествоНоменклатурыНаСкладе
|ИЗ
|    втДанные КАК втДанные
|        ЛЕВОЕ СОЕДИНЕНИЕ втКоличествоНоменклатураНаСкладе КАК втКоличествоНоменклатураНаСкладе
|        ПО втДанные.Склад = втКоличествоНоменклатураНаСкладе.Склад
|            И втДанные.Номенклатура = втКоличествоНоменклатураНаСкладе.Номенклатура
|ИТОГИ
|    СУММА(Количество),
|    СУММА(Сумма),
|    СУММА(КоличествоСтрок),
|    МАКСИМУМ(КоличествоНоменклатурыНаСкладе)
|ПО
|    ОБЩИЕ,
|    Склад,
|    Номенклатура,
|    Ссылка"
   Slon747
 
7 - 29.10.19 - 14:18
Всем спасибо!
Сделал "Итоги по ОБЩИЕ"
   mistеr
 
8 - 29.10.19 - 14:47
Выборка.Количество() чем не подходит?
   Slon747
 
9 - 29.10.19 - 15:15
(8) С тогами в запросе возвращает кол-во по конкретной выборке.

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