– JukeBox – transparency, flexibility, speed and comfort!

Slides:



Advertisements
Similar presentations
The Ribbon Standard to all Office 2007 applications Organized by feature and functionality Navigation Pane Access to all objects in the current database.
Advertisements

By, Nasheet Ahmed Siddiqui.  Agenda Workflow overview Workflow development Query for a Workflow Workflow category Workflow type Workflow elements Enable.
Run with PC speaker on for narrative Welcome to the Narrated Guided Tour of Cizer.Net Reporting for Microsoft SQL Server Reporting Services
ERWin Template Overview By: Dave Wentzel. Agenda u Overview of Templates/Macros u Template editor u Available templates u Independent column browser u.
1 Chapter 12 Working With Access 2000 on the Internet.
Performed by:Gidi Getter Svetlana Klinovsky Supervised by:Viktor Kulikov 08/03/2009.
Information systems and databases Database information systems Read the textbook: Chapter 2: Information systems and databases FOR MORE INFO...
Page 1 ISMT E-120 Introduction to Microsoft Access & Relational Databases The Influence of Software and Hardware Technologies on Business Productivity.
Page 1 ISMT E-120 Desktop Applications for Managers Introduction to Microsoft Access.
Web Development Challenges and How They are Solved in ps:eScript Matt Verrinder Progress Software UK Internet & Integration Technologies.
Introduction to the Enterprise Library. Sounds familiar? Writing a component to encapsulate data access Building a component that allows you to log errors.
Module 3: Table Selection
Server-side Scripting Powering the webs favourite services.
Overview of Previous Lesson(s) Over View  ASP.NET Pages  Modular in nature and divided into the core sections  Page directives  Code Section  Page.
RDB/1 An introduction to RDBMS Objectives –To learn about the history and future direction of the SQL standard –To get an overall appreciation of a modern.
Copyright © 2007, Oracle. All rights reserved. Managing Concurrent Requests.
LiveCycle Data Services Introduction Part 2. Part 2? This is the second in our series on LiveCycle Data Services. If you missed our first presentation,
DEV-5: Introduction to WebSpeed ® Stephen Ferguson Sr. Training Program Manager.
Module 11: Programming Across Multiple Servers. Overview Introducing Distributed Queries Setting Up a Linked Server Environment Working with Linked Servers.
Putting it all together Dynamic Data Base Access Norman White Stern School of Business.
Microsoft ® Business Solutions–Navision ® 4.0 Development II - C/SIDE Solution Development Day 2.
New & Improved Events List Relationships and Joins Large List Support Field & List Item Validation.
DB Implementation: MS Access Forms. MS Access Forms  Purpose Data entry, editing, & viewing data in tables Forms are user-friendlier to end-users than.
Data Driven Designs 99% of enterprise applications operate on database data or at least interface databases. Most common DBMS are Microsoft SQL Server,
ARCH-11: Building your Presentation with Classes John Sadd Fellow and OpenEdge Evangelist Sasha Kraljevic Principal TSE.
Microsoft Access 2013 ®® Tutorial 12 Managing and Securing a Database.
3 Copyright © 2004, Oracle. All rights reserved. Working in the Forms Developer Environment.
South Dakota Library Network MetaLib Management Basics Categories Administration South Dakota Library Network 1200 University, Unit 9672 Spearfish, SD.
Database Management Supplement 1. 2 I. The Hierarchy of Data Database File (Entity, Table) Record (info for a specific entity, Row) Field (Attribute,
Implementation of EIDE Gateway using ACES Callouts WECC DEWG EIDE Training.
Introduction to KE EMu
Gold – Crystal Reports Introductory Course Cortex User Group Meeting New Orleans – 2011.
A New Object Model for WebSpeed and HTTP
© FPT SOFTWARE – TRAINING MATERIAL – Internal use 04e-BM/NS/HDCV/FSOFT v2/3 JSP Application Models.
EbiTrack Architecture Version 1.0 September 24, 2012.
8 Chapter Eight Server-side Scripts. 8 Chapter Objectives Create dynamic Web pages that retrieve and display database data using Active Server Pages Process.
DEV-5: Using ProDataSets™ in OpenEdge ® 10 Cheryl LaBarge Product Readiness.
MOVE-15: Leveraging Business Entities, Data Access Objects and ProDataSets with a Progress Dynamics® or ADM2 GUI Peter Judge Principal Software Engineer.
Aggregator  Performs aggregate calculations  Components of the Aggregator Transformation Aggregate expression Group by port Sorted Input option Aggregate.
Using Workflow With Dataforms Tim Borntreger, Director of Client Services.
Module 5: Managing Content. Overview Publishing Content Executing Reports Creating Cached Instances Creating Snapshots and Report History Creating Subscriptions.
- The PUG Challenge - Brynjar Hasle, Chemistry as Geir O. Olsen, THInc Consulting as.
Understanding Core Database Concepts Lesson 1. Objectives.
Running a Forms Developer Application
Working with Data Blocks and Frames
IST 220 – Intro to Databases
Working in the Forms Developer Environment
z/Ware 2.0 Technical Overview
Introduction to Triggers
FIZZ Database General presentation.
DB Implementation: MS Access Forms
Multi-host Internet Access Portal (MIAP) Enhancement Guide
Principles of report writing
COMP-10: Managing OpenEdge® Development with the Roundtable® TSMS
MANAGING DATA RESOURCES
- The PUG Challenge - Brynjar Hasle, Chemistry as
JukeBox – transparency, flexibility, speed and comfort!
ARCH-1: Application Architecture made Simple
Introduction to Oracle Application Express
DB Implementation: MS Access Forms
– the JukeBox toolkit – transparency, flexibility, speed and comfort!
Automating and Validating Edits
Introduction of Week 11 Return assignment 9-1 Collect assignment 10-1
Implementation of EIDE Gateway using ACES Callouts
Welcome USAS – R March 20th, 2019 Valley View 4/7/2019.
Extend Excel with Smartlist Designer
Understanding Core Database Concepts
ARCH-14: Power Your Organisation with OpenEdge
Presentation transcript:

– JukeBox – transparency, flexibility, speed and comfort! Brynjar Hasle, Chemistry as www.chemistry.no

Operational requirements: Slick and consistent User Interface Exceptional development speed (low, that is) Automation of trivial tasks Transparency client-server / appserver Minimal setup Very small client footprint

Tools: Dynamic ABL (9.1d+) Static ABL (Stateless AppServer (9.1d+)) (Aia client on webserver) OpenEdge 8.x - 9.1/10.1b RDBMS MS tabstrip and dynTreeView.w (alt. pure4GLtv on PSDN) ResizeLib.p (free download from www.chemistry.no) AbHack! (PSDN)

Basic Elements ObjLib.p User...w JBox...w UiLib.p AsLib.p Client: User...w JBox...w UiLib.p AsLib.p Server: Get data: -getTempTableJoin.p -getFieldList.p getFieldValues.p (FIND) -getTempTable (input <fill>.p) -checkCurrentChanged.p .. + custom query procs Put data: -serverTrans.p -runProc.p -processQuery.p .. + custom BL procs

Server, get data (getTempTableJoin.p) Input: List of buffers and fields, query criteria ++ Hooks for calculated fields (with runtime parameters) Support for persistent procedures for calc.fields (performance!!) Filter on calculated fields Filter on joined buffers (subselect and not exists) Multiple joins to same table Sorting on calculated fields Query count, count distinct Accumulation of totals and subtotals Handling of duplicate field names Validation of query against schema security (table and field level) Returns temp-table handle (and hence the data pluss add. context info – security restrictions, etc)

Server, store data (servertrans.p): Input: - Trans header and trans values Temp-table structure Dynamic FK validation Hooks for custom create, delete, validation / updates (pre & post) Assign defaults (created by / when..) Returns completed temp-table (option) Trans.header: Buffer Operation Field list Opt.val.proc Trans.values: - Field value list

Client from OERA perspective ObjLib.p ”Component Model” User...w ”View” ttObject JBox...w ”View” UiLib.p ”Presenter” ttEvent ttObjectLink ttAttribute AsLib.p ”Service Adapter” ”Common infrastructure”

Client in practice.. Browse example User...w Executes NewBrowse in ObjLib (input coordinates, tables, fields and query definition). NewBrowse Passes tables and fields to server to get the fields and their properties from the database Creates the browse object and registers the object Creates the events (triggers) that JukeBox will handle in event procedures Optionally also calles FillBrowse method to get data Now wait for the user to do something.. User selects row: ”Value-changed” trigger fires and executes the common event handler procedure Event handler picks up the event and checks if the corresponding event procedure (DisplayRecord) is present in User...w. There is no override so we run the standard method for DisplayRecord in UiLib DisplayRecord: Check for uncommitted changes in previous row Refresh query for child objects (linked browsers and queries) Check for linked fieldMap object (viewer) and display the fields Check for linked toolbar object and set its state according to the record (availability) User...w ObjLib.p ObjLib.p AsLib.p User...w ObjLib.p UiLib.p UiLib.p ObjLib.p AsLib.p

AsLib.p ”Service Adapter” Service (server) interface AsLib.p ”Service Adapter” runproc.p ”Service interface” BusinessWorkflow ABL procedure (my.p) Business Entity, Data Access Object, Data Source Object Runproc interface: Used for most custom business tasks Validates session id Get session context Control user access (coming) Unwrap any temp-table parameter

More on query service.. Paging implemented by keeping transfer count Server query always starts from FIRST/LAST Sub-selects done by dynamically adding TT to query: Sub-select processes query “backwards” Index (EACH), timeout and record count check! All records (in query) are processed when Sorting on calculated value Querying distinct values Grand totals involve calculated fields All records are traversed when Doing record count or grand totals Database is checked for read/write access No-access fields are put in exception list Access-rights are returned to enable UI settings Ability to automatically change buffer sequence (!) Client feature

Demo: Sport2000 order query SalesRep Customer Order OrderLine Item FOR EACH Order NO-LOCK ,FIRST Customer OF Order NO-LOCK ,FIRST SalesRep OF Order NO-LOCK ,EACH OrderLine OF Order NO-LOCK ,FIRST Item OF OrderLine NO-LOCK

Other Multi language support Multi client (company) support Client cache (user settings and translations, other coming) Deploy mechanism (AppFarm) Document (blob) management (separate lib – 10.0B02+) Coexists well with ADM1/2 and Dynamics (Interface to Dynamics localization and personalization mgrs)