2009-08-22 4 views
0

웹 프로젝트에서 Telerik 보고서가 급증하고 있습니다. 내 데이터 제공 전략은 각 보고서에 SQL 쿼리가 포함 된 회사 텍스트 파일이 있다는 것입니다. 나는 'x가 (y, z, a, b, c ....)'또는 '((x = 1) and (x <))'와 같이 복잡한 필터 기준을 처리하며 백 번 반복됩니다. 텍스트 파일 쿼리를 사용하기 전에 텍스트 파일 대체를 수행하여 보고서의 DataTable을 가져옵니다.[Telerik] 보고서 모음의 메타 데이터보고

모든 보고서는 Telerik.Reporting.Report에서 파생 된 클래스로, 보고서의 비즈니스 제목, 보고서의 프로그래밍 방식 이름 등과 같은 보고서 메타 데이터로 사용되는 속성이 제한되어 있습니다. 보고서 범주, 보고서의 SQL 쿼리 파일 이름, 보고서의 대체보기 페이지, 보고서에 대해 사용하지 않도록 설정할 일반 필터 매개 변수 하위 집합 등의 특성 필드는 없습니다.

나는 여기서 첫 번째 후보 솔루션을 찾지 못한다. 파일, web.config 또는 데이터베이스 테이블에서 '보고서 설정'저장소를 만들고 유지 관리합니다. 이 저장소는 실제 보고서와 분리되어 있으며 저장소 나 저장소에서 작업 할 경우 빈번하고 성가신 컨텍스트 스왑이 필요합니다.

필자가 선호하는 아이디어는 다이나믹 데이터 메타 데이터 스키마와 비슷한 것을 사용하는 것입니다. 여기서 엔티티 클래스의 속성은 엔티티의 메타 데이터를 저장하는 다른 클래스를 지정합니다. Telerik.Reporting.Report을 확장하여 보고서에 첨부하려는 속성에 대한 사전을 추가하고 그 보고서를 모두 가져올 수 있습니다.

내 생각에 대한 비판이나 다른 옵션에 대한 제안은 감사하겠습니다.

답변

0

Telerik 보고서 정의는 순수한 C#/VB 클래스에 불과하기 때문에 보고서에 메타 데이터를 포함하기위한 "표준"C# 접근 방식을 사용할 수 있어야합니다. 파생 된 보고서 클래스에서 설정을 관리하는 데 필요한 필드 또는 특성을 추가하거나 프로젝트에서 Report을 확장하여보다 "우아한"솔루션을 만들 수 있습니다.

현재 Telerik Reporting 버전은 보고서 속성 설정을위한 네이티브 메타 데이터 솔루션을 제공하지 않지만 매우 흥미로운 아이디어입니다. Telerik보고 팀에게이 아이디어에 대해 체중 측정을 요청 했으므로 곧 더 많은 지침을 제공해야합니다.

동시에 모든 프로젝트 보고서가 필요한 "설정"값을 쉽게 설정할 수 있도록 계획된 "보고서 기본 클래스"로 올바른 방향으로 가고 있다고 생각합니다.