© 2011 LabKey Software LabKey Server Release 11.3 Atlas Developers Meeting 11/16/2011 Adam Rauch

Slides:



Advertisements
Similar presentations
Connecting to Databases. relational databases tables and relations accessed using SQL database -specific functionality –transaction processing commit.
Advertisements

TDPS Wireless v Enhancements E1 - Multi load E2 - Driver time scheduler.
15 Chapter 15 Web Database Development Database Systems: Design, Implementation, and Management, Fifth Edition, Rob and Coronel.
Fast Track to ColdFusion 9. Getting Started with ColdFusion Understanding Dynamic Web Pages ColdFusion Benchmark Introducing the ColdFusion Language Introducing.
Cognos 8.4 Upgrade Business Intelligence. Why Cognos 8.4 Increased Performance on Database due to optimized SQL and more filters passed in native SQL.
Multiple Tiers in Action
DT228/3 Web Development Databases. Database Almost all web application on the net access a database e.g. shopping sites, message boards, search engines.
14 1 Chapter 14 Database Connectivity and Web Development Database Systems: Design, Implementation, and Management, Seventh Edition, Rob and Coronel.
Document management New: SharePoint and SharePoint Online support Excel Add-in New: Office 365 support via export, filtering APIs, dimension descriptions,
CVSQL 2 The Design. System Overview System Components CVSQL Server –Three network interfaces –Modular data source provider framework –Decoupled SQL parsing.
Object Oriented Databases by Adam Stevenson. Object Databases Became commercially popular in mid 1990’s Became commercially popular in mid 1990’s You.
Impact Analysis of Database Schema Changes Andy Maule, Wolfgang Emmerich and David S. Rosenblum London Software Systems Dept. of Computer Science, University.
Advance Computer Programming Java Database Connectivity (JDBC) – In order to connect a Java application to a database, you need to use a JDBC driver. –
A Guide to SQL, Eighth Edition Chapter Three Creating Tables.
Running Argos Reports from Banner Job Submission San Mateo County Community College District Ted Nguyen – Database Administrator Edgar Coronel – Associate.
M1G Introduction to Programming 2 4. Enhancing a class:Room.
DAVID M. KROENKE’S DATABASE PROCESSING, 10th Edition © 2006 Pearson Prentice Hall 7-1 David M. Kroenke’s Chapter Seven: SQL for Database Construction and.
© 2008 The McGraw-Hill Companies, Inc. All rights reserved. ACCESS 2007 M I C R O S O F T ® THE PROFESSIONAL APPROACH S E R I E S Lesson 4 – Creating New.
Collections Management Museums EMu 4.0 EMu (And where to from there!) Alex Fell Operations Manager KE Software (UK)
“ Web Application Maker”: the next 11 years Miguel Calejo Declarativa, Portugal 28-Apr-2011 Copyright Declarativa 1.
Sage SalesLogix What’s New in Sawgrass. Data Safeguarding.
1 In the good old days... Years ago… the WWW was made up of (mostly) static documents. –Each URL corresponded to a single file stored on some hard disk.
Tutorial 7 Creating Forms. Objectives Session 7.1 – Create an HTML form – Insert fields for text – Add labels for form elements – Create radio buttons.
Standalone Firefly Tools with an embedded Tomcat 7 No additional dependencies besides Java 1.8.
Putting it all together Dynamic Data Base Access Norman White Stern School of Business.
PowerBuilder Online Courses - by Prasad Bodepudi
What’s new in Kentico CMS 5.0 Michal Neuwirth Product Manager Kentico Software.
Running Kuali: A Technical Perspective Ailish Byrne (Indiana University) Jonathan Keller (University of California, Davis)
UNIT III - JDBC JDBC Overview – JDBC implementation – Connection class – Statements - Catching Database Results, handling database Queries. Networking–
Chapter 5 Introduction To Form Builder. Lesson A Objectives  Display Forms Builder forms in a Web browser  Use a data block form to view, insert, update,
Basics of JDBC Session 14.
A Guide to SQL, Eighth Edition Chapter Six Updating Data.
WaveMaker Visual AJAX Studio 4.0 Training Java Script Events.
Recent Enhancements to Quality Assurance and Case Management within the Emissions Modeling Framework Alison Eyth, R. Partheepan, Q. He Carolina Environmental.
SQL Query Analyzer. Graphical tool that allows you to:  Create queries and other SQL scripts and execute them against SQL Server databases. (Query window)
Text TCS INTERNAL Oracle PL/SQL – Introduction. TCS INTERNAL PL SQL Introduction PLSQL means Procedural Language extension of SQL. PLSQL is a database.
Introduction to ORM Hibernate Hibernate vs JDBC. May 12, 2011 INTRODUCTION TO ORM ORM is a programming technique for converting data between relational.
External Data Access Adam Rauch, 6/05/08 Team: Geoff Snyder, Kevin Beverly, Cory Nathe, Matthew Bellew, Mark Igra, George Snelling.
 What is DB Testing ?  Testing at the Data Access Layer  Need for Testing DB Objects  Common Problems that affect the Application  Should Testers.
Wes Preston DEV 202. Audience: Info Workers, Dev A deeper dive into use-cases where client-side rendering (CSR) and SharePoint’s JS Link property can.
CIS-NG CASREP Information System Next Generation Shawn Baugh Amy Ramirez Amy Lee Alex Sanin Sam Avanessians.
External Data Access 5/29/08. Current Problems No way to load, process & analyze live Atlas data via critical analysis & programming tools (SAS, R, Perl)
1 Chapter 6: Creating Oracle Data Block Forms. 2 Forms  Application with a graphical user interface that looks like a paper form  Used to insert, update,
© 2011 LabKey Software LabKey Server Release 11.2 Atlas Developers Meeting 7/21/2011 Adam Rauch
LabKey Server 11.1 What’s New for Developers Josh Eckels March 17, 2011.
Oracle 11g: SQL Chapter 5 Data Manipulation and Transaction Control.
UAB Requirements for 2016 Ivan Prieto Barreiro 18/04/2016 UAB Requirements for
Agenda for Today  DATABASE Definition What is DBMS? Types Of Database Most Popular Primary Database  SQL Definition What is SQL Server? Versions Of SQL.
Presented by: K.AMARNATH Ht.no:10841f0045 Guided by: T.Suneetha.
Software Testing Training Online. Software testing is ruling the software business in current scenario. It provides an objective, independent view of.
Top 10 Entity Framework Features Every Developer Should Know
Unit Testing.
Module Road Map Refactoring Why Refactoring? Examples
JDBC Database Management Database connectivity
Web Technologies IT230 Dr Mohamed Habib.
CARA 3.10 Major New Features
A very brief introduction
Ben Bimber, Ph.D. LabKey Software
ITEC 313 Database Programming
Building A Web-based University Archive
ISC440: Web Programming 2 Server-side Scripting PHP 3
DATABASE MANAGEMENT SYSTEM
MySQL Migration Toolkit
Data Management Innovations 2017 High level overview of DB
Introduction of Week 11 Return assignment 9-1 Collect assignment 10-1
Teneo Ganymede Simultaneous Release Graduation Review
Database Connectivity and Web Development
Getting Started With Solr
Publishing image services in ArcGIS
UFCEUS-20-2 Web Programming
Presentation transcript:

© 2011 LabKey Software LabKey Server Release 11.3 Atlas Developers Meeting 11/16/2011 Adam Rauch

© 2011 LabKey Software 11.2 Changes: Feedback or Usage?  New SQL Editor  ExtJS 4.0  Python API  Large external data sources  Oracle 2

© 2011 LabKey Software Significant Changes in 11.3 perms) removed  Annotation on controller action classes  Bitmask-based permissions were replaced by class- based system two years ago annotation only option now  Column caption generation for looked-up columns  Now, only the caption of the last column is shown  e.g., "Label" instead of “Participant Visit Cohort Label"  Affects export (Excel, TSV, and Rlabkey, but not R reports) so external tools may be impacted 3

© 2011 LabKey Software Client-Side JavaScript  JavaScript API:  LABKEY.Utils.getDateAltFormats()  Utils.js misc helpers: onError(), isEmptyObj(), roundNumber(), padString(), caseInsensitiveEquals()  Bug fixes, documentation  Ext JS  Upgraded to Ext use Ext 4 for all new dev  Added Ext4 Store, FormPanel, GridPanel, et al  We’re migrating all our code to Ext 4; Ext 3 is now deprecated and will be removed eventually 4

© 2011 LabKey Software Other Scripting Languages  No real changes to Java, R, SAS, or Perl libraries  A few Perl API bug fixes  Reminder: new Python client library  Assay transform scripts  Scripts can run before inferring types: trim white space, replace “-” or “NA” with null, etc. 5

© 2011 LabKey Software Other Potential Areas of Interest  Support for building on JDK 7 & running on JRE 7  Nested security groups  Data browser, thumbnails, etc.  Header locking  Support for ancillary studies  Quick participant group create from any dataset  Time chart: visit map, means, multiple groups 6

© 2011 LabKey Software Table Layer  Table.java provides access to database tables  Hides grungy details of JDBC  Provides ORM – mapping Java objects to/from tables  Supports select, execute, insert, update, delete  Table “interface” is straightforward but inflexible  100+ static methods that munge query source, modifiers, and output formats into one parameter list  Results in telescoping parameters, method explosion  Every method throws checked SQLException, which callers can rarely handle  Also, static methods don’t share implementation well, resulting in duplication and inconsistencies 7

© 2011 LabKey Software New Approach: JdbcCommand  Allows much more flexible composition  Can specify Exception framework per call  Spring runtime DataAccessExceptions (default)  RuntimeSQLException  Checked SQLException (for backward compatibility)  Plan  JdbcCommand (Selector & Executor) available in 11.3  Table layer being rewritten as calls to JdbcCommands  Will extend Selector & add Update, Insert, Delete (12.1?)  Will deprecate Table layer and migrate our code away 8

© 2011 LabKey Software Questions? 9

© 2011 LabKey Software ExtJS 4.0 Example LABKEY.requiresExt4Sandbox(); // Ext4 runs in sandbox mode for now Ext4.onReady(function(){ var store = Ext4.create('Ext.data.JsonStore', { fields: ['name', 'data1', 'data2', 'data3', 'data4'], data: [ {'name':'metric one', 'data1':10, 'data2':12, 'data3':14, 'data4':8}, {'name':'metric two', 'data1':7, 'data2':8, 'data3':16, 'data4':10}, {'name':'metric three', 'data1':5, 'data2':2, 'data3':14, 'data4':12}, {'name':'metric four', 'data1':2, 'data2':14, 'data3':6, 'data4':1}, {'name':'metric five', 'data1':27, 'data2':38, 'data3':36, 'data4':13} ] }); Ext4.create('Ext.chart.Chart', { renderTo: 'chartDiv', width: 500, height: 300, store: store, [... Other config params... ] }); 10