Здравствуйте!
Нужна помощь!
Есть таблица(пример):
Группа - Кол.Человек. - Выработка час.
Група1 - 15 - 22
Група2 - 21 - 20
Група3 - 8 - 18
група4 - 11 - 27
После формирования запроса в ОТЧЕТЕ надо как-то вывести результат(пример):
Група1+Група3 - 23 - 40
Група2 - 21 - 20
Група4 - 11 - 27
И вот вопрос - Как сгрупировать строки 1 и 3?? и сделать это нужно как-то именно в запросе, сам запрос создается для формирования отчета простроеного в СКД(совершенно магическая система не связанная с программированием).
Если Група1 это справочник, то попробуйте использовать иерархию или какой-то объединяющий их реквизит
ВЫБРАТЬ
"Група1+Група3" КАК РодительГруппы,
"Група1" КАК Группа,
15 КАК КолвоЧеловек,
22 КАК Выработка
ПОМЕСТИТЬ ВТ
ОБЪЕДИНИТЬ ВСЕ
ВЫБРАТЬ
NULL,
"Група2",
21,
20
ОБЪЕДИНИТЬ ВСЕ
ВЫБРАТЬ
"Група1+Група3",
"Група3",
8,
18
ОБЪЕДИНИТЬ ВСЕ
ВЫБРАТЬ
NULL,
"Група4",
11,
27
;
////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
ЕСТЬNULL(ВТ.РодительГруппы, ВТ.Группа) КАК Поле1,
СУММА(ВТ.КолвоЧеловек) КАК КолвоЧеловек,
СУММА(ВТ.Выработка) КАК Выработка
ИЗ
ВТ КАК ВТ
СГРУППИРОВАТЬ ПО
ЕСТЬNULL(ВТ.РодительГруппы, ВТ.Группа)
Batchir @ Сегодня, 9:28
,
Возможно я немного неправильно пояснил.
Имя поля в БД "Группа" - это ссылка на справочник "группы" (как напремер "подразделения организации" в УПП или чем-то подобном )
а "Группа1" и "Группа2" это наименования элемента в этом справочнике. Но все равно спасибо. Не ожидал что кто-то ответит в суботу.
И да я человек не далёкий и в программировании плаваю не глубоко потому попрошу объяснять как для умственно отсталого.
Я Вас прекрасно понял. Для того что бы в запросе что-либо сгруппировать, необходимо иметь это поле по которому можно группировать
Вы привели пример на "кубиках", я и привел так же для примера запрос, в котором для "Група1" и "Група3" есть общее поле с наименованием "Група1+Група3"
В "Група2" и "Група4" оно равно NULL.
Далее в запросе проверяем что если заполнено объединяющее поле, то используем его для получения итогов. Если не заполнено, то используем поле Группа.
Возможно если бы Вы привели точный пример запроса, то и ответ получили бы более точный)
Batchir @ 25.10.21, 12:53
,
Здравствуйте. Спасибо за помощь. Простите, что поздно отписал. С задачей справился пусть и пришлось изгалятся.
Просто сделал несколько запросов:
1 - Запрос выбирает все значения "Группы1"
2 - Запрос выбирает все значения "Группы3"
3 - Объеденяем оба результата запроса в одну таблицу.
4 - Выбираем все "Группы" кроме 1 и 3
А в отчете выводим отдельно результат 3-го запроса (сумарную таблице двух групп) как "Группа1+Группа3" и отдельно же "Группы" из запроса "4".
Надеюсь обяснил относительно понятно. Но в итоге получил то что и хотел. Кстати оказалось что передать значение параметра в запрос как поле запроса(таблицы) можно просто добавив в отобранные запросом поля "&Параметр".
Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7
https://pro1c.org.ua