|
v7: Для чего необходима группировка в запросе | ☑ | ||
---|---|---|---|---|
0
Kapystin
09.09.14
✎
18:14
|
Добрый вечер народ!
я новичок! в гугле естессно искал информацию, но ... так и не понял! расскажите простыми словами необходимость ГРУППИРОВОК в запросе? Если я пишу запрос и указываю группировать по АГЕНТАМ я также получаю инфу по КПК и Количеству, НО не по по ТекДок! Для того чтобы получить ТекДок нужно по нему группировать!!! не пойму почему для КПК не нужно создавать ГРУППИРОВКУ а для ТекДок нужно. Дата1 = '01.01.10'; Дата2 = ПолучитьТА(); ТекстЗапроса = " |Период С Дата1 По Дата2; |КПК = Регистр.ОстаткиКПК.КПК; |Количество = Регистр.ОстаткиКПК.ОстаткиКоличество; |Агент = Регистр.ОстаткиКПК.Агент; |ТекДок = Регистр.ОстаткиКПК.ТекущийДокумент; // |Функция НачОст = НачОст(ОстаткиКПК); |Функция КО = КонОст(Количество); |Функция ПР = Приход(Количество); // |Функция Расход = Расход(Количество); // |Функция НО = НачОст(Количество); // |Группировка Все; |Группировка Агент; |Группировка ТекДок; | | |"; Если Запрос.Выполнить(ТекстЗапроса)=0 Тогда Возврат; КонецЕсли; ТЗ = СоздатьОбъект("ТаблицаЗначений"); Запрос.Выгрузить(ТЗ, 1); ТЗ.ВыбратьСтроку(); НомСтроки = 0; Пока Запрос.Группировка("Агент") = 1 Цикл Пока Запрос.Группировка("ТекДок") = 1 Цикл КпкИмеиТаб = Запрос.КПК; АгентТаб = Запрос.Агент; МодельКпкТаб = КпкИмеиТаб.МаркаКПК; ТекДокТаб = Запрос.ТекДок; НомСтроки = НомСтроки +1; Таблица.ВывестиСекцию("Строка1"); КонецЦикла; КонецЦикла; Таблица.ТолькоПросмотр(1); Таблица.Показать(); |
|||
1
Ювелир
09.09.14
✎
18:26
|
(0). Есть же примеры. Посмотри. с группировкой - без группировки. Сам сделай пример. Лучше один раз увидеть...
|
|||
2
Ювелир
09.09.14
✎
18:29
|
(0) А так ответ-то группировка нужна, чтобы сгруппировать значения по определенному полю(лям). Это может быть нужно чтобы посчитать количество категорий, количество в категории, сумму по категории, максимум по категории, ну и т.д.
|
|||
3
Ювелир
09.09.14
✎
18:30
|
(0) Вопрос исчерпан?
|
|||
4
Kapystin
09.09.14
✎
18:33
|
честно нет.))
вот я выложил код, если не сложно расскажи на моем примере. если я убираю ГРУППИРОВКУ по ТекДок, то я и не получи инфу в отчете! но я ведь не ставлю Группировку по КПК а в отчет инфа(по кпк) попадает. ну как так то? |
|||
5
Злопчинский
09.09.14
✎
18:38
|
(4)
1. Пиши кратко и ясно. 2. уважай язык общения - телпатов тут нет а излишне безвозмездно твой поток сознания расшифровывать никто не обязан. 3. Что ты хочешь посчитать в рамках одного ТекущегоДокумента? |
|||
6
Kapystin
09.09.14
✎
18:46
|
Код приложил выше.
3. необходимо получить наименование док в отчете если не создаю группировку по ТекДок(в моем коде, который приложен выше), то в отчете данных не получаю. Группировку по КПК не создаю, но в отчете информация появляется! и вот вопрос! почему для получения одних данных в отчет нужна ГРУППИРОВКА, а для некоторых НЕТ? |
|||
7
Ювелир
09.09.14
✎
18:50
|
(4) По постановке тебе не нужна группировка, что ты от нас хочешь?
(5) Вот, присоединяюсь, по всем пунктам. Немного юмора: "Наташа Ростова хотела что-то сказать, но открывшаяся дверь закрыла ей рот." То же у тебя с группировками как в этом опусе (что с Наташей). |
|||
8
Ювелир
09.09.14
✎
18:50
|
)))
|
|||
9
Злопчинский
09.09.14
✎
18:52
|
(6) "наименование док" - это ты сильно выступил, но насколко я понял - тебе нужно получить документ для чего? - посчитать итоговую сумму по документу? перечень КПК в документе?
. ТекущийДокумент в регистре - это "атрибут" _движения_ регистра. . КонОст для ТекущегоДокумента - не работает . сделай после выполнения запроса: ТЗ = ""; Запрос.Выгрузить(почитайпромараметры) - потом посмотри ТЗ в вариантах двух группировок и одной группировки |
|||
10
Kapystin
09.09.14
✎
19:06
|
видимо не мой день)))
свою задачку я выполнил, просто хотел разобраться в тонкостях. Всем спасибо и за критику, без нее нет прогресса(в моем случае шажка). |
|||
11
Ювелир
09.09.14
✎
19:16
|
Хм. В твоем случае - это чистой воды ситуация.
"Если я пишу запрос и указываю группировать по АГЕНТАМ я также получаю инфу по КПК и Количеству, НО не по по ТекДок! Для того чтобы получить ТекДок нужно по нему группировать!!! не пойму почему для КПК не нужно создавать ГРУППИРОВКУ а для ТекДок нужно. " группировка - укрупнение данных. При группировке по любому полю мелкость остальных полей - не измерений, снижается. И как бы тот эффект - для тех надо - для тех не надо - зависит чисто от фактического наполнения твоей базы. Чтобы не потерять масштаб нужно группировать по всем полям являющимся измерением. Как то так. |
|||
12
Kapystin
09.09.14
✎
19:26
|
От души спасибо!
+ крупинка в мое понимание |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |