Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
13 дек 2024, 06:50

Помощи в построении отчета в СКД

Автор Lefont, 28 мая 2013, 16:31

0 Пользователей и 1 гость просматривают эту тему.

Lefont

Есть задача, с виду очень простецкая и не вызывающая сложностей. Необходимо в итоге получить табличку такого вида (это только "верхушка айсберга"  :bleh:):


Соответственно: есть справочник контингентов , есть регистр сведений , в котором отмечены движения тех или иных контингентов. 
В левый столбец запросом загоняю всех контингентов, все хорошо.
Для правого столбца, создаю новый набор данных, и в нем запрос (с единственным полем "Состояло), в котором выбираю записи с условием по дате. В связях наборов данных, делаю связь между наборами, источником является набор для левого столбца, приемником правый столбец. В "вычисляемых полях" СКД делаю поле с выражением "Количество(Состояло)", и даю ему имя "Состояло на 1 число"

Теперь самое интересное. В "Настройках" создаю новую таблицу, в строке создаю группировку по полю "контингент" (из первого набор данных), и выбранные поля делаю "контингент" и "Состояло на 1 число". Естественно при попытки формирования отчета появляется ошибка, что после "Состояло на 1 число" не может участвовать в этой группировке. Ну а если добавить это поле в группировку, то появится ошибка что агрегатные функции не могут участвовать в группировке.

Убираю вычисляемое поле. В ресурсах создаю новое поле "Состояло", с выражением "Количество(Состояло)" и рассчитывать по "Контингент, Общий итог". Все считает, но появляется паразитное и не нужное поле:

Можно как то его убрать?

Ну и сам "айсберг". Реально ли в конечном счете такое получить в СКД:


В ручном виде таких отчетов уже сделал прилично, все просто и понятно, и сделать можно что угодно, но занимает прилично времени. Надеюсь с СКД все пойдет быстрее:)

С радостью выслушаю какие либо советы/критику/"какой я хороший" и т.д. и т.п. Заранее спасибо!

Yura063

Итоги убираются в настройках отчета! А почему отчет не снимать на начало месяца? тогда рассчитывать вам нечего не надо!
Помогли, отблагодари!

Lefont

В этом и проблема, не могу убрать эти чертовы итоги в шапке через настройки.

Цитата: Yura063 от 29 мая 2013, 09:20
А почему отчет не снимать на начало месяца? тогда рассчитывать вам нечего не надо!
А вот про это не совсем понял... Т.е с помощью периодического регистра?

P.S. Похоже мой подход в корне не правильный (т.е. берем задаем в запросе условия и считаем количество получившихся результатов)

Yura063

у вас данные получаете в запросе?


Добавлено: 29 мая 2013, 10:48


Цитата: Lefont от 28 мая 2013, 16:31Для правого столбца, создаю новый набор данных, и в нем запрос (с единственным полем "Состояло), в котором выбираю записи с условием по дате
Выборка по какому регистру делаете?
Помогли, отблагодари!

Lefont

Регистр сведений.

UPD.
Регистров накоплений нету. Мысль завести регистр накоплений хорошая, только вот по сути накапливать то нечего, только если самих людей) Можно конечно при проведении, сразу раскидывать по ресурсам (которые являются по сути полями в отчетах), т.е. осуществлять подсчет еще на этапе создания документа. Но проблема в том, что эти отчеты часто меняются, и каждый раз перелопачивать код документов...

Yura063

А вам обязательно вытягивать всех контингентов или только тех по кому движения были? И для движения лучше использовать регистр накопления!
Помогли, отблагодари!

Lefont

Нет, не обязательно. Убрать лишние контингенты можно еще в первом запросе (сделав объеденный запрос между справочником "Контингенты" и Регистром, по крайней мере делал так). Так я бы и рад проводить движения по регистру накопления, да только что там накапливать?)

Dethmontt

Цитата: Lefont от 29 мая 2013, 12:18(сделав объеденный запрос между справочником "Контингенты" и Регистром, по крайней мере делал так)

А нельзя сразу просто выбирать контрагентов из регистра? Зачем объединять со справочником контрагенты?

А итоги отключаются тут:
Если долго всматриваться в учебник...то в голову может прийти мысль его открыть!

Lefont

Если убрать итоги, то пропадает колонка "Состояло на 1 число" совсем. В принципе можно брать контингент и из регистра, но ведь в одной колонке может быть запись для данного контингента, а в другой нет, вот в чем вся проблема. Т.е. нужно выбрать все контингенты встречающиеся в регистре.

P.S. Вот на этом все я уже стопорюсь который день...
Добавлено: 29 мая 2013, 13:54


Вывод: в моем случае полноценно пользоваться СКД, без серьезных изменений в структуре БД, невозможно?
Добавлено: 30 мая 2013, 05:19


Больше вариантов нет?:(
Добавлено: 31 мая 2013, 05:29


Продолжаю тогда создавать отчеты с помощью кода и макета, и периодически продолжать пытаться что нить изменить и придумать.

И последний вопрос. Если я правильно понял, то для полноценной работы СКД необходим регистр НАКПОЛЕНИЯ?

Lefont

Сделал регистр накопления. Полная копия регистра сведений, но с единственным ресурсом количество, так как считать то собственно можно только людей... Экспериментирую в консоли запросов. Получаю таблицу следующего вида:


В моем понимании было следующее:

I. Можно так и вставить запрос в СКД, а потом просто дописывать в него вложенные запросы, ибо значения уже готовые, нужно только по нормальному вывести их.
Скопировал запрос, указал парметры. Вывести по человечески не выходило долго, в конце мучений вышло вывести по нормальному только с помощью детальных записей, естественно итогов не было:
.
Итоги как я понял, формируются по сути только по ресурсам. На вкладке СКД "Ресусры" добавляю необходимые поля:
,
и собственно говоря дальше стопор, делаю группировку в строка по контингентам, в отчете выбираю все поля, и в итоге выводится вообще только один контингент без чисел :(

извращался долго, и экспериментировал с выражением на вкладке "Ресурсы", бестолку..

II. Если правильно понимаю, то можно эти все вложенные запросы разбить на разные наборы данных СКД, и сделать по аналогии связь между ними, верное ли мыслю?

P.S. Очень хочется разобраться с СКД, ибо уже сейчас чувствуется что создание определенных отчетов в ней куда проще и быстрее, только то ли я дурак то ли лыжи не едут.

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск