СКД (суммирование группировок)

1. 1_C 20.12.11 15:07 Сейчас в теме
Доброго всем дня!
Вопрос по поводу СКД. Конфигурация Комплексная автоматизация, редакция 1.1 (1.1.11.2)
Необходимо просуммировать итоги по группировкам (в моем случае по организациям), в то время как детальные записи по группировкам суммировать не надо. Пробовали работать и с ресурсами ,но бесполезно, наверное надо изменять запрос...
Никак не получается, может кто знает как решить поставленную задачу?
Прикрепленные файлы:
СКД_Как_суммировать_группировки.xml
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. 1_C 20.12.11 15:08 Сейчас в теме
Вот еще рисунок
Прикрепленные файлы:
3. beldieff 20.12.11 15:40 Сейчас в теме
СКД, вкладка настройки --> Другие настройки.

Поиграйся с "расположением итогов" и "расположением групировок".
4. 1_C 20.12.11 15:42 Сейчас в теме
Игралась уже... Никак :(
5. Spartan 365 20.12.11 15:47 Сейчас в теме
(4) Копай в сторону ВычислитьВыражение()... инфа есть тут
Elvira_Abs; dammit666; maxunov95; Henistaromin; dj_serega; Xytras; Lena272; Tapochki-tmn; +8 Ответить
6. 1_C 20.12.11 16:12 Сейчас в теме
Интересно, интересно... Спасибо =)
7. Spartan 365 20.12.11 16:24 Сейчас в теме
(6) Ну и, в принципе, несколькими ресурсами с Расчитывать по... можно, наверное, решить. Не очень понятно, что конкретно должно выводиться.
8. 1_C 20.12.11 18:35 Сейчас в теме
У меня две группировки: по организациям и по виду(банковский счет/касса). Так вот, необходимо, чтобы детальные записи не суммировались по группировке банковский счет/сумма, а выводилась одна сумма ,для этого я в ресурсах указала Максимум(), добившись этим требуемого результата. А вот для группировки Организация необходимо чтобы просуммировались итоговые суммы по группировке Банковский счет/касса, тут уже Максимум() не прокатит, необходима Сумма(). То есть, то, что выделено зеленым - это есть сумма того, что выделено синим цветом.
10. Spartan 365 20.12.11 22:01 Сейчас в теме
(8)(9) Ну да, я это и имел в виду в (7). Ресурс добавляешь дважды: первый раз агрегатная функция "Максимум", Рассчитывать по... "Банковский счет/касса", второй - "Сумма", Рассчитывать по... "Организация".
9. max0131 20.12.11 19:38 Сейчас в теме
Попробуй в указании ресурсов закинуть эту колонку два раза. Т.е. добавляешь первый раз - указываешь агрегатную функцию "Максимум" и указываешь по нём рассчитывать, а второй раз его же в ресурсы добавляешь и агрегатная функция "Сумма" - указываешь по каким группировкам его рассчитывать.
11. 1_C 21.12.11 07:16 Сейчас в теме
делала я уже так, первый раз агрегатная функция Максимум(), Рассчитывать по Банковский счет/касса, а второй раз - агрегатная функция Сумма(), Рассчитывать по Организация. В итоге во 2 случае он суммирует все числа, все детальные записи, а мне надо, чтоб суммировались суммы только первой группировки.
12. RustamZz 21.12.11 09:28 Сейчас в теме
Надо сделать три таких поля в ресурсах для статей ДДС выражение поставить 0, для группировки по счету просто Сумма, по организации Сумма(Сумма).
14. Spartan 365 21.12.11 10:02 Сейчас в теме
(12) Использование вложенных агрегатных функций не допускается. Обнуление итогов по статьям ничего не даст - для группировок будет считаться сумма детальных записей, входящих в группировку, независимо от того, что указано в других ресурсах.
(11) Тогда, думаю, нужно разбираться с ВычислитьВыражение(), либо мудрить с запросом.
15. Spartan 365 21.12.11 10:07 Сейчас в теме
(12) Понял, что имеется в виду... при условии, что по статьям не может быть разных сумм, прокатит.
18. Spartan 365 21.12.11 10:20 Сейчас в теме
(15) Хотя нет, по Организации все равно посчитается сумма детальных записей. Думается, что правильно исключительно ресурсами не решить.
22. 1_C 21.12.11 15:31 Сейчас в теме
(12) RustamZz, То, что вы рекомендуете, не поможет... Суммы по детальным записям складываются, а их не надо складывать.
13. 1_C 21.12.11 09:52 Сейчас в теме
не совсем понятно... можете подробнее объяснить?
Вот что сделала в ресурсах, вроде те цифры, что нужны были, но вот незадача, теперь не разворачивает подробно статьи по детальным записям, так как они у меня в ресурсах.
Прикрепленные файлы:
16. Spartan 365 21.12.11 10:10 Сейчас в теме
(13) Ну и не выводите детальные записи вообще, добавьте статью как группировку.
28. Tapochki-tmn 43 19.04.13 22:10 Сейчас в теме
(13) 1_C, Спасибо, люди добрые, за эту тему и ответы в ней.
Четыре часа наверное просидел схожий по структуре простенький отчет всяко разно пытался научить цену по группировкам не суммировать из детальных записей. И группировки накладывал и итогами думал уже попробовать. А ларчик-то просто открывался ! Особое спасибо за скрин !
На семерке - то давно бы уже догадался как сделать, а 8.2 только осваиваю :)
17. 1_C 21.12.11 10:17 Сейчас в теме
Как группировка она не добавится, она в ресурсах.
19. Spartan 365 21.12.11 10:21 Сейчас в теме
20. 1_C 21.12.11 10:25 Сейчас в теме
статью ДДС я добавила в ресурсы по рекомендации RustamZz. В итоге все суммы считаются нормально, но из-за этих ресурсов не отображаются детальные записи.
Прикрепленные файлы:
21. 1_C 21.12.11 10:29 Сейчас в теме
Как я понимаю придется делать, как вы и говорили ,через вычисляемые поля - ВычислитьВыражение(), только пока не соображу как именно.
23. qwertyman 25.01.12 13:56 Сейчас в теме
Мучаюсь с такой же ситуацией.
Есть две группировки: Должник, Документ. Нужно, чтобы в группировке документ выводилось минимальное значение поля Долг, а в группировке должник должна быть сумма этих значений и в общих итогах.

