SSRS 리포트 재실행

By 01/08/2018SSRS 강좌

SSRS 리포트 재실행

 

  • Version : SSRS 2005, 2008R2, 2012, 2014

 

SQL Server 2012 SSRS에서 매일 아침 8시 일간 리포트를 발송하는 예약 작업이 설정되어 있었는데 일부 리포트가 발송되지 않았다. 확인결과 보류 상태로 대기 중이었다.

 

원인을 파악하여 해결 후 다시 리포트를 발송 해야 하는데 리포트 관리자에서 스케쥴 시간을 변경하여 발송 후 원래의 시간으로 변경하는 것은 매우 불편하다.

 

SSRS 이메일 보고서를 등록하면 SQL Server Job Agent에 새로운 Job 으로 등록 된다. 다음 스크립트를 사용하면 SSRS에 등록된 보고서 이름과 작업의 이름을 매칭하여 확인 할 수 있다.

 

SELECT    b.name AS JobName

, e.name

, e.path

, d.description

, a.SubscriptionID

, laststatus

, eventtype

, LastRunTime

, date_created

, date_modified

FROM  ReportServer.dbo.ReportSchedule   a

JOIN  msdb.dbo.sysjobs b

ON cast(a.ScheduleID as varchar(255)) = b.name

JOIN  ReportServer.dbo.ReportSchedule c

ON b.name = CAST(c.ScheduleID AS VARCHAR(255))

JOIN

(select eventtype,laststatus,LastRunTime,d.SubscriptionID,d.description, cast(d.report_oid as varchar(255)) report_oid from    ReportServer.dbo.Subscriptions d  ) d

on c.SubscriptionID = d.SubscriptionID

JOIN

(select e.name, e.path, cast(e.itemid as varchar(255)) itemid from    ReportServer.dbo.Catalog e   ) e

on itemid = report_oid

 

작업 이름을 확인 후 SQL Server Agent에서 해당 잡을 실행 하면 리포트를 발송 할 수 있다.

 

2014-08-21 / 강성욱 / http://sqlmvp.kr / http://sqlangeles.com

 

SSRS, SSRS이메일 발송, SSRS리포트 재실행, SSRS Job Agent, MSSQL Server, SQL Server 2012, SQL Server, 리포팅 서비스, SSRS 예약작업, sqlmvp, SQL Angeles

Leave a Reply