Agenda Demo Schema review Code structure Issues. Schema review Relationships between tables Temporary tables Views The “tenMinuteJob”

Slides:



Advertisements
Similar presentations
Ad Hoc Reporting Ad Hoc Reporting Gene Denny Education Training Supervisor, CIC.
Advertisements

Application Generator Merrill Networking Services.
EndNote. What is EndNote:  EndNote is referencing software that enables you to create a database of references from your readings. Your database of references.
New Features and Enhancements
Guide to Oracle10G1 Introduction To Forms Builder Chapter 5.
A Guide to Oracle9i1 Introduction To Forms Builder Chapter 5.
JSP Java Server Pages Reference:
Tutorial 8 Sharing, Integrating and Analyzing Data
Web Database Programming Week 6 Using Templates & Updating Web Database.
MICROSOFT – WORD. WORD... text entry f formatting spell check bulleting numbering t tables and much more.
Chapter 7 Managing Data Sources. ASP.NET 2.0, Third Edition2.
Tutorial 11: Connecting to External Data
SQL Reporting Services Overview SSRS includes all the development and management pieces necessary to publish end user reports in  HTML  PDF 
XP New Perspectives on Microsoft Access 2002 Tutorial 71 Microsoft Access 2002 Tutorial 7 – Integrating Access With the Web and With Other Programs.
SQL Server Reporting Services
1 ADVANCED MICROSOFT WORD Lesson 15 – Creating Forms and Working with Web Documents Microsoft Office 2003: Advanced.
Web Development Challenges and How They are Solved in ps:eScript Matt Verrinder Progress Software UK Internet & Integration Technologies.
A web based Project Management and Tracking System Zheng Wang, Yuntian Zhao, Yanhong Li Biostatistics & Statistical programming.
WaveMaker Visual AJAX Studio 4.0 Training Studio Overview.
SQL Server Reporting Services London Database Developer Forum Anoop Patel.
Copyright © Team #4 CSCI 6838 Spring Ad Hoc Graphical Reports CSCI Research Project and Seminar Team #4 March 1, 2007.
Initial Data Load Extension Module Webinar February 4th, 2009.
PowerPoint 2003 – Level 1 Computer Concepts Cathy Horwitz April 25, 2011.
Generating reports with JasperReports Sean C. Sullivan Portland Java Users Group April 2004.
First Screen : First window form will always remain open, for the user to select menu options. 1.
10-1 aslkjdhfalskhjfgalsdkfhalskdhjfglaskdhjflaskdhjfglaksjdhflakshflaksdhjfglaksjhflaksjhf.
Creating a Web Site to Gather Data and Conduct Research.
JasperReports and iReport Training Joe Ferrall Senior Programmer/Analyst - NWOCA.
Summary Data Modeling SDLC What is Data Modeling Application Audience and Services Entities Attributes Relationships Entity Relationship Diagrams Conceptual,Logical.
Java Server Pages A JSP page is a text-based document that contains two types of text: static template data, which can be expressed in any text-based format,
COMP 321 Week 7. Overview HTML and HTTP Basics Dynamic Web Content ServletsMVC Tomcat in Eclipse Demonstration Lab 7-1 Introduction.
PHP meets MySQL.
Copyright © 2012, Oracle and/or its affiliates. All rights reserved. 1 Quick Tutorial – Part 2 Open Data Web Services for Oracle BPM August, 2013 Forms.
HTML. Principle of Programming  Interface with PC 2 English Japanese Chinese Machine Code Compiler / Interpreter C++ Perl Assembler Machine Code.
Struts J2EE web application framework “ Model 2 ” Model View Controller Controller Servlet Key features XML metadata Struts taglib Simplified form validation.
JAVA SERVER PAGES CREATING DYNAMIC WEB PAGES USING JAVA James Faeldon CS 119 Enterprise Systems Programming.
NASTAD EMR Request Data reporting for the National Alliance of State & Territorial AIDS Directors By Claire Tucker.
Handy separation the report template into pages Handy visual separation of the report template into pages is available in Stimulsoft Reports.Net. You.
DATA, SITE AND RESOURCE MANAGEMENT SOFTWARE. A Windows application software designed for use with Stylitis data loggers. EMMETRON consolidates resources,
Copyright © 2007 Vulcan Software LLC Introduction to Apex 9.5 Presented by Phil Kramer Vulcan Software LLC.
Automatic Report Generation for WLCG/EGEE D. D. Sonvane (Gridview Team) B.A.R.C.
Introduction to Enterprise Guide Jennifer Schmidt Rhonda Ellis Cassandra Hall.
Ad Hoc Graphical Reports Ad Hoc Graphical Reports Copyright © Team #4 CSCI 6838 Spring CSCI Research Project and Seminar Team# 4 (
1 Overview of JasperReport Dec 27, Current Reporting Library iText for PDF report generation iText is a powerful PDF generation engine How can.
1 EndNote X2 Your Bibliographic Management Tool 29 September 2009 Humanities and Social Sciences Resource Teams.
Talentlink Reporting This should be the first page of your presentation.
© 2006 Altova GmbH. All Rights Reserved. Altova ® Product Line Overview.
11 TRAINING COURSE ON MALARIA ELIMINATION FOR THE GMS Databases Ryan Williams Chang Mai, August 2015.
1 Introduction to Servlets. Topics Web Applications and the Java Server. HTTP protocol. Servlets 2.
8 Chapter Eight Server-side Scripts. 8 Chapter Objectives Create dynamic Web pages that retrieve and display database data using Active Server Pages Process.
Vakgroep Informatietechnologie – Onderzoeksgroep (naam) Web Centric Design of Distributed Software.
TAILS Phase 5 TAILSTAILS racking ntegrated ogging ystem nd 1 TAILS Introduction to Reporting.
Analysis of Prescription Drug Regimen Compliance Charles Mason Computer Applications in Medicine REU 2006 University of Virginia.
Microsoft Office 2013 Try It! Chapter 4 Storing Data in Access.
Fourth R Inc. 1 WELCOME TO MICROSOFT OFFICE ACCESS 2003 INTERMEDIATE COURSE.
XP New Perspectives on Microsoft Office Access 2003, Second Edition- Tutorial 8 1 Microsoft Office Access 2003 Tutorial 8 – Integrating Access with the.
Product Description. XML file generation Fluidity in data transfer. Just-in-time integration and transformation Based on JAVA technology. Output formats.
 Java Server Pages (JSP) By Offir Golan. What is JSP?  A technology that allows for the creation of dynamically generated web pages based on HTML, XML,
SunGard SCT Converter Tool Technical Consultant Welcome.
GridView - Presentation of Work done at CERN by D. D. Sonvane B.A.R.C.
Fab25 User Training Cerium Labs LabCollector - LIMS Lynette Ballast.
HTML LAYOUTS. CONTENTS Layouts Example Layout Using Element Example Using Table Example Output Summary Exercise.
JasperReports Open Source Reporting Engine. JasperReports Reporting Engine & Compiler Various Input Options – XML, Hibernate, JDBC, CSV… Various Output.
C Copyright © 2009, Oracle. All rights reserved. Using SQL Developer.
1 New Perspectives on Access 2016 Module 8: Sharing, Integrating, and Analyzing Data.
Access Tutorial 8 Sharing, Integrating, and Analyzing Data
Introduction of Week 11 Return assignment 9-1 Collect assignment 10-1
JasperReports.
Tutorial 7 – Integrating Access With the Web and With Other Programs
Grauer and Barber Series Microsoft Access Chapter One
Presentation transcript:

Agenda Demo Schema review Code structure Issues

Schema review Relationships between tables Temporary tables Views The “tenMinuteJob”

Relationships

Drug Relationships

Why Temporary Tables? To eliminate bad data When aggregations or computations are required To do snapshots in time To simplify processing To “divide and conquer”

encValid = encounter + visitDate create proc sp_genEncValid as delete encValid insert into encValid select encounter_id, siteCode, patientID, visitDateDd, visitDateMm,visitDateYy, lastModified, encounterType, seqNum, clinicPatientID, encStatus, encComments, dbSite, convert(datetime, visitdateMm + '/' + visitdateDd + '/' + visitdateYy) as visitDate from encounter where encStatus < 255 and sitecode in (select sitecode from siteLookup) and sitecode != '00000' and isdate(visitdateMm + '/' + visitdateDd + '/' + visitdateYy) = 1 and patientid in (select patientid from patient where patStatus = 0)

cd4Table = all cd4 readings in DB create proc sp_genCD4table as delete cd4Table delete cd4Temp insert into dbo.cd4Temp select distinct siteCode, patientID,convert(smalldatetime,visitdatemm+'/'+visitdatedd+'/'+visitdateyy), lowestCd4Cnt from vitals where lowestCd4Cnt is not null and left(lowestcd4cnt,1) <> '-' and isnumeric(lowestcd4cnt) = 1 and isdate(visitdatemm+'/'+visitdatedd+'/'+visitdateyy) = 1 insert into dbo.cd4Temp select distinct siteCode, patientID,convert(smalldatetime,visitdatemm+'/'+visitdatedd+'/'+visitdateyy), Cd4 from medicalEligARVs where Cd4 is not null and left(cd4,1) <> '-' and isnumeric(cd4) = 1 and isdate(visitdatemm+'/'+visitdatedd+'/'+visitdateyy) = 1 insert into dbo.cd4Temp select distinct siteCode, patientID, convert(smalldatetime,visitdatemm+'/'+visitdatedd+'/'+visitdateyy), result from labs where result is not null and left(result,1) <> '-' and isnumeric(result) = 1 and isdate(visitdatemm+'/'+visitdatedd+'/'+visitdateyy) = 1 and labID in (18,102) insert into dbo.cd4Table select distinct siteCode, patientID, visitdate, cd4 from cd4Temp

Tempdb tables

Views create view v_prescriptions as select t.*, e.visitdate, e.encounterType, e.clinicPatientID, l.drugName from prescriptions t, drugLookup l, encValid e where t.siteCode = e.siteCode and t.patientID = e.patientID and t.visitdatedd = e.visitdatedd and t.visitdatemm = e.visitdatemm and t.visitdateyy = e.visitdateyy and t.seqNum = e.seqNum and t.drugID = l.drugID create view v_medsDispensed as select * from v_prescriptions where isdate(dispDateMm + '/01/' + dispDateYy) = 1

tenMinuteJob Step NameDB ProcedureResult genCD4tablesp_genCD4Tablecd4Table genPepfarsp_whoInitdrugTable, pepfarTable [regimens], cohortTable genBloodEvalsp_bloodEvalbloodeval1, bloodeval2 (for v_bloodEval) discontinuedDatessp_genDiscDatesdiscTable genActivePatientssp_genActivePatientsactivePatients [no longer used]

Code structure XML representation Tokens and Parameters Invoking report window RunReport Backend functions Jasper/Ireport

XML Representation

Tokens and Parameters For substitution into queries –$ For display –XML elements for branching in code –XML elements –XML attributes

Tokens and Parameters

Invoking Report Window Via menu –Report window launched via menu.php –$url = "runReport.php?rtype=". $cat. "&reportNumber=". $report["reportNumber”]… Via parameters page –Want tokens, but not parameters –$url = “kickPoint.php?rtype=…” Using full parameter functionality –$url = "kickPoint.php?rtype=". $cat. "&reportNumber=". $report["reportNumber"]. "&lang=". $lang. "&site=". $site. "&patientStatus=". $report["patientStatus"]. "&treatmentStatus=". $report["treatmentStatus"]. "&testType=". $report["testType"]. "&groupLevel=". $report["groupLevel"]. "&otherLevel=". $report["otherLevel"]. "&menu=". $report["menuSelection"];

runReport.php DEBUG_FLAG = true displays much of the processing and queries 1.Reads parameters 2.Special processing (Nastad, PEPFAR) 3.Generates temp tables 4.Generates graph 5.Formats and displays report in separate window 6.Optionally generates Excel or PDF (Jasper)

Example with debugging

Backend[Addon] Functions Used by runReport.php genSemiAnnual(…) applyCriteria(…) buildSemiQuery(…) BuildReportQuery(…) drawPie/drawBar generateQueryResult(…) writeOutput(…)

Example 2

HaitiHaiti Jasper Reports

Agenda Introduction Using Jasperreports Q&A

Introduction An Open source Java reporting tool

Using Jasperreports Design a report Integrate with TOMCAT Fill the report with data Export the report

Design a report Using iReports (layout, parameters for input, fields for output)

Design a report Generate a JRXML file. patientRpt.jrxml <jasperReport name="patientRpt" …. … …

Design a report You can edit the JRXML files directly.

Integrate with TOMCAT reports.xml Add/Edit entries in reports.xml so we can get the right request of TOMCAT. For example, Active/Inactive Patients Patients actifs/inactifs … patientRpt.jasper

Integrate with TOMCAT ReportViewerServlet serves to generate reports

Integrate with TOMCAT Get the parameter values from the POST/GET method. ReportViewerServlet.java public void doPost(HttpServletRequest req, HttpServletResponse resp) { … String lang = req.getParameter(PARAM_REPORT_LANG); String site = req.getParameter(PARAM_REPORT_SITE); …

Fill a report with data Get the database connection. For example, Connection conn = DBUtils.getConnection(JNDI_DATA_SOURCE_NAME);

Fill a report with data Put values to parameters as we mentioned in the previous phases. For example, parameters.put(“ siteName ”,”Hopital Grace Children”); Especially queries.

Fill a report with data Using the connection and queries, we can get the data to fill the report. JasperPrint jasperPrint = JasperFillManager.fillReport(report, parameters, conn);

Export a report Jasperreport offers several formats. CSV (JRCsvExporter) PDF (JRPdfExporter) XLS (JRXlsExporter) XML (JRXmlExporter) HTML (JRHtmlExporter)

Export a report Create an exporter, for example: JRHtmlExporter exporter = new JRHtmlExporter(); Set parameters for the exporter exporter.setParameter(JRExporterParameter.JASPER_PRINT, jasperPrint); exporter.setParameter(JRExporterParameter.OUTPUT_WRITER, response.getWriter()); Export the report exporter.exportReport();

Export a report

Issues Visit (and other) dates Current status Correctness Formatting Consolidation