| 
    
            
         
         | 
    
  | 
v7: Запрос, упорядочивание по сумме | ☑ | ||
|---|---|---|---|---|
| 
    0
    
        tesei    
     22.09.23 
            ✎
    11:52 
 | 
         
        Есть запрос:
 
        ТекстЗапроса = " |Период с ВыбНачПериода по ВыбКонПериода; |Покупатель = Регистр.Продажи.Покупатель; |Сумма1 = Регистр.Продажи.ПродСтоимость; |Функция Сумма2 = Сумма(Сумма1); |Группировка Покупатель без групп;"; Нужно упорядочить запрос по сумме. Т.е. первым выходит клиент с наибольшей суммой продаж, и далее по убыванию. Как это сделать?  | 
|||
| 
    1
    
        Волшебник    
     22.09.23 
            ✎
    11:57 
 | 
         
        Группировка <ИмяГруппировки>|<ПредопредГруппировка> [Упорядочить по <Порядок>[, <Порядок&#gt;]*]
 
        [Без Упорядочивания][Без Групп][Все [ВошедшиеВЗапрос]]; <Порядок> — используется только после ключевого слова Упорядочить по. Конкретизация внутренней переменной <ИмяГруппировки>, значение которой является параметром упорядочивания строк в группировке. Кроме того, в данном параметре можно использовать имя функции, объявленной в этом же запросе в операторе Функция; https://webbrat.ru/programming/1s-77/queries/#p8  | 
|||
| 
    2
    
        tesei    
     22.09.23 
            ✎
    12:29 
 | 
         
        ТекстЗапроса = "
 
        |Период с ВыбНачПериода по ВыбКонПериода; |Покупатель = Регистр.Продажи.Покупатель; |Сумма1 = Регистр.Продажи.ПродСтоимость; |Функция Сумма2 = Сумма(Сумма1); |Группировка Покупатель без групп Упорядочить по Сумма2;"; Сортирует по возрастанию. А как по убыванию? Не увидел в (1)  | 
|||
| 
    3
    
        Djelf    
     22.09.23 
            ✎
    12:39 
 | 
         
        (2) Если так пойдет и дальше, то придется весь СП тут выкладывать...
 
        Группировка(<?>,) Синтаксис: Группировка(<Группировка>,<Направление>) Назначение: Получить следующее значение выборки Запроса Возвращает: 1 - если получено следующее значение выборки запроса, 0 - иначе. Параметры: <Группировка> - выражение, содержащее номер или имя группировки. <Направление> - необязательный параметр. Число: 1 - выборка значений группировки по возрастанию; -1 (минус единица) - выборка значений группировки по убыванию. Значение по умолчанию: 1.  | 
|||
| 
    4
    
        zenik    
     22.09.23 
            ✎
    12:39 
 | 
         
        (2) Запрос.Группировка(...) - если я правильно помню, там параметры сортировки     
         | 
|||
| 
    5
    
        tesei    
     22.09.23 
            ✎
    12:43 
 | 
         
        (5) Спасибо. Я бы не писал, если был бы четкий отчет на вопрос. А то по поиску - в основном флуд.     
         | 
|||
| 
    6
    
        tesei    
     22.09.23 
            ✎
    12:50 
 | 
         
        Финальный релиз:
 
        ТекстЗапроса = " |Период с ВыбНачПериода по ВыбКонПериода; |Покупатель = Регистр.Продажи.Покупатель; |Сумма1 = Регистр.Продажи.ПродСтоимость; |Функция Сумма2 = Сумма(Сумма1); |Группировка Покупатель без групп Упорядочить по Сумма2;"; ... Пока Запрос.Группировка(1,-1) = 1 Цикл Таб.ВывестиСекцию("Покупатель"); КонецЦикла;  | 
|||
| 
    7
    
        ЯнСмит    
     22.09.23 
            ✎
    12:56 
 | 
         
        кмк, проще выгрузить запрос в ТЗ, а потом уже крути-верти как угодно )     
         | 
|||
| 
    8
    
        АгентБезопасной Нацио    
     22.09.23 
            ✎
    13:24 
 | 
         
        (7) проще использовать нормальные запросы вместо штатных     
         | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |