How to play and learn �Oracle APEX for free*
*fine print actually includes bonus stuff
Scott Wesley
Modis
Perth, Western Australia
@swesley_perth
grassroots-oracle.com
2014
2020
19c
Kscope15
Hollywood FL
Kscope19
Seattle WA
Age of productivity
2015 Book
2019 AOP
APEX 5.x
19.2, 20.1, …
Scott Wesley – A Career Timeline
2000
8i
7 years hard time
2007
1st Presentation
2008
A great transition
2010 Twitter
@swesley_perth
2012
Video Course
2009 Started Blog
grassroots-oracle.com
2008
Started with Sage
APEX 3.1
2023
Kscope20
Boston MA
#WFH
First presentation in …
ChatGTP Presentation
Agenda
How does it work?
Why is it good?
How can I learn?
Environment options
Ways to practice
Demo?
What is
Oracle APEX
Elevator Pitch
Oracle APEX is a fast way to develop interactive, data-centric web-based applications for the business.
On a longer ride
https://www.frasit.dk/apex-explained-to-managers/
ChatGPT Elevator
Why is it good?
PL/SQL Driven
What I really like as a developer
SQL + PL/SQL
No JavaScript
*
Architecture
example.com/pls/apex/f?p=200
MyDB
Tomcat
/ WLS
Feature
~ Magic ~
Component templates
select *
from emp
+
=
Component properties
Oracle APEX Collateral
apex.oracle.com
/bookmarks
apex.oracle.com/en/learn/videos/
Community
apex.world/ords/f?p=100
One.
Stop.
Shop.
#orclAPEX
forums.oracle.com/ords/apexds/domain/dev-community/category/apex
top 3 forum
AskTom.oracle.com/pls/apex/f?p=100
AskTom Office Hours
123+ recordings
Community+
Community+
https://github.com/Dani3lSun/awesome-orclapex
Environment Options
apex.oracle.com
Oracle APEX Hosting
Oracle Cloud Offering
https://www.slideshare.net/MichaelHichwa/apex-and-oracle-apex-oracle-autonomous-database-always-free-oracle-cloud-services
but wait, there's more…
Oracle Cloud Offering
Always free services available for unlimited time
Trial = extra stuff
Forms Developers
- transform and roll out!
Spot the difference!
Beware of Decepticons
Ways to practice
Admin / Backend Application
Side Project
Replicate Samples
/ download
https://github.com/oracle/apex/tree/22.2/sample-apps
Convert Forms
** not available on Switch
Can we squeeze in a demo?
Final Destination
Application Builder
apex.oracle.com/ords/f?p=4000:1500:11556571924376
Page List
New Page
New Page �- details
New Page�- menu
Page �Builder�- created
Right-click�- Add region
Define �query
Right click�- add item�- add button
Create�Dynamic�Action�(press button)
Add action�- execute pl/sql
Dynamic Action = JavaScript you don't see
Define �PL/SQL, �items to �submit
Save �changes
APEX Source /Meta-data
Pages
Applications
Regions
Items
Runtime �- ready
Runtime �- broken
Show debug list
View page debug
Add process �on page load
Validate�PL/SQL
Validate �SQL
Runtime�- Success
Attribute �changes
Attribute�changes�(only clicks)
Bonus!
$('#my_region').find('.nodatafound').length == 1
Does this region…
Contain this class
select count(*)
from html
where id = 'my_region'
and class = 'nodatafound'
Collection report region
Hide when no data found
Supporting Code
-- Initialise collection (create parent record)
apex_collection.create_or_truncate_collection('APEX101');
-- Add collection record (child)
APEX_COLLECTION.ADD_MEMBER (
p_collection_name => 'APEX101'
,p_c001 => :p15_value -- value from page
);
-- Query collection data
select seq_id, c001
from apex_collections
where collection_name = 'APEX101'
-- Check for results (tidier/faster than SQL solution)
$('#my_region').find('.nodatafound').length == 1
Dark Mode
apex.oracle.com/ords/f?p=4000:4500:11556571924376
Question
https://apex.world
Answer
Scott Wesley
Modis
Perth, Western Australia
@swesley_perth
grassroots-oracle.com