custom archive solution for businessobjects xi dell stinnett, zc sterling
Post on 17-Dec-2015
220 Views
Preview:
TRANSCRIPT
Custom Archive Solution for BusinessObjects XI
Custom Archive Solution for BusinessObjects XI
Dell Stinnett, ZC Sterling
Copyright © 2006 Business Objects S.A. All rights reserved.Slide 3
Introduction
Configuration
Daily Process
Viewer
Q&A
Topics
Copyright © 2006 Business Objects S.A. All rights reserved.Slide 4
ZC Sterling A leading provider of mortgage outsourcing services
• Hazard insurance• Real estate tax servicing• Voluntary Products• Customer care• Best Shores
BusinessObjects XI R2 Recent migration from Seagate Info 7.5 Custom programs Folders organized by product line – Tax, Hazard, etc.
Introduction
Copyright © 2006 Business Objects S.A. All rights reserved.Slide 5
Regulatory Requirements Tax data – keep for 7 years Sarbanes-Oxley
Historical Research Claims Proof that letters were created Compare last year to this year
Why Archive?
Copyright © 2006 Business Objects S.A. All rights reserved.Slide 6
Day limits Default per product line Customizable by report
Online vs. offline storage
Automatic daily process Scheduled inside BusinessObjects XI
User interface to view reports Search by:
• Report title• Date• Parameter values
Search active and archived reports
Solution Requirements
Copyright © 2006 Business Objects S.A. All rights reserved.Slide 7
BOECommonInfo Connection to Central Management Server Translate Names to ID’s and vice-versa Get info about all sub-folders or reports in a specified folder
BOEFolderInfo structure Foldername ID ParentID
BOEReportInfo structure Reportname ID ParentID Kind
Utility Classes
Provide common functionality and structures
Copyright © 2006 Business Objects S.A. All rights reserved.Slide 8
Introduction
Configuration
Daily Process
Viewer
Q&A
Topics
Copyright © 2006 Business Objects S.A. All rights reserved.Slide 9
Configuration Tables
Copyright © 2006 Business Objects S.A. All rights reserved.Slide 10
Demo - Configuration Application 1/2
Utility for setting up products and Report Definitions
Copyright © 2006 Business Objects S.A. All rights reserved.Slide 11
Demo - Configuration Application 2/2
Copyright © 2006 Business Objects S.A. All rights reserved.Slide 12
Starts at the product base folderRecursive method walks through folders to get report informationprivate void LoadFromFolder(Int32 parentID, Int32 productFolderID, Int32 productKey){ List<BOEFolderInfo> folders; List<BOERptInfo> reports; folders = _common.GetFolderList(parentID); foreach (BOEFolderInfo folder in folders) { LoadFromFolder(folder.ID, productFolderID, productKey); reports = _common.GetReportsInFolder(folder.ID); if (reports.Count > 0) LoadReports(reports, productKey); }}
Load Report Definitions
Copyright © 2006 Business Objects S.A. All rights reserved.Slide 13
Introduction
Configuration
Daily Process
Viewer
Q&A
Topics
Copyright © 2006 Business Objects S.A. All rights reserved.Slide 14
Add new active instances to Report_Instance table
Determine number of days active reports are kept
Move old report instances to archive folders
On first of month, move very old reports from archive to offline storage
Daily Report Archive Process
For Each Report Definition
Copyright © 2006 Business Objects S.A. All rights reserved.Slide 15
Used to determine actual path to active reportsprivate string getOutputServerPath(){ string result = string.Empty; string query = "Select * From CI_SYSTEMOBJECTS " + "Where SI_FRIENDLY_NAME like ‘Output%'"; using (InfoObjects servers =
_common.BOEInfoStore.Query(query)) { if (servers.Count >= 1) { Server server = (Server)servers[1]; FileServerAdmin serverAdmin =
new FileServerAdmin(server.ServerAdmin); result = serverAdmin.RootDirectory; } } return result;}
Determining Output Filestore Path
Copyright © 2006 Business Objects S.A. All rights reserved.Slide 16
For each report, find the instancesprivate void SaveRptInfo(int rptID,
DateTime lastArchive){ string compareDate = (lastArchive.ToUniversalTime()).ToString(
"yyyy.MM.dd.hh.mm.ss"); string query = "Select SI_NAME, SI_ID, SI_DESCRIPTION, " + "SI_UPDATE_TS, SI_FILES, SI_PROMPTS " + "From CI_INFOOBJECTS Where SI_INSTANCE_OBJECT=1 " + "And SI_SCHEDULE_STATUS=1 " + "And SI_UPDATE_TS>='" + compareDate + "'" + "And SI_PARENTID=" + rptID + …
Save the report information
Get Report Info for Archive - Report
Copyright © 2006 Business Objects S.A. All rights reserved.Slide 17
Save the parameter informationprivate void SaveParamInfo(Report rpt, int instanceKey){ ReportParameters paramList = rpt.ReportParameters; ReportParameterRangeValue rangeParam; ReportParameterSingleValue singleParam; for (int i = 1; i <= paramList.Count; i++) { if ((paramList[i].ParameterName.Substring(0, 2).ToUpper() != "PM") && (paramList[i].CurrentValues.Count > 0)) { if (paramList[i].SupportsRangeValues) { rangeParam = paramList[i].CurrentValues[1]; SaveRangeParamData(paramList[i].ParameterName, rangeParam.FromValue.ToString(), rangeParam.ToValue.ToString(), instanceKey); } else { singleParam = paramList[i].CurrentValues[1]; SaveSingleParamData(paramList[i].ParameterName, singleParam.Value.ToString(), instanceKey); }…
Get Report Info for Archive - Parameters
Copyright © 2006 Business Objects S.A. All rights reserved.Slide 18
Report instance date is earlier than today – days to keep
private void CopyFile(string newPath, Report rpt){ string fromFile = rpt.Files[1].Name.Replace("frs://Output", _outputRoot); fromFile = fromFile.Replace('/', '\\'); FileInfo fi = new FileInfo(fromFile); int i = fromFile.LastIndexOf('\\'); string toFile = newPath + fromFile.Substring(i + 1); fi.CopyTo(toFile, true);}
Copy Report File to Archive
Copyright © 2006 Business Objects S.A. All rights reserved.Slide 19
Introduction
Configuration
Daily Process
Viewer
Q&A
Topics
Copyright © 2006 Business Objects S.A. All rights reserved.Slide 20
When loading application Get a list of reports to which the user has view rights
User selects Report title Date range in which the report was run
Parameter selection/search Is any value Starts with Ends with Contains Equals Is less than Is greater than
Archive Viewer Application
Copyright © 2006 Business Objects S.A. All rights reserved.Slide 21
Demo – Search and View Application
Copyright © 2006 Business Objects S.A. All rights reserved.Slide 22
Questions Dell Stinnett, Senior Software Engineer, ZC Sterling I will repeat questions to ensure everyone can hear
Contact information Email: dell.stinnett@zcsterling.com Website: http://www.geocities.com/geekgurl7/ Intro.html
Q&A
top related