1 Jason Miley Richard Young June, 2008 Using WebFOCUS to Consolidate Multiple Legacy Data Stores Copyright 2007, Information Builders. Slide 1
Introduction Harris County in Houston, Texas ( ( Nation’s 3 rd Largest County 3.9 Million Residents
Introduction Justice Information Management Systems (division of I.T.C.) Department since 1976 36 Full-time Employees 20 Contractors 20 years average tenure ! Responsible for most of the Justice related software development for Harris County 24,000 Users across 2,100 agencies Our Primary Users are other Harris County agencies 3
Your Presenters Richard Young With Harris County since 1999 CICS / COBOL / Model 204 developer since 1999 CICS / COBOL / JAVA / JSP developer since 2004 WebFOCUS “expert” since 2007 Jason Miley With Harris County since 1981 (that’s right…) CICS / COBOL since 1981 CICS / COBOL / Model 204 since 1985 CICS / COBOL / Model 204 / JAVA (sort of) since 2000 WebFOCUS ( I can spell it on a good day) since 2007 Data Management Team Lead 4
Environment Hardware IBM Mainframe ( Z/9 OS/MVS) Languages CICS / COBOL Model 204 JAVA Data Stores VSAM Model 204 DB2 IBM Websphere and WSAD (RSA 7 coming soon) WebFOCUS server on USS on ZOS Platform. Version Developers Studio Version client on Windows XP WebFOCUS server environment on SUSE Linux Version
History 6 JIMS Original System Began in 1976 CICS / COBOL / VSAM Model 204 (since 1985) Development continues to this day JIMS 2 JIMS redesign Began in 2000 Websphere / JAVA / DB2 Browser based
Where We Are Today 7 Model 204VSAMDB2 JIMS JIMS2 Mainframe 30+ years old 2 years old New development being done in both systems.
History of Information Harris County Customer since ( a long time ago ) Very few users until recently Used mostly for large nightly data downloads from production files by individual user agencies to feed their local systems Adopted as the reporting solution for new JIMS2 system less than a year ago Changed the way we use WebFOCUS Continue to use for nightly data downloads but, Embedded WebFOCUS in application workflow 8
Down to Business - Initial Reporting Requirements Find a reporting solution that can read all three of our mainframe data sources in real-time Combine and massage the data into a mostly text-based report Deliver the report in PDF form to the users workstation quickly. Example: A court clerk must enter the conditions of supervision according to the Judges orders and print the required documents for signatures while the parties are waiting. 9
10 Report Example Variable number of pages Page 1 header Final page section and thumb print box
11 Report Example Variable number of elements depending on data
12 Report Example Variable number of pages Page 1 header Final page footer and thumb print box
13 Static and variable length data elements Word wrap Challenges
Solution We inserted the database info into variable length fields and embedded those into the static text. There are some code examples at the end. 14
15 Report Example Variable number of pages Page 1 header Final page footer and thumb print box
16 Produce PDF output and resolve html tags embedded in the database columns. Challenges
17 Report Example Variable number of pages Page 1 header Final page footer and thumb print box
18 Challenges
Challenges Bridging the JIMS2 application to WebFOCUS. Report Catalog Contains a cross-reference of report-id’s to WebFOCUS URL’s and parms. 19 Report Catalog JIMS2 Application WebFOCUS
Here’s What It Looks Like 20 The user clicks the Print button The app reads the report catalog, builds the URL and runs the WebFOCUS report.
Here’s What It Looks Like 21
Thanks… We could not have come as far as we have without a lot of help from IBI. Thanks to: Sharam for all your technical help and patience Tony for your support and patience Rena for all that you do and just being you. All the other IBI into whose lives we brought a little misery 22 Barry AustinJames MirandaAdrian Armogan B.J. StepienJerry StillFloria Foote Brian KashLance ShealyLarry Civelli
Code Example 1 SET COMPONENT='report2' -*component_type report DEFINE FILE CSMODIFY PAGEHEADER/A500V='On this the ' | CASESPRVSNBEGDATEDAYORD | ' day of ' | CASESPRVSNBEGDATEMONTH || ', ' | CASESPRVSNBEGDATEYEAR | ' you are granted ' | SPRVISIONLENTH || ' community supervision for the felony offense of ' | OFFENSETRIM || ' in accordance with section 3 of Article 42.12, Texas Code of Criminal Procedure, in the ' | COURTCODEORD | ' District Court of Harris County, Texas, by the Honorable ' | SIGNEDBYFLNAME | ' Judge Presiding. It is the order of this Court that you abide by the following Conditions of Community Supervision:'; END TABLE FILE CSMODIFY PRINT PAGEHEADER AS '' WHERE SPRVISIONORDER_ID EQ &SPRVISIONORDER_ID; ON TABLE SET PAGE-NUM OFF ON TABLE NOTOTAL ON TABLE PCHOLD FORMAT PDF ON TABLE SET HTMLCSS ON ON TABLE SET STYLE * UNITS=IN, PAGESIZE='Letter', SQUEEZE=ON, ORIENTATION=PORTRAIT, $ TYPE=REPORT, GRID=OFF, FONT='ARIAL', SIZE=9, MARKUP=ON, $ 23
Code Example 2 SET COMPONENT='report3' -*component_type report TABLE FILE CSMODIFY PRINT RESOLVEDESC SKIP-LINE AS '' COMPUTE COUNTER/I3 = COUNTER + 1; NOPRINT COMPUTE CONDITIONS/A35V = IF COUNTER EQ 1 THEN ' ' ELSE 'CONDITIONS OF COMMUNITY SUPERVISION'; NOPRINT COMPUTE FORSPACE/A5 = IF COUNTER EQ 1 THEN ' ' ELSE 'FOR: '; NOPRINT COMPUTE DEFENDANT/A94V = IF COUNTER EQ 1 THEN ' ' ELSE &partyName.QUOTEDSTRING; NOPRINT COMPUTE CAUSE/A15 = IF COUNTER EQ 1 THEN ' ' ELSE 'CAUSE NUMBER: '; NOPRINT COMPUTE ACAUSENUMBER/A13V = IF COUNTER EQ 1 THEN ' ' ELSE CAUSENUMBER; NOPRINT BY SEQUENCENUM NOPRINT BY CONDITIONNUMBERWITHADOT AS '' HEADING " <CONDITIONS" " " "<FORSPACE<DEFENDANT <CAUSE<ACAUSENUMBER" " " WHERE SPRVISIONORDER_ID EQ &SPRVISIONORDER_ID; ON TABLE SET PAGE-NUM OFF ON TABLE NOTOTAL ON TABLE PCHOLD FORMAT PDF ON TABLE SET STYLE * UNITS=IN, PAGESIZE='Letter', … FONT='ARIAL', SIZE=9, MARKUP=ON, $ 24
25 Questions ?