|
|
|
Сводный отчет
|
|||
|---|---|---|---|
|
#18+
Здравствуйте! Необходимо построить сводный отчет, в котором: область столбцов: дата каждой торговой сессии, номер месяца, номер года. область строк: наименование товара, фабрика область данных: кол-во сделок, средневзвешенная цена, минимальная и максимальная цена. Клиент для отчета: MS Excel (на самом деле все равно кто клиент, поскольку идеология построения сводных отчетов в любой системе одинакова. все ниже описанное будет справедливо и для MS Reporting Services, проверял). Я создал представление, которое выдает все необходимые данные. При отображении данных по кол-ву сделок и ценам системой отчетности (тут MS Excel) автоматически вычисляются подитоги и общие итоги. Но итог по кол-ву товара необходим, а итог по ценам (суммы по всем товарам и фабрикам) не имеет никакого смысла и эти итоги не нужны. Управлять подитогами пожно только из области строк (а это наименования товаров и фабрик, а не кол-во сделок и цены) и когда говоришь системе убрать подитоги, то таким образом подитоги убираются как не только с цен, но и с кол-ва сделок, а так не нужно. Необходимо правильно настроить подитоги, в этом и заключается вся проблема. Мой дальнейший ход мысли: Выход напрашивается тогда такой: переместить цены и кол-во в область строк. Но для корректной работы отчета придется тогда координально перестраивать весь запрос. Раньше поля представления были: год торговой сессии месяц торговой сессии дата торговой сессии наименование фабрики наименование товара кол-во сделок средневзвешенная цена товара (по всем сделкам) минимальная цена максимальная цена Теперь необходимо новое представление: год торговой сессии месяц торговой сессии дата торговой сессии наименование фабрики наименование товара наименование атрибута значение атрибута где атрибут это: Код: plaintext 1. 2. 3. 4. 5. 6. 7. Тогда и для каждого значения атрибута придется строить запросы, а это куча UNION-ов, например: Код: plaintext 1. 2. 3. 4. 5. 6. эти два подзапроса соединяются иннер-джойнами, ну и так далее... В результате задача решается, но получается огромный и медленный запрос с кучей объединений. Уверен что такой подход является плохой практикой построения отчета, задача имеет гораздо более лаконичное и красивое решение, но какое? Может быть необходим OLAP-куб с измерениями? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.03.2009, 12:22 |
|
||
|
Сводный отчет
|
|||
|---|---|---|---|
|
#18+
Возможно я один такой, но я так и не понял, в какой системе Вы все таки строите отчет? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.03.2009, 14:12 |
|
||
|
Сводный отчет
|
|||
|---|---|---|---|
|
#18+
buvenВозможно я один такой, но я так и не понял, в какой системе Вы все таки строите отчет? Отчет делал в MS Excel 2007. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.03.2009, 14:19 |
|
||
|
Сводный отчет
|
|||
|---|---|---|---|
|
#18+
К сожалению именно с эекселем не смогу Вам помочь. Но раз уж в старте топика было упомниание об RS, вариант с создания отчета в RS с последующим экспортом в эксель Вы не рассматривали? ИМХО функционал гораздо шире и скорее всего подобных проблем тут не возникнет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.03.2009, 14:30 |
|
||
|
|

start [/forum/topic.php?fid=31&msg=35862231&tid=1536316]: |
0ms |
get settings: |
5ms |
get forum list: |
13ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
179ms |
get topic data: |
6ms |
get forum data: |
2ms |
get page messages: |
32ms |
get tp. blocked users: |
1ms |
| others: | 208ms |
| total: | 450ms |

| 0 / 0 |
