| 
    
            
         
         | 
    
  | 
v7: 7.7 Группировка .... Все - поясните что это значит | ☑ | ||
|---|---|---|---|---|
| 
    0
    
        Злопчинский    
     05.04.20 
            ✎
    22:10 
 | 
         
        Вынес вопрос в отдельную ветку.
 
        Язык запросов. Группировка ... [Все][ВошедшиеВзапрос] Что значит "Все"..? откуда берутся эти "все" - не понимаю, мутно... . Просто тупой запрос (на примере ТИС) |Номенклатура = Регистр.ПартииОтданные.Номенклатура; |Комиссионер = Регистр.ПартииОтданные.Договор.Владелец; |Количество = Регистр.ПартииОтданные.Количество; |Функция КоличествоКонОст = КонОст(Количество); |Группировка Номенклатура Без Групп; |Группировка Комиссионер Без Групп; |Условие (Номенклатура в ВыбТМЦ); - здесь как бы все понятно. выдрали из регистра данные, свернули, сгруппировали, ок. Результат ожидаем. модифицируем добавлением ВСЕ |Группировка Комиссионер Без Групп Все; В результате имеем предыдущий масси данны + к нему записи с нулевыми значениями ресурса по номенклатурам, котореы есть на остатках, но ДЛЯ ВСЕХ записей справочника контрагентов. Откуда это тянется? "Все" - значит берем ВСЕ ЗНАЧЕНИЯ того справочника, вид которого стоит в "Группировка Все"...? Или как?  | 
|||
| 
    1
    
        mishaPH    
     модератор 
    05.04.20 
            ✎
    22:14 
 | 
         
        (0) так весь справочник без папок. так понятно не взирая что там в остатках     
         | 
|||
| 
    2
    
        Злопчинский    
     05.04.20 
            ✎
    22:33 
 | 
         
        (1) а "Все ВошедшиеВзапрос" - это что?     
         | 
|||
| 
    3
    
        skafandr    
     05.04.20 
            ✎
    22:44 
 | 
         
        (2) это как раз первый вариант - только контрагентов по которым есть ненулевые значения ресурсов     
         | 
|||
| 
    4
    
        Builder    
     05.04.20 
            ✎
    23:14 
 | 
         
        В документации написано:
 
        Используется только для группировок, построенных на основе внутренней переменной типа "справочник" или для предопределенных группировок, задающих временной интервал (Год, Месяц, Квартал, Неделя, День) ВошедшиеВЗапрос - Необязательное добавочное ключевое слово действие которого уточняет предыдущее ключевое слово "Все". Использование данного слова подразумевает, что в каждую строку запроса будут включены значения данных (в том числе нулевые), для которых есть ненулевое значение хотя бы в одной строке запроса.  | 
|||
| 
    5
    
        Злопчинский    
     05.04.20 
            ✎
    23:21 
 | 
         
        (4) z ghjcnj negj yt dnsrf.//
 
        " что в каждую строку запроса будут включены значения данных (в том числе нулевые)," - значения КАКИХ ДАННЫХ И КАКИЕ ЗНАЧЕНИЯ БУДУТ? -"для которых есть ненулевое значение " - НЕНУЛЕВОЕ ЗНАЧЕНИЕ ЧЕГО? "хотя бы в одной строке запроса." . можете на приемер это растолковать?  | 
|||
| 
    6
    
        Злопчинский    
     05.04.20 
            ✎
    23:22 
 | 
         
        я просто тупо не втыка...     
         | 
|||
| 
    7
    
        Харлампий Дымба    
     05.04.20 
            ✎
    23:55 
 | 
         
        Отписался в предыдущей     
         | 
|||
| 
    8
    
        vcv    
     05.04.20 
            ✎
    23:57 
 | 
         
        (5) >> можете на приемер это растолковать?
 
        Например, тебе надо построить шахматку. В строках номенклатра, в колонках покупатель. Логично сделать две группировки Группировка Номенклатура Без групп; Группировка Контрагент без групп; Но для каждой номенклатуры в группировке свой список покупателей, что для построения шахматки неудобно. Поэтому используешь Группировка Номенклатура Без групп; Группировка Контрагент без групп Все ВошедшиеВзапрос; И у тебя для каждой номенклатуры при обходе группировки полный перечень покупателей. И вывод шахматки превращается в банальное: Пока Запрос.Группировка(1) = 1 Цикл Таб.ВывестиСекцию(); Пока Запрос.Группировка(2) = 1 Цикл Таб.ПрисоединитьСекцию(); ...  | 
|||
| 
    9
    
        Злопчинский    
     06.04.20 
            ✎
    00:19 
 | 
         
        Спасибо за пояснения     
         | 
|||
| 
    10
    
        Cthulhu    
     06.04.20 
            ✎
    02:00 
 | 
         
        если сплясать от "зачем?" - может понятнее получиться. 
 
        эти пляски с "все" и "вошедшиевзапрос" - обеспечивают возможность вывода шахматки (кросс-таблицы) по группировкам тупым их перебором - т.к. в этих случаях выбираются "блоки" с одинаковым количеством значений групировки - что оч.удобно при выводе их "по колонкам" в тек.строке (по вышестоящей группировке). при этом "все" выбирает блоками тупо все имеющиеся в справочнике значения, а с "вошедшие в запрос" - из то же самое. что просто "все" только без "нулевых колонок"... как-то так...  | 
|||
| 
    11
    
        DrZombi    
     гуру 
    06.04.20 
            ✎
    06:44 
 | 
         
        (10) Да сама формулировка построителя запроса 7.7 Мутная. Толи дело запросы SQL, все понятно, ясно и открыто. Даже почти без документации :)     
         | 
|||
| 
    12
    
        Ёпрст    
     гуру 
    06.04.20 
            ✎
    09:05 
 | 
         
        (2)будут только те элементы, которые участвовали в запросе, даже по которым итоговые показатели нулевые     
         | 
|||
| 
    13
    
        Ёпрст    
     гуру 
    06.04.20 
            ✎
    09:06 
 | 
         
        И это, Чебур, ты кому аккаунт продал то ?     
         | 
|||
| 
    14
    
        NorthWind    
     06.04.20 
            ✎
    09:08 
 | 
         
        (12) ну я тоже не знал, честно сказать. Формулировка не вполне прозрачная, а таблицы, растущие вправо - строить приходится, мягко говоря, нечасто.
 
        И я не знал про эту фичу, изгалялся другими способами.  | 
|||
| 
    15
    
        Андрей_Андреич    
     naïve 
    06.04.20 
            ✎
    09:31 
 | 
         
        Утерянные знания древних :)     
         | 
|||
| 
    16
    
        fisher    
     06.04.20 
            ✎
    09:39 
 | 
         
        Если я правильно помню (а помню я смутно), "Все ВошедшиеВошедшиеВЗапрос" - это аналог левого соединения, а просто "Все" - аналог левого соединения по ключу без условий (т.е. все элементы левой таблицы).     
         | 
|||
| 
    17
    
        fisher    
     06.04.20 
            ✎
    09:47 
 | 
         
        Но вообще 7.7 это жесть. Забыл как страшный сон. Особенности работы с ней можно было выяснить только методом научного тыка и разбором готовых решений. Поэтому народ ее постигал всем миром, делясь знаниями на форуме. На этом бурга и территория 1С и взлетели со своей атмосферой. Ламповое было время. Восьмерка на порядок прозрачнее и документированее.     
         | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |