2009-08-26 1 views
1

이 응용 프로그램에서는 SQL Server Reporting Services를 사용하며 사용자가 보고서에 사용자 지정 필터를 추가 할 수 있습니다. 이렇게하려면 RDL을 수정 한 다음 수정 된 RDL을 서버에 업로드하여 새 보고서를 만듭니다. 문제는 보고서가 한 번 실행 된 후에 더 이상 필요하지 않다는 것입니다. 정말로 임시 보고서 일뿐입니다. 분명히 이것은 일시적인 보고서를 많이 내놓을 것입니다. 우리는 이것을 정리할 방법이 필요합니다.임시 SSRS 보고서 정리

우리는 이미 보고서를 정기적으로 삭제하기 위해 서비스 나 작업을 만드는 것과 같은 외부 방법에 대해 생각해 왔으며, 아마도 우리가 더 나은 것을 제시 할 수 없을 때 우리가해야 할 일이 될 것입니다. 우리가 궁금해하는 점은 SSRS 자체가이를 수행하는 더 좋은 방법을 제공합니까? 만료되도록 설정된 캐시 된 인스턴스를 어떻게 든 사용하려고 생각했지만 보고서 자체가 아니라 보고서의 실행 인스턴스에서만 작동하는 것으로 보입니다. 보고서가 만료 될 수있는 방법이 없다는 것을 알 수 있습니다. SSRS가 우리를 위해 정리할 다른 방법이 있습니까?

우리의 실행이 비동기이기 때문에 보고서를 즉시 삭제할 수 없습니다.

답변

2

내장형, 아무 것도 없습니다. 그러나 무언가를 직접 쓰는 것은 쉽습니다.

30 분 이상 된 보고서가있는 카탈로그를 쿼리하는 프로세스를 사용해보십시오. ReportServerTempDB에 가입하여 여전히 활성 세션이 있는지 확인할 수도 있습니다 (이 경우 더 이상 무시합니다).

웹 서비스 인터페이스를 발견하면 쉽게 웹 서비스 인터페이스를 사용하여이를 가져 와서 카탈로그에서 삭제할 수 있습니다.

하지만 실제로 코드를 사용하여 사용자 지정 필터를 제공하는 더 나은 방법을 살펴볼 것입니다. 물론 필터를 매개 변수로 제공하고 보고서의 VB 코드를 사용하여 사용자가 제공 한 것을 각 행에 대해 평가할 수있는 것으로 변환 할 수 있습니다.

Rob

+0

임시 DB에서 활성 세션을 확인하는 데 유용한 팁. 보고서에 임베디드 코드를 사용하는 것은 좋은 생각이지만 시나리오에서는 작동하지 않을 것입니다. 우리가 가지고있는 요구 사항은 최종 사용자가 자신 만의 맞춤 보고서를 개발하는 것이 매우 쉽기 때문입니다. 보고서에 코드를 작성하도록 요구하는 것은 아마도 비행하지 않을 것입니다. 또한 각 행을 평가하는 코드의 성능에 미치는 영향이 무엇인지 궁금합니다. –