Метаданные отчета в коллекции отчетов Telerik - PullRequest
0 голосов
/ 22 августа 2009

У меня есть быстро растущий набор отчетов Telerik в моем веб-проекте. Моя стратегия предоставления данных заключается в том, что в каждом отчете есть текстовый файл, содержащий запрос SQL. Я работаю со сложными критериями фильтра, такими как long 'x is in (y, z, a, b, c ....)' или '((x = 1) и (x

Все отчеты - это классы, производные от Telerik.Reporting.Report, которые имеют ограниченные свойства, которые служат метаданными отчета, такими как служебное название отчета, по сравнению с программным именем отчета. Нет никаких полей для таких атрибутов, как категория отчета, имя файла запроса SQL для отчета, возможная альтернативная страница просмотра отчета, подмножество общих параметров фильтра, которые должны быть отключены для отчета, и т. Д.

Я считаю первые варианты решения здесь непривлекательными, а именно. создание и поддержка хранилища «параметров отчета» в файле, файле web.config или в таблице базы данных. Это хранилище отделено от фактических отчетов, и работа в них или в хранилище требует частых и раздражающих обменов контекста.

Моя более предпочтительная идея - использовать нечто похожее на схему метаданных динамических данных, где атрибут класса сущности присваивает другой класс для хранения метаданных для сущности. Я мог бы также расширить Telerik.Reporting.Report, добавив, возможно, словарь для атрибутов, которые я хочу прикрепить к отчетам, и извлечь из этого все мои отчеты.

Буду признателен за любую критику моего нынешнего мышления или предложения относительно других вариантов.

1 Ответ

0 голосов
/ 25 августа 2009

Поскольку определения Telerik Report являются не чем иным, как чистыми классами C # / VB, вы должны иметь возможность использовать любой «стандартный» подход C # для включения метаданных в ваши отчеты. В классы производных отчетов вы можете добавлять любые поля или свойства, необходимые для управления настройками, или вы можете попытаться создать более «элегантное» решение, расширив Report в своем проекте.

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

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

...