240 likes | 336 Views
Decision Support Office Managing a Large Report Inventory Using Events. About University Health Systems. We are a regional health system serving 29 counties in eastern North Carolina, and we’re working every day to improve the health of the 1.4 million people we serve.
E N D
Decision Support OfficeManaging a Large Report Inventory Using Events
About University Health Systems We are a regional health system serving 29 counties in eastern North Carolina, and we’re working every day to improve the health of the 1.4 million people we serve. • Pitt County Memorial Hospital, Greenville • Bertie Memorial Hospital, Windsor • Chowan Hospital, Edenton • Duplin General Hospital, Kenansville • Heritage Hospital, Tarboro • Roanoke Chowan Hospital, Ahoskie • The Outer Banks Hospital, Nags Head • Albemarle Health, Elizabeth City
Objective This presentation covers how to capture reports and usage within a WebFOCUS environment. Each report writes an event record to monitor usage, a report record to capture keywords, and a group record to determine report location/domain. A dashboard hosts this data so that a user can find a report based on keyword or popularity and can then subscribe to that report.
Production Control Challenges As of January 2011, our Reporting Environment consisted of approximately 1400 customer facing reporting solutions. These solutions are located in one or more of our 79 reporting domains. Customers were having trouble locating the reports that they may use on occasion. There was a need for a new way to manage our growing inventory of reporting solutions.
Establishing a Report Inventory • Determine what you would like to capture from each report. • Establish a place to capture this data. • Factor in production control policies for ensuring reports are added to your inventory in a consistent manner.
What to Capture • Report Title • Program Name • Report Location/Domain • Audience • Security • Keywords the user can use to find this report • Who is accessing this report • When are they accessing this report
How to Capture the Data Data Warehouse Domain Table Report Table Event Table Domain ID Domain ID Report ID Domain Name Report ID User ID Report Title Event Type Audience Event Time Security Keywords
Report Preview Store an instance or image of what the report looks like to allow for users to preview each report. Currently storing our instances in \\servername\c$\ibi\apps\library Incorporate the following code into our Report Inventory program: Set Command: SET BASEURL=http://servername:8080/approot/library/ Stylesheet: TYPE=DATA, COLUMN=PREVIEW, IMAGE=(PREVIEW), SIZE=(.2 .2), PRESERVERATIO=ON, URL=(FILE_NAME), TARGET=_blank, $ *FILE_NAME is the file name of the instance (i.e. report.xls)
Run Events Program -SET &USERID = &IBIMR_user; DEFINE FILE TABLENAME EVENTTIME/HYYMDs = HGETC(10, 'HYYMDs'); EVENTTYPE/A10 = 'RUN'; USERID/A10 = UPCASE(10,'&USERID',USERID); DOMAINID/A10 = '&GROUPID'; REPORTID/A8 = '&REPORTID'; END TABLE FILE TABLENAME PRINT EVENTTIME EVENTTYPE USERID DOMAINID REPORTID ON TABLE HOLD AS RUNEVENT FORMAT ALPHA END -RUN MODIFY FILE SQLTABLENAME FIXFORM FROM RUNEVENT DATA ON RUNEVENT END -RUN Every time a report is executed you will want to store a record in your events table to capture who ran what report. All production reports contain an include command that points to a program with this code in it:
Report Details Program Every time a report is executed you will want to store or update a record in your report table to capture the details of each report. Note that your domain table can be updated manually since it may not change often. All production reports contain an include command that points to a program with this code in it: DEFINE FILE TABLENAME REPORTID/A8 = '&REPORTID'; DOMAINID/A10 = '&DOMAINID'; RPTTITLE/A50 = '&RPTTITLE'; SECURITY/A25 = '&SECURITY'; KEYWORDS/A100 = '&KEYWORDS'; END TABLE FILE TABLENAME PRINT REPORTID DOMAINID RPTTITLE SECURITY KEYWORDS ON TABLE HOLD AS RPTDTL FORMAT ALPHA END -RUN MODIFY FILE SQLTABLENAME FIXFORM FROM RPTDTL MATCH REPORTID DOMAINID ON MATCH UPDATE RPTTITLE SECURITY KEYWORDS ON NOMATCH INCLUDE DATA ON RPTDTL END -RUN
Program Headers The include commands will need to have variables set for each report so that information about each execution can be captured uniquely for each report. Below is a sample of what variables are set for each report in our production environment: -SET &USERID = UPCASE(25,&IBIMR_user,&IBIMR_user); -SET &RPTNAME = 'Unit Admission Report'; -SET &GROUPID = 'MYDOMAIN'; -SET &REPORTID = 'UNITADMS'; -SET &SECURITY = 'PROTECTED'; -SET &KEYWORDS = 'ADMIT SOURCE ADMISSIONS UNIT ADMITTING DIAGNOSIS'; -MRNOEDIT -INCLUDE RUNEVENT -MRNOEDIT -INCLUDE RPTDTL
Other Benefits for Using Events • Determine Report Issues • Monitor Global Usage • Save users time searching for reports • Capture additional report details like report author, publish date, and report requestor
Monitor Global Usage Every time a new run event is added to the Events Table it is counted as a hit. Hits can help determine your reporting environments overall usage.
More To Come! Questions?