Пробовал несколько одинаковых ресурсов с разными формулами для разных группировок, выдает суммарное значение по всем элементам, а не сумму минимальных значений.

Пробовал ВычислитьВыражение() в вычисляемых полях.
Как-то так:
ВычислитьВыражение("Сумма(Долг)","Должник", "Группировка").
Во-первых не выводиться в группировках, во-вторых выводит общую сумму всех элементов.

Что я не так понял?
24. qwertyman 25.01.12 14:22 Сейчас в теме
1_C, каким образом у вас получились верные суммы? Покажите настройку ресурсов. Как у вас располагаются группировки в настройке?
25. 1_C 26.01.12 15:36 Сейчас в теме
Посмотрите этот форум: http://devtrainingforum.v8.1c.ru/forum/thread.jsp?id=588300
Там я решила этот вопрос.
26. qwertyman 26.01.12 16:27 Сейчас в теме
Почитал форумы, говорят решать на уровне второго набора данных уже свернутого по нужным группировкам и дальше заводить два ресурса. Но у меня гигантский многостраничный запрос, он и так долго работает. Почитал ИТС, там встретил такую фразу, что итоги рассчитываются по детальным записям, а мне нужно по значениям итогов в группировках. Сумма минимумов, если конкретно. Жаль, что только уже не перепробовал, кроме второго набора данных, никак не выходит желаемое, видимо придется переписывать запрос.
27. qwertyman 06.02.12 09:46 Сейчас в теме
Решил задачу по нахождению сумм минимумов через второй набор данных, который предварительно сгруппировал, вывод делал в пользовательском поле.
29. TSSV 1145 26.07.13 16:03 Сейчас в теме
(27) qwertyman, Для подсчета "Суммы минимумов" правильно поступить так: в выражении для ресурса (например "НашРесурс") написать
Сумма(ВычислитьВыражениеСГруппировкойМассив("Минимум(НашРесурс)","НашаГруппировкаСМинимумами")), а рассчитывать это выражение нужно по вышестоящей группировке.
snay; nekit_rdx; sinto; SAGerasimov; maikl007; ValeriyZ; user1635074; criptid; user817897; jan-pechka; YuraSt; Sasha_1200; ISH-1988; ПодводныйТ; marvel91; D_e_X_T_e_R; victorree; SmArtist; smit1c; krenchik; Flashill; kolessov_a; bars21rus; AnddnA; levante90; YLioY; Rustam10; limonas; CyberCerber; Pawlick; zolotieluga; Lyns_owner; BladeWorld; Denanhel; Akuji; 1c.pro.fun; chekha-ukhta; voyagerkonstantin; karayan; Akasy; Shurgent; bohdan-k; zhenianik; Отованец; Vitalk; maljaev; svilsa; mr_AntA; Anchoret; Lacrimosa0000; SvoyakMartin; neo-ti; Doom2w; Anything; myoker; iserebryakov; marchel; primat; nick_krsk; tatoshka0403; M.Shalimov; Alex17; NaAc; dfgdsfgsdfg2011; mudrak; alest; Korolev; tamaks; veretennikoff; ihtiandr9; Ibrogim; savauu; fggf; vital1c; freeraider; Strady; vinni_pooh; Encode; dj_serega; nola; amandosov; Lua; gigabyte_artur; arz; Джонни; Nasty_d; andryscha; echo77; droplet; pioneeer; sintegro; doggy; zoldiar; Morales; AndrewVVS; User80; sagartem; pyrkin_vanya; perchik_ua; Valp; wolfsoft; Lost; v777k; Аверков; amaksimov; kns77; Кыссо; Feelthis; nems; I_r_a; comptr; kanfuciy; Alonarista; Nelli_A86; fomaOp; DirtySanches; Spartan; HolodZar; +118 Ответить
32. wolfsoft 2421 01.06.14 22:20 Сейчас в теме
(29) Спасибо тебе, добрый человек, полдня убил, полинтернета изрыл... (((
user1635074; jan-pechka; +2 Ответить
33. and-t 22.08.14 07:37 Сейчас в теме
(29) Tsaregorodtsev, Так работает только для первой вышестоящей группировки, а как сделать для второй вышестоящей группировки суммирование вложенных группировок, рассчитанных по указанной Вами формуле ?
Т.е. есть три группировки :
- итог нижней группировки считается как "Минимум"
- итог вышестоящей считается как сумма нижней, по указанной Вами формуле
- итог следующей вышестоящей должен считаться как сумма предыдущей группировки - если оставить указанную Вами формулу, то суммируются только минимумы по нижней группировке
36. Morales 05.11.14 13:27 Сейчас в теме
(33) and-t, Думаю так: Добавляешь еще раз <Ресурс> + Сумма(ВычислитьВыражениеСГруппировкойМассив("Сумма(НашРесурс)","НашаВтораяГруппировка")) и <Рассчитывать по...> третья группировка
46. fungrunger 29.07.16 19:11 Сейчас в теме
(33) and-t, вопрос актуальный, предложенный ранее вариант работает некорректно, т.к. всё равно будет браться сумма по детальным записям. Если кто знает - отпишитесь плз
47. fungrunger 29.07.16 20:36 Сейчас в теме
(46) На самом деле сори за спам - немного недописал человек - верный вариант тут http://blagin.ru/tag/skd/
ValeriyZ; ПодводныйТ; krenchik; myoker; dynamicsystems; Daynestro07; Akuji; romku; +8 Ответить
48. romku 10 01.08.16 15:11 Сейчас в теме
(47) fungrunger, спасибо тебе добрый человек. То. что надо!
57. ValeriyZ 19 13.08.21 09:48 Сейчас в теме
(29) Благодарю! Решение подошло!
(47) Спасибо за уточнение!
34. pyrkin_vanya 488 25.08.14 12:04 Сейчас в теме
(29) Tsaregorodtsev, спасибо огромное. А кто нить знает, есть нормальное описание где нить про язык выражений? С примерами, а не просто небольшая справка.
45. savauu 18.03.16 15:25 Сейчас в теме
(29) Tsaregorodtsev, ай спасибо тебе, И тебе 1_С за то что создал эту тему!!!! Пол дня бился, и уже был готов сначала подсчитать сколько у меня этих минимумов, а потом делить на количество, что бы сумма корректная была. Но эта тема спасла мой отчет от иррациональности!!!!
51. zolotieluga 20.06.18 07:42 Сейчас в теме
(29)
Сумма(ВычислитьВыражениеСГруппировкойМассив("Минимум(НашРесурс)","НашаГруппировкаСМинимумами"))

Огромное спасибо!
52. limonas 10 28.09.18 10:29 Сейчас в теме
(29) Спасибо, помогло, до этого попробовал ролью остатка поиграться, не получилось.
55. jan-pechka 408 06.10.20 13:22 Сейчас в теме
(29)
ВычислитьВыражениеСГруппировкойМассив("Минимум(НашРесурс)"


Спасибо!!! актуально до сих пор))

(33) чтобы было по нескольким группировкам-в поле "рассчитывать по" добавляйте все, которые нужны.
56. user1635074 06.08.21 17:45 Сейчас в теме
(29)
Сумма(ВычислитьВыражениеСГруппировкойМассив("Минимум(НашРесурс)","НашаГруппировкаСМинимумами"))

Я Вас обожаю. Я потратила больше дня на это!! Пусть ВАША помощь и добро возвращается Вам в тысячном размере!! БЛАГОДАРЮ!!!!!
30. kns77 101 05.04.14 11:35 Сейчас в теме
Плюсую, то что надо
Alien_job; +1 Ответить
31. AlexKo84 05.04.14 14:41 Сейчас в теме
Тогда такой вопрос:
Как реализовать см рисунок, что бы выводились "Ч" в 1й таблице как во 2й, при том что "Ч" это ресурс а "Ч1" нет.
Прикрепленные файлы:
35. max0131 10.10.14 18:28 Сейчас в теме
(31) AlexKo84,
Можно, если я правильно понял - данные для Ч берутся из Ч1. Тогда, из запроса получаем данные Ч1, а поле Ч делаем в "Поля пользователя"- тип "Выражение". Там для "Детальных записей" пишем такое:
"[Ч1]",
а для "Итоговых записей" (они же группировки):
"Максимум([Ч1])"
После этого в дереве реквизитов открываете папку "Пользовательские поля" и видите там ресурс "Ч". Выводите его и радуетесь нужной вам форме.
37. Serge_ASB 27.02.15 16:17 Сейчас в теме
В тесу.
УТ 10.3 Отчет по продажам
За период нужно рассчитать количество уникальных клиентов (количество(различные)) на каждый день периода
и в итоге по группировке (Агент - реквизит документа продажи) получить сумму этих продаж То есть как бы Сумма(Количество (различные Точка)) Точка - это контрагент (торговая точка)
То есть, если за 1-й день было 2 уникальных, за 2-1 день 3 уникальных, а за 3-1 день - 1 уникальный в итоге д.б. 6
Пробовал Сумма(ВычислитьВыражениеСГруппировкойМассив("Количество(Различные Точка)","Контрагент")) для дополнительного реквизита
Получается то же, что и для Реквизита Точка (Количество(Различные Точка)).
Где я ошибся?
Под Группировкой Агент находятся детальные записи? или группировка Контрагент без детальных.
38. echo77 1886 28.02.15 22:08 Сейчас в теме
(37) Serge_ASB, В группировке Агент такого не вычислить - в общих итогах или в группировке, которая в себя будет включать все необходимые записи
39. Serge_ASB 05.03.15 16:33 Сейчас в теме
(38) echo77,
Я сделал. Добавил отдельный запрос в СКД с выборкой уникальных документов за период по принципу - был хоть 1 - "1", иначе - "0"
Состыковал по дате, агенту, контрагенту - всё срослось...
Правда, вылезла некая побочная "фишка" с суммами документов: если не добавлять детальных записей с документом продажи, суммы документов считает неправильно.
Кому интересно, могу скинуть отчет.
40. echo77 1886 05.03.15 19:52 Сейчас в теме
(39) Serge_ASB, давай покажи. Попробую тебе показать как эту задачу решить красиво :-)
42. Serge_ASB 14.03.15 15:52 Сейчас в теме
(40) echo77,
Вот. Отчет для УТ 10.3
Прикрепленные файлы:
Довлет-Реестр_1.55.erf
41. Oboron 14 06.03.15 13:27 Сейчас в теме
Не нужно тут использовать "Вычислить" и "Вычислить вырежение".
Нужно в источнике данных у реквизита "Остаток на начало" поставить роль "Остатки", имя роли "Сумма", тип "Начальный остаток".
У конечного остатка аналогично, только тип "Конечный остаток".
И все. Расчет ресурсов как у всех - по всем полям без отбора. СКД сам будет давать правильные данные.


bdimaw; lgpallladin; +2 Ответить
43. echo77 1886 15.03.15 13:12 Сейчас в теме
А что за "Агенты" в УТ 10.3?

Есть несколько предложения по запросу.
НаборДанных1:
Обороты за период лучше взять из БД в неизменном виде - т.е. ничего не группировать. А вот для получения цен на каждую дату продажи сделать отдельный вложенный запрос. Так же посмотрите в сторону использования временных таблиц

Вычисляемые поля:
Месяц и день, лучше записать просто формулой:
НачалоПериода(Дата,"Месяц")

а для того чтобы привести представление к нужному виду("ДФ = ""ММММ гггг""") воспользоваться свойством оформление того же вычисляемого поля, т.к. в данном случае у вас поле типа строка - во-первых, по нему трудно будет фильтровать, во вторых, вам пришлось дополнительно выражение упорядочивания прописывать
44. Serge_ASB 16.03.15 12:12 Сейчас в теме
(43) echo77,
Агент - это "местное" добавление (от Моби-С) - это торговый представитель, непосредственно осуществляющий заказ товара через КПК.
Попробую так.
49. uri1978 137 12.10.16 10:39 Сейчас в теме
50. al-e-ks 20.04.18 09:33 Сейчас в теме
Была похожая ситуация в СКД: из документа выбиралась вся табличная часть (товары) и соединялась с итогом из другой табличной части этого же документа (СуммаРабот) - выходило так, что итог дублировался в каждой строке из 1й ТЧ. Ну а при указании что это (СуммаРабот) ресурс и расчете по нему итогов, СКД суммировала и выходила СуммаРабот заоблачной (во столько раз больше, сколько строк товаров).

В общем решил это добавлением в СКД еще одного НабораДанных в котором была только эта сумма и настройка связи на закладке Связи наборов данных по ссылке документа с первым набором данных. После этого *задвоение-троение* итоговых значений исчезли, а напротив каждой строки номенклатуры была итоговая цифра работ по этому документу из другой тч.

Надеюсь понятно объяснил.
GOshaSaveiko; +1 Ответить
53. SobolevD 07.05.20 13:48 Сейчас в теме
Апну тему, поскольку в очередной раз пришлось описывать итоги только по определенным группировкам, снова забыл как, снова гуглил, снова решил.
И эту ветку перечитал, понял, надо запротоколировать решение:

Есть сложный многосоставной запрос со сложными соединениями таблиц. Упрощу для пояснения:
В одной из таблиц - номенклатура, статьи и количество. В другой только статьи и сумма расходов (назовем "Затрата", это число).
Отчет выводит группировки: "Статья" - "Номенклатура", и ресурсы.
Нужно выводить итоги по сумме только для статей, а количество для номенклатуры и статей. (Если мы начнем суммировать расходы как обычно, то получим задвоения, если одной статье соответствует две и более номенклатур.)
Количество - обычный ресурс с выражением "Сумма": Сумма(Количество).
А вот для расходов делаю вычисляемое поле, равное 0. А в выражении ресурса пишу "Сумма(Затрата)". Поле "Рассчитывать по" указываю "Статья".
Всё.
54. SobolevD 07.05.20 15:00 Сейчас в теме
Немаловажно для соединения таких таблиц!
Таблица с номенклатурой - слева!
Соединение я делал в СКД как два набора данных.
Таблица с расходами - справа. Соединение по статье.
(Если всё делать одним запросом, то в итоговой выборке каждой номенклатуре была бы рассчитана Затрата и финт с вычисляемым полем и ресурсом не сработал бы).
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот