SlideShare a Scribd company logo
1 of 50
Download to read offline
HOW TO GET STARTED WITH ORACLE APEX?
ORACLE APEX PRIMER
Przemysław Staniszewski
pstaniszewski@pretius.com
https://twitter.com/pstaniszewski
AGENDA
2
What is Oracle Apex?
Working with APEX
Sample use-cases
Architecture
Integration
Oracle Forms migration
WHAT IS ORACLE APEX?
3
What is Oracle APEX?
4
APplication EXpress
Rapid Application Development tool
Uses Oracle DB and PL/SQL
Focused on the web - from development to usage
Included in the Oracle DB license (even the free XE version so you can
try it out or even use for internal projects without extra cost)
Available on premise and in the cloud
Check it out at http://apex.oracle.com
And now, a short story …
Design your database…
5
Implement your business logic…
6
Implement GUI (Graphical User Interface) …
7
Implement GUI (Graphical User Interface) …
8
APEX application architecture
9
Application layer
Web interface
Business logic
Data
Solution
APEX
PL/SQL (API)
Tables / Views
APEX application architecture
10
Solution
APEX
PL/SQL (API)
Tabele / Widoki
Calls
Fetches
SQL, PL/SQL
HTML, Javascript
Why APEX?
11
Fast and simple web app development
Ease of administration and configuration
Flagship Oracle product
Everything is in the database
Integrates well with other technologies (web
services, db links, …)
WORKING WITH APEX
12
How to become an APEX developer?
13
Working environment:
Workstation with a web browser (just it!)
Basic skills required:
SQL
PL/SQL
Extra skills that will help along the way:
HTML, JavaScript, CSS
APEX API
Auxiliary knowledge like Web Services, SOAP, SPA
What do we get „out of the box”?
14
Reports
Forms
Charts
Calendar
Templates
Validations
Dynamic Actions /
AJAX
Computations
Responsive
Web Design
Web Services
Email Services
Translation
Services
Plug-Ins
Authentication
Authorization
Session State
Management
Logging &
Monitoring
Structure
15
Applications
Global elements
Page elements
Pages
External elements
Types of applications
16
Database apps
Built from scratch
Imported (scripts, Oracle Store, Cloud)
Migrated from MS Excel/MS Access/Oracle Forms
Websheet
Allows creating an app even by people who don’t know „how to sql”
WIKI-type app
Region types
17
Report
Classic
Interactive
Web Service-backed
Forms
Charts
Others (e.g. basic HTML – like in any Content Mgmt. System)
Interactive reports
18
Simple modification by end-users (calculated columns, aggregations,
highlighting, charts)
Simple sharing of new / modified reports by end-users
Chart types
19
HTML 5, JS* i Flash;
Various built-in chart types available:
Bar, pie, line, point, candlestick
Counters
Gantt’s chart
Maps
20
SAMPLE USE-CASES
21
Typical use-cases
22
Data-driven apps
Advanced apps which present and
modify data
Reporting apps
Present data in a user-friendly
manner
Access replacement
Migration of MS Access based apps
Excel sharing
Migration of Excel-driven management to a web
application
Oracle Forms
Evolution
Forms apps migration
ARCHITECTURE
23
Architecture
24
APEX is installed in the database
APEX internals are tables and PL/SQL
All application data and metadata are stored in the database
Architecture - communication
25
http://sc:8080/apex/f?p=4550:1:277450158227801
Architecture - engine
26
Generates and processes web pages
Each web query opens and closes a database connection
Database sessions are NOT dedicated per each web user
Manages the session
Provides
Authentication
Authorization
Forms and pages navigation and communication
Validation
Architecture – app structure
27
Single database instance
Single APEX instance
Multiple users
Multiple, independent apps
Architecture - users
28
APEX administrator
Workspace administrator
Developer
End users
 Internal (APEX)
External (e.g. LDAP)
Security
29
APEX is just as secure as the rest of the environment: database and
operating system
APEX addresses common web attacks
SQL injection
XSS (cross-site scripting)
APEX has built-in session protection
APEX is able to use Oracle Fine Grained Access Control (VPD)
Security
30
Authentication
LDAP (e.g. MS Active Directory)
Oracle SSO
SSO
APEX (internal)
Custom Database structure
Authorization
Schemes using custom PL/SQL
LDAP
Can be bound to single web element (button, region, navigation, form,
etc.)
Performance and scalability
31
UK’s Ministry of Education – teacher management app
2.000.000 page views / month
180.000 users
30.000 new registrations / month
2.000 moderators and administrators
24 months of uptime
0 APEX-related errors
APEX application maintenance
32
Test Production
DEV
UAT PROD
SVN, GIT
Users
Objects
Files
Application
INTEGRATION
33
Datasource integration
34
Databases
Web service
Files
Other technologies integration
35
JavaScript (jQuery, modernizer, AngularJS, etc.)
PL/SQL (PL_FPDF, PL_EXCEL)
Web Service
Java (e.g. Jasper, Coocon)
HTML 5
CSS (e.g. Bootstrap)
Flash
BI Publisher
JavaScript integration
36
Frameworks: jQuery, jQuery UI, jQuery Mobile
Modernizer, AngularJS
Plug-ins
Excel like reports
Charting: HighCharts
JS + CSS (Bootstrap) =
Responsive Web Design
Web Service integration
37
Accessing remote WS:
Reports, variables values, forms
SOAP
RESTful
Publishing
Reports created in APEX available through REST
Ease of creating using wizards and PL/SQL API
ORACLE FORMS MIGRATION
38
Why migrate Forms to Apex?
39
Web-enabling of database driven applications
Easy distribution (web based app, no need to install anything besides web browser)
Easy integration with other company web applications
Adding new channel of access for end-users – mobile
Finer access control
Modern web UI
Lowering your TCO (you don’t need Oracle Application Server anymore)
Easy Team Development
Built in tools for issue tracking, auditing and lots of other utilities that are available out
of the box
Migration advantages
40
Native HTML support
JavaScript and other standard web technologies
Easy UI customization
Better decomposition of common elements which can be used
across multiple applications
Easily extensible environment through plugins
Migration – what NOT to expect?
41
It is more of a conversion than migration!
We don’t emulate Oracle Forms, we convert them to a web app:
UI of forms and reports will look & feel different (better )
Specific functions will work differently
Navigation
App structure
Communication with the end-user, keyboard shortcuts, etc.
Migration / conversion will not be magical and automatic
It’s not simple (but none of the things worthwhile are)
Migration – what to expect?
42
Regular company project – takes time & resources
Building web application which uses as much as possible of the „old”
business logic
APEX vs Forms/Reports (v. 10, v. 11)
43
Area Forms APEX
Architecture Metadata stored in „.fmx”
files
Metadata stored in db
tables
Programming language PL/SQL on both client and
server
PL/SQL on serverside
Database connection Fixed Dynamic
UI programming Java (client, browser) HTML, JS, CSS (browser)
Application modules Windows/Canvas/Block Pages/Regions
Client control Triggers JavaScript
Charts BI Beans HTML, JavaScript, Flash
How to carry out a conversion project?
44
Oracle APEX Forms Converter
45
Tool to manage the conversion process
Time & task management
Forms component overview
Automatic conversion of basic components
Pages, forms, reports (single, master-detail, editable)
Automatic conversion will not happen for
The whole application
Forms UI
Forms-specific components (Trigger, Program Unit, libraries itp.)
APEX – conversion project creation
46
Creation of „Forms Migration” project in Migrations section
Upload of previously created XML and PLD files (those files will be created by Forms
Converter tool)
Sample schedule of conversion project
47
Process / Progress [%] 10 50 100
Application deployment
Validation, processes, etc.
Adding JS/AJAX
Additional forms
UI design
APEX app creation
Component selection
Forms sources conversion
Oracle Apex - summary
48
Rapid development of web-
enabled database driven apps
Advanced web charting
and reporting
Mobile ready UI designEasy team-work & cooperation
Full control of data and
visualisation
Oracle Apex - summary
49
Cons
– Oracle standard
– Debugging (should be better
in Apex 5.0)
Pros
+ Web 2.0 out of the box
+ Scalability
+ Security
+ Rapid development and
deployment
+ Low TCO
+ Technical & community
support
+ Oracle standard
THANK YOU!
Przemysław Staniszewski
pstaniszewski@pretius.com
https://twitter.com/pstaniszewski
50
Want to get more information on Oracle Apex?
Follow us on:
Twitter - https://twitter.com/PretiusSoftware
FB - https://www.facebook.com/pretius
LinkedIn - https://www.linkedin.com/company/pretius

More Related Content

What's hot

What's hot (20)

Elastic APM: Amping up your logs and metrics for the full picture
Elastic APM: Amping up your logs and metrics for the full pictureElastic APM: Amping up your logs and metrics for the full picture
Elastic APM: Amping up your logs and metrics for the full picture
 
Power up Your BI with Geospatial Data
Power up Your BI with Geospatial DataPower up Your BI with Geospatial Data
Power up Your BI with Geospatial Data
 
ORDS - Oracle REST Data Services
ORDS - Oracle REST Data ServicesORDS - Oracle REST Data Services
ORDS - Oracle REST Data Services
 
Azure Machine Learning and its real-world use cases
Azure Machine Learning and its real-world use casesAzure Machine Learning and its real-world use cases
Azure Machine Learning and its real-world use cases
 
Oracle Cloud Computing Strategy
Oracle Cloud Computing StrategyOracle Cloud Computing Strategy
Oracle Cloud Computing Strategy
 
Microsoft Azure Logic apps
Microsoft Azure Logic appsMicrosoft Azure Logic apps
Microsoft Azure Logic apps
 
React Workshop
React WorkshopReact Workshop
React Workshop
 
Introduction to MuleSoft Anytime Platform
Introduction to MuleSoft Anytime PlatformIntroduction to MuleSoft Anytime Platform
Introduction to MuleSoft Anytime Platform
 
APEX Themes and Templates
APEX Themes and TemplatesAPEX Themes and Templates
APEX Themes and Templates
 
Why Microsoft Dynamics 365 ?
Why Microsoft Dynamics  365 ?Why Microsoft Dynamics  365 ?
Why Microsoft Dynamics 365 ?
 
Angular vs React vs Vue | Javascript Frameworks Comparison | Which One You Sh...
Angular vs React vs Vue | Javascript Frameworks Comparison | Which One You Sh...Angular vs React vs Vue | Javascript Frameworks Comparison | Which One You Sh...
Angular vs React vs Vue | Javascript Frameworks Comparison | Which One You Sh...
 
UiPath Automation Cloud - Best Practises session1.pptx
UiPath Automation Cloud - Best Practises session1.pptxUiPath Automation Cloud - Best Practises session1.pptx
UiPath Automation Cloud - Best Practises session1.pptx
 
Understanding the Salesforce Architecture: How We Do the Magic We Do
Understanding the Salesforce Architecture: How We Do the Magic We DoUnderstanding the Salesforce Architecture: How We Do the Magic We Do
Understanding the Salesforce Architecture: How We Do the Magic We Do
 
Introducing MlFlow: An Open Source Platform for the Machine Learning Lifecycl...
Introducing MlFlow: An Open Source Platform for the Machine Learning Lifecycl...Introducing MlFlow: An Open Source Platform for the Machine Learning Lifecycl...
Introducing MlFlow: An Open Source Platform for the Machine Learning Lifecycl...
 
Migrating on premises workload to azure sql database
Migrating on premises workload to azure sql databaseMigrating on premises workload to azure sql database
Migrating on premises workload to azure sql database
 
Intro on Oracle Application express - APEX
Intro on Oracle Application express - APEXIntro on Oracle Application express - APEX
Intro on Oracle Application express - APEX
 
Front-End Frameworks: a quick overview
Front-End Frameworks: a quick overviewFront-End Frameworks: a quick overview
Front-End Frameworks: a quick overview
 
Tackling Salesforce Technical Debt
Tackling Salesforce Technical DebtTackling Salesforce Technical Debt
Tackling Salesforce Technical Debt
 
Decluttering your Salesfroce org
Decluttering your Salesfroce orgDecluttering your Salesfroce org
Decluttering your Salesfroce org
 
Data Management and Migration in Salesforce
Data Management and Migration in SalesforceData Management and Migration in Salesforce
Data Management and Migration in Salesforce
 

Viewers also liked

Oracle Apex - 3 real-life case studies (Pretius presentation for WDI2015)
Oracle Apex - 3 real-life case studies (Pretius presentation for WDI2015)Oracle Apex - 3 real-life case studies (Pretius presentation for WDI2015)
Oracle Apex - 3 real-life case studies (Pretius presentation for WDI2015)
Pretius
 
Oracle application express ppt
Oracle application express pptOracle application express ppt
Oracle application express ppt
Abhinaw Kumar
 
Extending_EBS_12_1_3_with_APEX_5_0_COLLABORATE16
Extending_EBS_12_1_3_with_APEX_5_0_COLLABORATE16Extending_EBS_12_1_3_with_APEX_5_0_COLLABORATE16
Extending_EBS_12_1_3_with_APEX_5_0_COLLABORATE16
Alfredo Abate
 
Apex behind the scenes
Apex behind the scenesApex behind the scenes
Apex behind the scenes
Enkitec
 
Oracle Apex Technical Introduction
Oracle Apex   Technical IntroductionOracle Apex   Technical Introduction
Oracle Apex Technical Introduction
crokitta
 

Viewers also liked (20)

Oracle Apex - 3 real-life case studies (Pretius presentation for WDI2015)
Oracle Apex - 3 real-life case studies (Pretius presentation for WDI2015)Oracle Apex - 3 real-life case studies (Pretius presentation for WDI2015)
Oracle Apex - 3 real-life case studies (Pretius presentation for WDI2015)
 
Developing Customer Portal with Oracle APEX - A Case Study
Developing Customer Portal with Oracle APEX - A Case StudyDeveloping Customer Portal with Oracle APEX - A Case Study
Developing Customer Portal with Oracle APEX - A Case Study
 
Oracle application express ppt
Oracle application express pptOracle application express ppt
Oracle application express ppt
 
Oracle APEX or ADF? From Requirements to Tool Choice
Oracle APEX or ADF? From Requirements to Tool ChoiceOracle APEX or ADF? From Requirements to Tool Choice
Oracle APEX or ADF? From Requirements to Tool Choice
 
Oracle APEX URLs Untangled & SEOptimized
Oracle APEX URLs Untangled & SEOptimizedOracle APEX URLs Untangled & SEOptimized
Oracle APEX URLs Untangled & SEOptimized
 
Get the Look and Feel You Want in Oracle APEX
Get the Look and Feel You Want in Oracle APEXGet the Look and Feel You Want in Oracle APEX
Get the Look and Feel You Want in Oracle APEX
 
Oracle Application Express
Oracle Application ExpressOracle Application Express
Oracle Application Express
 
APEX 5 Demo and Best Practices
APEX 5 Demo and Best PracticesAPEX 5 Demo and Best Practices
APEX 5 Demo and Best Practices
 
Building a Flexible UI with Oracle ApEx
Building a Flexible UI with Oracle ApExBuilding a Flexible UI with Oracle ApEx
Building a Flexible UI with Oracle ApEx
 
5 Cool Things you can do with HTML5 and APEX
5 Cool Things you can do with HTML5 and APEX5 Cool Things you can do with HTML5 and APEX
5 Cool Things you can do with HTML5 and APEX
 
Extending_EBS_12_1_3_with_APEX_5_0_COLLABORATE16
Extending_EBS_12_1_3_with_APEX_5_0_COLLABORATE16Extending_EBS_12_1_3_with_APEX_5_0_COLLABORATE16
Extending_EBS_12_1_3_with_APEX_5_0_COLLABORATE16
 
Creating Single Page Applications with Oracle Apex
Creating Single Page Applications with Oracle ApexCreating Single Page Applications with Oracle Apex
Creating Single Page Applications with Oracle Apex
 
Creating a Business Oriented UI in APEX
Creating a Business Oriented UI in APEXCreating a Business Oriented UI in APEX
Creating a Business Oriented UI in APEX
 
Oracle Forms to APEX conversion tool
Oracle Forms to APEX conversion toolOracle Forms to APEX conversion tool
Oracle Forms to APEX conversion tool
 
Zero to Sixty with Oracle ApEx
Zero to Sixty with Oracle ApExZero to Sixty with Oracle ApEx
Zero to Sixty with Oracle ApEx
 
Apex behind the scenes
Apex behind the scenesApex behind the scenes
Apex behind the scenes
 
Oracle SOA and BPM
Oracle SOA and BPMOracle SOA and BPM
Oracle SOA and BPM
 
Moving to the APEX Listener
Moving to the APEX ListenerMoving to the APEX Listener
Moving to the APEX Listener
 
Oracle Apex Overview
Oracle Apex OverviewOracle Apex Overview
Oracle Apex Overview
 
Oracle Apex Technical Introduction
Oracle Apex   Technical IntroductionOracle Apex   Technical Introduction
Oracle Apex Technical Introduction
 

Similar to Pretius Oracle Apex Primer

APEX 4.2 New Features
APEX 4.2 New FeaturesAPEX 4.2 New Features
APEX 4.2 New Features
Enkitec
 
Creating Dynamic Web Application Using ASP.Net 3 5_MVP Alezandra Buencamino N...
Creating Dynamic Web Application Using ASP.Net 3 5_MVP Alezandra Buencamino N...Creating Dynamic Web Application Using ASP.Net 3 5_MVP Alezandra Buencamino N...
Creating Dynamic Web Application Using ASP.Net 3 5_MVP Alezandra Buencamino N...
Quek Lilian
 
Loan Origination Reference Architecture Deep Dive
Loan Origination Reference Architecture Deep DiveLoan Origination Reference Architecture Deep Dive
Loan Origination Reference Architecture Deep Dive
Mike Walker
 
WAD - WaveMaker tutorial
WAD - WaveMaker tutorial WAD - WaveMaker tutorial
WAD - WaveMaker tutorial
marina2207
 
WaveMaker tutorial with Flash
WaveMaker tutorial with FlashWaveMaker tutorial with Flash
WaveMaker tutorial with Flash
marina2207
 

Similar to Pretius Oracle Apex Primer (20)

APEX 4.2 New Features
APEX 4.2 New FeaturesAPEX 4.2 New Features
APEX 4.2 New Features
 
Web development concepts using microsoft technologies
Web development concepts using microsoft technologiesWeb development concepts using microsoft technologies
Web development concepts using microsoft technologies
 
Report From Oracle Open World 2008 AMIS 2 October2008
Report From Oracle Open World 2008 AMIS 2 October2008Report From Oracle Open World 2008 AMIS 2 October2008
Report From Oracle Open World 2008 AMIS 2 October2008
 
Ziad Resume_New
Ziad Resume_NewZiad Resume_New
Ziad Resume_New
 
Productive Development with APEX
Productive Development with APEXProductive Development with APEX
Productive Development with APEX
 
AMIS Oracle OpenWorld en Code One Review 2018 - Pillar 2: Custom Application ...
AMIS Oracle OpenWorld en Code One Review 2018 - Pillar 2: Custom Application ...AMIS Oracle OpenWorld en Code One Review 2018 - Pillar 2: Custom Application ...
AMIS Oracle OpenWorld en Code One Review 2018 - Pillar 2: Custom Application ...
 
AMIS Oracle OpenWorld & CodeOne Review - Pillar 2 - Custom Application Develo...
AMIS Oracle OpenWorld & CodeOne Review - Pillar 2 - Custom Application Develo...AMIS Oracle OpenWorld & CodeOne Review - Pillar 2 - Custom Application Develo...
AMIS Oracle OpenWorld & CodeOne Review - Pillar 2 - Custom Application Develo...
 
Creating Dynamic Web Application Using ASP.Net 3 5_MVP Alezandra Buencamino N...
Creating Dynamic Web Application Using ASP.Net 3 5_MVP Alezandra Buencamino N...Creating Dynamic Web Application Using ASP.Net 3 5_MVP Alezandra Buencamino N...
Creating Dynamic Web Application Using ASP.Net 3 5_MVP Alezandra Buencamino N...
 
Loan Origination Reference Architecture Deep Dive
Loan Origination Reference Architecture Deep DiveLoan Origination Reference Architecture Deep Dive
Loan Origination Reference Architecture Deep Dive
 
Intro to Application Express
Intro to Application ExpressIntro to Application Express
Intro to Application Express
 
Architecting RIAs
Architecting RIAsArchitecting RIAs
Architecting RIAs
 
WAD - WaveMaker tutorial
WAD - WaveMaker tutorial WAD - WaveMaker tutorial
WAD - WaveMaker tutorial
 
WaveMaker tutorial with Flash
WaveMaker tutorial with FlashWaveMaker tutorial with Flash
WaveMaker tutorial with Flash
 
WaveMaker Presentation
WaveMaker PresentationWaveMaker Presentation
WaveMaker Presentation
 
Advanced Reporting And Charting With Oracle Application Express 4.0
Advanced Reporting And Charting With Oracle Application Express 4.0Advanced Reporting And Charting With Oracle Application Express 4.0
Advanced Reporting And Charting With Oracle Application Express 4.0
 
Christopher Noyes Resume
Christopher Noyes ResumeChristopher Noyes Resume
Christopher Noyes Resume
 
Design and functional_specification
Design and functional_specificationDesign and functional_specification
Design and functional_specification
 
apex101-326750.ppt
apex101-326750.pptapex101-326750.ppt
apex101-326750.ppt
 
Oracle application express
Oracle application expressOracle application express
Oracle application express
 
Census Bureau PBOCS
Census Bureau PBOCSCensus Bureau PBOCS
Census Bureau PBOCS
 

Recently uploaded

+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 

Recently uploaded (20)

Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 

Pretius Oracle Apex Primer

  • 1. HOW TO GET STARTED WITH ORACLE APEX? ORACLE APEX PRIMER Przemysław Staniszewski pstaniszewski@pretius.com https://twitter.com/pstaniszewski
  • 2. AGENDA 2 What is Oracle Apex? Working with APEX Sample use-cases Architecture Integration Oracle Forms migration
  • 3. WHAT IS ORACLE APEX? 3
  • 4. What is Oracle APEX? 4 APplication EXpress Rapid Application Development tool Uses Oracle DB and PL/SQL Focused on the web - from development to usage Included in the Oracle DB license (even the free XE version so you can try it out or even use for internal projects without extra cost) Available on premise and in the cloud Check it out at http://apex.oracle.com And now, a short story …
  • 7. Implement GUI (Graphical User Interface) … 7
  • 8. Implement GUI (Graphical User Interface) … 8
  • 9. APEX application architecture 9 Application layer Web interface Business logic Data Solution APEX PL/SQL (API) Tables / Views
  • 10. APEX application architecture 10 Solution APEX PL/SQL (API) Tabele / Widoki Calls Fetches SQL, PL/SQL HTML, Javascript
  • 11. Why APEX? 11 Fast and simple web app development Ease of administration and configuration Flagship Oracle product Everything is in the database Integrates well with other technologies (web services, db links, …)
  • 13. How to become an APEX developer? 13 Working environment: Workstation with a web browser (just it!) Basic skills required: SQL PL/SQL Extra skills that will help along the way: HTML, JavaScript, CSS APEX API Auxiliary knowledge like Web Services, SOAP, SPA
  • 14. What do we get „out of the box”? 14 Reports Forms Charts Calendar Templates Validations Dynamic Actions / AJAX Computations Responsive Web Design Web Services Email Services Translation Services Plug-Ins Authentication Authorization Session State Management Logging & Monitoring
  • 16. Types of applications 16 Database apps Built from scratch Imported (scripts, Oracle Store, Cloud) Migrated from MS Excel/MS Access/Oracle Forms Websheet Allows creating an app even by people who don’t know „how to sql” WIKI-type app
  • 18. Interactive reports 18 Simple modification by end-users (calculated columns, aggregations, highlighting, charts) Simple sharing of new / modified reports by end-users
  • 19. Chart types 19 HTML 5, JS* i Flash; Various built-in chart types available: Bar, pie, line, point, candlestick Counters Gantt’s chart Maps
  • 20. 20
  • 22. Typical use-cases 22 Data-driven apps Advanced apps which present and modify data Reporting apps Present data in a user-friendly manner Access replacement Migration of MS Access based apps Excel sharing Migration of Excel-driven management to a web application Oracle Forms Evolution Forms apps migration
  • 24. Architecture 24 APEX is installed in the database APEX internals are tables and PL/SQL All application data and metadata are stored in the database
  • 26. Architecture - engine 26 Generates and processes web pages Each web query opens and closes a database connection Database sessions are NOT dedicated per each web user Manages the session Provides Authentication Authorization Forms and pages navigation and communication Validation
  • 27. Architecture – app structure 27 Single database instance Single APEX instance Multiple users Multiple, independent apps
  • 28. Architecture - users 28 APEX administrator Workspace administrator Developer End users  Internal (APEX) External (e.g. LDAP)
  • 29. Security 29 APEX is just as secure as the rest of the environment: database and operating system APEX addresses common web attacks SQL injection XSS (cross-site scripting) APEX has built-in session protection APEX is able to use Oracle Fine Grained Access Control (VPD)
  • 30. Security 30 Authentication LDAP (e.g. MS Active Directory) Oracle SSO SSO APEX (internal) Custom Database structure Authorization Schemes using custom PL/SQL LDAP Can be bound to single web element (button, region, navigation, form, etc.)
  • 31. Performance and scalability 31 UK’s Ministry of Education – teacher management app 2.000.000 page views / month 180.000 users 30.000 new registrations / month 2.000 moderators and administrators 24 months of uptime 0 APEX-related errors
  • 32. APEX application maintenance 32 Test Production DEV UAT PROD SVN, GIT Users Objects Files Application
  • 35. Other technologies integration 35 JavaScript (jQuery, modernizer, AngularJS, etc.) PL/SQL (PL_FPDF, PL_EXCEL) Web Service Java (e.g. Jasper, Coocon) HTML 5 CSS (e.g. Bootstrap) Flash BI Publisher
  • 36. JavaScript integration 36 Frameworks: jQuery, jQuery UI, jQuery Mobile Modernizer, AngularJS Plug-ins Excel like reports Charting: HighCharts JS + CSS (Bootstrap) = Responsive Web Design
  • 37. Web Service integration 37 Accessing remote WS: Reports, variables values, forms SOAP RESTful Publishing Reports created in APEX available through REST Ease of creating using wizards and PL/SQL API
  • 39. Why migrate Forms to Apex? 39 Web-enabling of database driven applications Easy distribution (web based app, no need to install anything besides web browser) Easy integration with other company web applications Adding new channel of access for end-users – mobile Finer access control Modern web UI Lowering your TCO (you don’t need Oracle Application Server anymore) Easy Team Development Built in tools for issue tracking, auditing and lots of other utilities that are available out of the box
  • 40. Migration advantages 40 Native HTML support JavaScript and other standard web technologies Easy UI customization Better decomposition of common elements which can be used across multiple applications Easily extensible environment through plugins
  • 41. Migration – what NOT to expect? 41 It is more of a conversion than migration! We don’t emulate Oracle Forms, we convert them to a web app: UI of forms and reports will look & feel different (better ) Specific functions will work differently Navigation App structure Communication with the end-user, keyboard shortcuts, etc. Migration / conversion will not be magical and automatic It’s not simple (but none of the things worthwhile are)
  • 42. Migration – what to expect? 42 Regular company project – takes time & resources Building web application which uses as much as possible of the „old” business logic
  • 43. APEX vs Forms/Reports (v. 10, v. 11) 43 Area Forms APEX Architecture Metadata stored in „.fmx” files Metadata stored in db tables Programming language PL/SQL on both client and server PL/SQL on serverside Database connection Fixed Dynamic UI programming Java (client, browser) HTML, JS, CSS (browser) Application modules Windows/Canvas/Block Pages/Regions Client control Triggers JavaScript Charts BI Beans HTML, JavaScript, Flash
  • 44. How to carry out a conversion project? 44
  • 45. Oracle APEX Forms Converter 45 Tool to manage the conversion process Time & task management Forms component overview Automatic conversion of basic components Pages, forms, reports (single, master-detail, editable) Automatic conversion will not happen for The whole application Forms UI Forms-specific components (Trigger, Program Unit, libraries itp.)
  • 46. APEX – conversion project creation 46 Creation of „Forms Migration” project in Migrations section Upload of previously created XML and PLD files (those files will be created by Forms Converter tool)
  • 47. Sample schedule of conversion project 47 Process / Progress [%] 10 50 100 Application deployment Validation, processes, etc. Adding JS/AJAX Additional forms UI design APEX app creation Component selection Forms sources conversion
  • 48. Oracle Apex - summary 48 Rapid development of web- enabled database driven apps Advanced web charting and reporting Mobile ready UI designEasy team-work & cooperation Full control of data and visualisation
  • 49. Oracle Apex - summary 49 Cons – Oracle standard – Debugging (should be better in Apex 5.0) Pros + Web 2.0 out of the box + Scalability + Security + Rapid development and deployment + Low TCO + Technical & community support + Oracle standard
  • 50. THANK YOU! Przemysław Staniszewski pstaniszewski@pretius.com https://twitter.com/pstaniszewski 50 Want to get more information on Oracle Apex? Follow us on: Twitter - https://twitter.com/PretiusSoftware FB - https://www.facebook.com/pretius LinkedIn - https://www.linkedin.com/company/pretius