2010-07-07 3 views
1

Я работаю над проектом с некоторыми существующими отчетами MS, используя Reporting Services 2000/2005 и Visual Studio 2005 со встроенным конструктором отчетов.MS Report Designer - Что представляют собой таблицы и как они используются?

Я столкнулся с отчетом, который использует таблицу для отображения данных, которые извлекаются с помощью хранимой программы. Моя работа потребовала от меня изменения отчета и сохраненного Proc.

Я внес изменения в хранимую процедуру и возвращает правильные данные при тестировании в SQL Management Studio. Однако в отчете некоторые данные отсутствуют по причине, хотя я использую одни и те же параметры.

У меня есть скрытое ощущение, что оно связано с группами таблиц, определенными для главной таблицы отчета. В таблице указаны две группы таблиц. Я удалил некоторые элементы во второй группе таблиц, поскольку они были удалены из хранимой процедуры и отчета. Возможно, мне нужно добавить новые поля/столбцы из сохраненного proc в группу таблиц?

Может ли кто-нибудь указать мне в правильном направлении, как исследовать/решать эту проблему, а также какие группы таблиц и как они предназначены для использования.

ответ

0

Итак, я добавил новые столбцы в хранимой процедуре в группу таблиц и работает должным образом.

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

Как я добавил одно новое поле за раз, чтобы соответствовать полям в хранимой процедуре, тем лучше стала точность отчета.

Я думаю, что это похоже на то, как SQL требует, чтобы каждое поле в предложении Select также отображалось в разделе Group By.

+0

Это работало для меня, хотя я не совсем понимаю проблему или решение. Поэтому я буду отмечать это как правильное решение, когда SO позволяет мне, если кто-то не может предложить лучшее понимание. –

0

Группы в таблицах работают аналогично группам в SQL-запросе - данные в них возвращаются только один раз для каждой группы, а не один раз за запись. Однако, поскольку вы также можете включать в таблицу подробные данные, вы также можете видеть данные уровня группы и уровня детализации из одной таблицы отчетов, тогда как для SQL потребуется отдельный (дополнительный) запрос.

В качестве примера рассмотрим структуру продаж в SQL:

sales_month 
sales_day 
sales_product 
sales_value 

Вы можете вернуть список всех продаж в хронологическом порядке, в SQL с запросом

select * from sales order by sales_month, sales_day; 

Или вы могли бы возвращать краткая информация о всех продажах по месяцам в SQL с запросом

select sales_month, sum(sales_value) as monthly_sales 
from sales group by sales_month order by 1; 

Использование таблицы отчетов, сгруппированных по моменту nth, с подробными строками и нижним колонтитулом группы, вы можете перечислить все продажи в порядке дат с промежуточным итогом за каждый месяц, в конце каждого месяца.

В пособии SSRS есть учебники, которые иллюстрируют использование группировки в отчете.

 Смежные вопросы

  • Нет связанных вопросов^_^