SlideShare une entreprise Scribd logo
1  sur  125
Télécharger pour lire hors ligne
TH Technology
APEX 5 Interactive Reports … Deep Dive
Prelude …
TH Technology
ENJOY!!!!
TH Technology
Karen Cannell
kcannell@thtechnology.com
APEX Interactive Reports
DEEP DIVE
TH Technology
APEX 5 Interactive Reports … Deep Dive
TH Technology
APEX 5 Interactive Reports … Deep Dive
About Me …
Karen Cannell ~ Consultant, TH Technology
Mechanical/SW Engineer - Analyzed, designed,
developed, converted, upgraded, enhanced legacy &
database applications for 25+ years
Building APEX applications for government, medical,
engineering industries since HTMLDB
Leveraging the Oracle 10g,11g, 12c suite of tools
Oracle Ace Associate
Editor, Technical Journal
Send ODTUG Technical Journal Content!
TH Technology
APEX 5 Interactive Reports … Deep Dive
We Have Books …
Expert Oracle Application Express, APress
2015 Report Printing
Beginning Application Express
4.2, APress, 2013
Agile Oracle Application Express
APress, 2012
TH Technology
APEX 5 Interactive Reports … Deep Dive
About You …
New to APEX?
APEX Experience?
APEX Versions?
IR Habits?
IR Customizations?
New Stuff or Old?
APEX5 Ready?
TH Technology
APEX 5 Interactive Reports … Deep Dive
NOTE TO EARLY SLIDE DOWNLOADERS
Many of these slides HAVE CHANGED as
APEX 5 is Live and I find more neat stuff to
add for you every day.
Please download the updated slides from the
Kscope15 site or email
kcannell@thtechnology.com
TH Technology
APEX 5 Interactive Reports … Deep Dive
Agenda
APEX 5 IR New Features
Inside and Out
Caveats:
Limitations and Workarounds
Changes
IR CSS and JS Changes
TH Technology
APEX 5 Interactive Reports … Deep Dive
APEX IR 30-second Intro
Introduced in APEX 3.1
Instead of Classic Reports
One –Way Upgrade
Search Bar
Activity Menu
Select,Filter,Aggregate,Highlight,Chart,Break,Sort,
Compute,Flashback,Download,Save Report,
Group By, Pivot
User Control, Developer Effort
TH Technology
APEX 5 Interactive Reports … Deep Dive
Developer and User Team
“though APEX IR give the end user great
power to format and arrange reports to their
needs, the developer needs to be aware
of end user needs to prepare and deliver
the appropriate APEX IR query to support
them.”
For maximum value:
Know Your Users
Know What Your Users Do
TH Technology
APEX 5 Interactive Reports … Deep Dive
Agenda
APEX 5.0 New Features
Inside and Out
TH Technology
APEX 5 Interactive Reports … Deep Dive
APEX 5.0 New Features
Appearance, Usability and Accessibility
Accessible
Menus Updated, Font Icons
Modal Dialogs
Action Menu
Group By Enhancements column Limit increase
Pivot
Subscription – End is now End Date
Manage Saved Reports and Subscriptions at
Application Level
TH Technology
APEX 5 Interactive Reports … Deep Dive
APEX 5.0 New Features, cont’d
“Multiple Interactive Reports”
More than One IR Per Page!
to do this one …
Things Have Changed
TH Technology
APEX 5 Interactive Reports … Deep Dive
Things Look Different …
Page Designer
Usability, Appearance, Accessibility
Menus
Modal Dialogs
Icons
TH Technology
APEX 5 Interactive Reports … Deep Dive
Page Designer – Where to Find IR Things
TH Technology
APEX 5 Interactive Reports … Deep Dive
Column Heading Menu
APEX 4.2
Usability, Appearance, Accessibility
TH Technology
APEX 5 Interactive Reports … Deep Dive
Column Heading Menu on Click
APEX 5
Accessible
by Tab
Usability, Appearance, Accessibility
TH Technology
APEX 5 Interactive Reports … Deep Dive
Developer - Report Attributes
Selective End User Features
Per Report
Per Column
TH Technology
APEX 5 Interactive Reports … Deep Dive
Page Designer - Report Attributes
Property Editor - Attributes
TH Technology
APEX 5 Interactive Reports … Deep Dive
<= APEX 4.2 Action Menu
TH Technology
APEX 5 Interactive Reports … Deep Dive
APEX 5+ Action Menu
TH Technology
APEX 5 Interactive Reports … Deep Dive
Modal Dialogs
Pulldown Dialogs are now Modal
“Improved Usability”
Better Appearance
Improved Accessibility
Column Headings
Click vs. Mouseover
Usability, Appearance, Accessibility
TH Technology
APEX 5 Interactive Reports … Deep Dive
Things ARE Different …
Action Menu Enhancements
GROUP BY
PIVOT
New CSS Classes, ID’s
New JavaScript / jQuery
Let’s Look at New Features First …
TH Technology
APEX 5 Interactive Reports … Deep Dive
GROUP BY
Up to 8 Columns (up from 3)
APEX 3 – Build Your Own
APEX 4 - 3 Column Group By
APEX 5 – 8 Column Group By
GROUP BY is Single View, Fixed Report
Other IR Features Disabled
GROUP BY or Main Report or Chart or Pivot
Download Behavior
Action Menu New / Enhanced Actions
TH Technology
APEX 5 Interactive Reports … Deep Dive
Pivot
Old Way
Pivot via SQL Statement
Diff Approach for Known Columns vs Unknown
Columns
Tedious At Best
New Way
Point – Click – Save - Run
Demo
Limitations
Download Behavior
Other IR Options Disabled
Action Menu New / Enhanced Actions
TH Technology
APEX 5 Interactive Reports … Deep Dive
Traditional Pivot Query
SELECT
agency,
area_code,
year,
MAX ( CASE WHEN miy = '01' THEN sum_costs ELSE NULL END) jan_costs,
MAX ( CASE WHEN miy = '02' THEN sum_costs ELSE NULL END) feb_costs,
MAX ( CASE WHEN miy = '03' THEN sum_costs ELSE NULL END) mar_costs,
MAX ( CASE WHEN miy = '04' THEN sum_costs ELSE NULL END) apr_costs,
MAX ( CASE WHEN miy = '05' THEN sum_costs ELSE NULL END) may_costs,
MAX ( CASE WHEN miy = '06' THEN sum_costs ELSE NULL END) jun_costs,
MAX ( CASE WHEN miy = '07' THEN sum_costs ELSE NULL END) jul_costs,
MAX ( CASE WHEN miy = '08' THEN sum_costs ELSE NULL END) aug_costs,
MAX ( CASE WHEN miy = '09' THEN sum_costs ELSE NULL END) sep_costs,
MAX ( CASE WHEN miy = '10' THEN sum_costs ELSE NULL END) oct_costs,
MAX ( CASE WHEN miy = '11' THEN sum_costs ELSE NULL END) nov_costs,
MAX ( CASE WHEN miy = '12' THEN sum_costs ELSE NULL END) dec_costs,
MAX ( CASE WHEN miy = '00' THEN sum_costs ELSE NULL END) unk_costs,
MAX( sum_costs) yr_costs
FROM
( SELECT …
FROM …
WHERE
GROUP BY ROLLUP ( … )
)
WHERE …
GROUP BY agency, area_code, year
Traditional PIVOT Query Options
TH Technology
APEX 5 Interactive Reports … Deep Dive
SELECT
agency,
area_code,
year,
MAX ( CASE WHEN miy = '01' THEN sum_costs ELSE NULL END)
jan_costs,
MAX ( CASE WHEN miy = '02' THEN sum_costs ELSE NULL END)
feb_costs,
MAX ( CASE WHEN miy = '03' THEN sum_costs ELSE NULL END)
mar_costs,
MAX ( CASE WHEN miy = '04' THEN sum_costs ELSE NULL END)
apr_costs,
MAX ( CASE WHEN miy = '05' THEN sum_costs ELSE NULL END)
may_costs,
… …
Known Columns Only
Traditional Pivot Query
Traditional PIVOT Query Options
TH Technology
APEX 5 Interactive Reports … Deep Dive
Pivot Tables – Known Columns
Known Columns and Column Names
ex: Project by Status
Budget by Month
vs
Unknown Columns and Column Names
ex: Project by Year
Status by Project
<Data> by Year
Standard APEX IR Needs Column Names
Traditional PIVOT Query Options
TH Technology
APEX 5 Interactive Reports … Deep Dive
Pivot Queries
Traditional SQL
MAX ( CASE or DECODE …) )
CASE to filter values into columns
MAX to flatten the results
Need Known Columns
11g PIVOT and UNPIVOT
PIVOT
PIVOT … XML
http://www.oracle.com/technology/pub/articles/oracle-
database-11g-top-features/11g-pivot.html
Traditional PIVOT Query Options
TH Technology
APEX 5 Interactive Reports … Deep Dive
Pivot Query Options, cont’d
PIVOT PL/SQL Package - Kyte
In Expert One on One
Dynamic SQL Pivoting - AMIS Solution
TYPE, TYPE BODY
Pipelined Table Function
http://technology.amis.nl/blog/1207/dynamic-sql-
pivoting-stealing-antons-thunder
Traditional PIVOT Query Options
TH Technology
APEX 5 Interactive Reports … Deep Dive
PIVOT - The APEX 5 Easy Way
Action Menu New / Enhanced Actions
TH Technology
APEX 5 Interactive Reports … Deep Dive
Subscription – Pre APEX 5.0
“End” is a Repeat Count
Action Menu New / Enhanced Actions
TH Technology
APEX 5 Interactive Reports … Deep Dive
Subscription – APEX 5.0 +
“End” is a true End Date
Action Menu New / Enhanced Actions
TH Technology
APEX 5 Interactive Reports … Deep Dive
Subscription, Download Email
Do You Really Want Users
Emailing Data?
Consider:
EMail Filters
Tracking
Limit Report Data
Disable Subscription
Disable Download Email
TH Technology
APEX 5 Interactive Reports … Deep Dive
Manage at Application Level
Administration for Saved Reports,
Subscriptions Now at Application Level
Used to Be Each Interactive Report Page
TH Technology
APEX 5 Interactive Reports … Deep Dive
Floating Column Headers
Heading Attribute
Page – Aligns Multiple IR Headers Together w Top
of Page
Region – “Sticks” w/in Region Scroll
None – Headers Scroll off the page
Universal Theme Only
TH Technology
APEX 5 Interactive Reports … Deep Dive
Floating Column Headers
Yeah!
TH Technology
APEX 5 Interactive Reports … Deep Dive
Multiple Interactive Reports
“Any Number” of IR Per Page!
Thank you! …
TH Technology
APEX 5 Interactive Reports … Deep Dive
Refresher Course
Underused IR Features:
IR_<COLUMN_NAME>
CIR – Clear IR (clear all)
RIR – Reset IR ( to default settings)
TH Technology
APEX 5 Interactive Reports … Deep Dive
Reference IR Columns and Filter Values
IREQ_<column_alias> Equals
IR _<column_alias> Equals
IRLT_<column_alias> <
IRLTE_<column_alias> <=
IRGT_<column_alias> >
IRGTE_<column_alias> >=
IRLIKE_<column_alias> vSQL LIKE
IRN_<column_alias> NULL
IRNN_<column_alias> v NOT NULL
IRC_<column_alias> Contains
IRNC_<column_alias> Not Contains
No BETWEEN, IN, NOT IN
TH Technology
APEX 5 Interactive Reports … Deep Dive
Pre APEX 5 – IR%_COLUMN
Single IR On the Page:
Reference IR Column Name
IR_COLUMN_NAME
Create and use IR filter options:
IR%_ COLUMN_NAME
TH Technology
APEX 5 Interactive Reports … Deep Dive
Multi IR: – IR%[STATIC_ID]_COLUMN
Multiple IRs On the Page:
Reference IR [Static ID]Column Name
IR[STATIC_ID] _COLUMN_NAME
Create and use IR filter options:
IR%[STATIC_ID]_COLUMN_NAME
TH Technology
APEX 5 Interactive Reports … Deep Dive
Assign IR STATIC_ID
TH Technology
APEX 5 Interactive Reports … Deep Dive
Assign Column Link Attributes
TH Technology
APEX 5 Interactive Reports … Deep Dive
Assign Column Link Attributes
Not Easy To Find in Page Designer …
Click on Target …
TH Technology
APEX 5 Interactive Reports … Deep Dive
Assign Column Link Attributes
Link Target
is a Modal
Popup
TH Technology
APEX 5 Interactive Reports … Deep Dive
Reference IR Columns and Filter Values
IREQ[STATIC_ID]_<column_alias> Equals
IR[STATIC_ID]_<column_alias> Equals
IRLT[STATIC_ID]_<column_alias> <
IRLTE[STATIC_ID]_<column_alias> <=
IRGT[STATIC_ID]_<column_alias> >
IRGTE[STATIC_ID]_<column_alias> >=
IRLIKE[STATIC_ID]_<column_alias> SQL LIKE
IRN[STATIC_ID]_<column_alias> NULL
IRNN[STATIC_ID]_<column_alias> NOT NULL
IRC[STATIC_ID]_<column_alias> Contains
IRNC[STATIC_ID]_<column_alias> Not Contains
No BETWEEN, IN, NOT IN
TH Technology
APEX 5 Interactive Reports … Deep Dive
Developer Features – CIR and RIR
To Clear or Reset ONE or a specific IR on a
page:
CIR[STATIC_ID] and RIR[STATIC_ID]
Do Not Work
Use IR[STATIC_ID] in REQUEST to Indicate
IR to CIR or RIR:
f?p=MYAPP:100:&SESSION.:IR[STATIC_ID]:NO:CIR
TH Technology
APEX 5 Interactive Reports … Deep Dive
Multi IR Demo – “The Dashboard”
TH Technology
APEX 5 Interactive Reports … Deep Dive
Imagine …
Using IREQ[STATIC_ID]_COLUMN to
Link/Jump/Drill Between IRs on the Same
Page …
TH Technology
APEX 5 Interactive Reports … Deep Dive
Imagine …
Passing IREQ[STATIC_ID]_COLUMN to
Control a Set of IRs on the Same Page
TH Technology
APEX 5 Interactive Reports … Deep Dive
Use The Right Tool
TH Technology
APEX 5 Interactive Reports … Deep Dive
Agenda: Caveats
Limitations … How To Deal w Them
TH Technology
APEX 5 Interactive Reports … Deep Dive
Limitations
One Size Fits All Features
Minor & Less-Known Limitations
Still have 32K row limit
Charts: 1000 element limit
Filters: Commas, SYSDATE, Bugs w/GTE Links
Aggregates: Not BI
Chart, Group By, Pivot
Are “Single View”
Other IR Functions Disabled or Limited on these Views
TH Technology
APEX 5 Interactive Reports … Deep Dive
Too Much?
“One-Size-Fits-All”
Really ?
Developer Can Enable/Disable
per IR (as of APEX 5)
per Column
Developer Can Add Condition on Link Column
Conditional Pages
Pre APEX 5, Need multiple IRs on
multiple pages for more complex
authorizations
TH Technology
APEX 5 Interactive Reports … Deep Dive
APEX IR: Too Much?
Use The Settings
Declaratively Turn Off Features
Disable Control Summary (Settings)
display:none;
On a-IRR-controlPanel or specific a-IRR-<element>
Provide Manually-created RESET or CLEAR
buttons
(Future) API or Declarative Setting?
TH Technology
APEX 5 Interactive Reports … Deep Dive
APEX IR: Not Enough?
Extend the Toolbar (Widget)
Outside the Toolbox
Provide Manually-created Custom Buttons
Provide Custom Actions
Plugins
Whatever You Can Code …
Unless You Use Standard API,
Not Supported
TH Technology
APEX 5 Interactive Reports … Deep Dive
Limitations – Developers & Users
32K Row Limit
Search Bar All-Column Not DATE-Savvy
Aggregate Behavior
IR is NOT BI Savvy
Know Your Users
TH Technology
APEX 5 Interactive Reports … Deep Dive
Limitations – Dynamic DATE filter
SYSDATE as Filter Value
Use “Is in the last” w/ large value - User
Build a Specific URL Filter and Link Column - Dev
Build SQL Report to look like a Menu
Ex: Bonus Eligible Date
Build Derived Column – Dev
Ex: CASE WHEN <condition> THEN
‘Yes’
ELSE
‘No’
END overdue
TH Technology
APEX 5 Interactive Reports … Deep Dive
Aggregate Behavior – Not BI
Original Report Display
Region: West
************
State County City Population
CA Orange County Irvine 100
CA Orange County Orange 200
CA Los Angeles Hollywood 300
CA Los Angeles Universal City 400
Sum 1,000
Actual APEX IR Result
Region: West
************
State County Population
CA Orange County 100
CA Orange County 200
CA Los Angeles 300
CA Los Angeles 400
Sum 1,000
Intended Result
Region: West
************
State County Population
CA Orange County 300
CA Los Angeles 700
Sum 1,000
TH Technology
APEX 5 Interactive Reports … Deep Dive
Limitations – Developers & Users
Charts
Chart or Data Set (or Group By or Pivot)
Charting Limits
1000 elements Vert, Horiz., Line; 2D Pie
Aggregate then chart?
Chart Labels
Vertical Bart Chart may not Display All Labels
Chart Education!
TH Technology
APEX 5 Interactive Reports … Deep Dive
Limitations – Developers & Users
Search Columns
Search Drop Down – Max # is 1000 Columns
Report Attributes List – Max 100 Columns
Volume of Data Returned
? ~ 85K Rows?
THINK … what do users really need?
TH Technology
APEX 5 Interactive Reports … Deep Dive
Limitations – Developers & Users
APEX IR is NOT MS Excel !!
Arrow Up/Down Right/Left Navigation
Freeze Columns, Freeze Headers
WYSIWYG Printing
Download Data Set
RETRAINING MAY BE REQUIRED
ELSE Plug-Ins
What do users really need?
TH Technology
APEX 5 Interactive Reports … Deep Dive
Agenda: Changes
CSS and JS Changes
Appearance
TH Technology
APEX 5 Interactive Reports … Deep Dive
APEX 5.0
Remember … 2014
TH Technology
APEX 5 Interactive Reports … Deep Dive
APEX 5.0 2015
TH Technology
APEX 5 Interactive Reports … Deep Dive
APEX 5.0 IR 2015
Changes …
differentt bowie image
Usability, Appearance, Accessibility
TH Technology
APEX 5 Interactive Reports … Deep Dive
CSS Changes
Different Classes
Different Ids
apexir_<element> ids replaced by
a-irr-<…> classes and
STATIC_ID_<…> ids
TH Technology
APEX 5 Interactive Reports … Deep Dive
TH Technology
APEX 5 Interactive Reports … Deep Dive
TH Technology
APEX 5 Interactive Reports … Deep Dive
Refactor Example - CSS
Dynamic Action – APEX 4.2
Custom jQuery w CSS References
var rows = $('table.apexir_WORKSHEET_DATA tbody tr:gt(0)');
rows.each(function(idx) {
var Flags = $(this).children("td[headers='FLAGS']").text();
if( Flags == 'Outlier')
{
$(this).children("td").css("background-color","#FCF067");
}
});
TH Technology
APEX 5 Interactive Reports … Deep Dive
STATIC_ID on Column
TH Technology
APEX 5 Interactive Reports … Deep Dive
Refactor Example – APEX 5.0
Dynamic Action – APEX 5.0 Style
var rows = $('table.a-IRR-table tbody tr:gt(0)');
rows.each(function(idx) {
var Flags = $(this).children("td[headers=‘FLAGS']").text();
if( Flags == 'Outlier')
{
$(this).children("td").css("background-color","#FCF067");
}
});
TH Technology
APEX 5 Interactive Reports … Deep Dive
JavaScript Changes
New Code Base
jQuery UI Widget Factory
widget.interactivereport.js
No Inline Event Handlers
No gReport
No APIs
TH Technology
APEX 5 Interactive Reports … Deep Dive
widget.interactiveReport.js
Same Name
Different Contents
jQuery UI Widget Factory
TH Technology
APEX 5 Interactive Reports … Deep Dive
What !!??
No gReport
No Inline Event Handlers
All Private Methods
No Supported APIs (yet)
APIs are Planned for APEX 5.1
Exactly What TBD
TH Technology
APEX 5 Interactive Reports … Deep Dive
APEX 4.2 Search Icon
gReport.dialog2
TH Technology
APEX 5 Interactive Reports … Deep Dive
APEX 4.2 IR Toolbar Go Button
gReport.search(‘SEARCH’)
TH Technology
APEX 5 Interactive Reports … Deep Dive
APEX 5 Toolbar Go Button
No gReport
No Visible Call/Event
TH Technology
APEX 5 Interactive Reports … Deep Dive
5.0 Changes - Impact on Existing Code
Appearance
CSS (less of a problem due to Universal Theme)
PL/SQL
Collection Logic, References
JavaScript
Custom Code, References
Dynamic Actions
Whatever was Done Non-Standard Will
Need Refactoring!
Usability, Appearance, Accessibility
TH Technology
APEX 5 Interactive Reports … Deep Dive
Supported vs UnSupported
Anything that Uses Standard API …is
Supported
ex: apexrefresh for IR refreshes
apex.event.trigger( "#IRStaticID", "apexrefresh" );
Anything Else ….
gReport.search - Not Supported
TH Technology
APEX 5 Interactive Reports … Deep Dive
Supported RIR and CIR Alts
APEX_IR.RESET_REPORT(
p_page_id IN NUMBER,
p_region_id IN NUMBER,
p_report_id IN NUMBER DEFAULT NULL);
and
APEX_IR.CLEAR_REPORT(
p_page_id IN NUMBER,
p_region_id IN NUMBER,
p_report_id IN NUMBER DEFAULT NULL);
TH Technology
APEX 5 Interactive Reports … Deep Dive
Safe Harbor?
TH Technology
APEX 5 Interactive Reports … Deep Dive
Understanding the IR Widgets
APEX 5.0 Interactive Report Customization,
John Snyders
http://hardlikesoftware.com/weblog/2015/05/12/a
pex-5-0-interactive-report-customization/
jQuery UI: How to Use the Widget Factory
https://learn.jquery.com/jquery-ui/widget-
factory/how-to-use-the-widget-factory/
TH Technology
APEX 5 Interactive Reports … Deep Dive
Widgets 101
Widget Options
$(selector).widgetName("option");
Get/Set Widget Option
$(selector).widgetName("option“,”optionname”);
$(selector).widgetName("option“,”optionname”,100);
Widget Method
Parameters
TH Technology
APEX 5 Interactive Reports … Deep Dive
Naming
IR Widget:
Append _ir to IR Static ID
DEPT_IR_ir
Menu Widget
Append _actions_menu to IR Static Id
DEPT_IR_actions_menu
TH Technology
APEX 5 Interactive Reports … Deep Dive
Knowing the Names …
Refresh an IR:
$("#DEMO_IR_ir“).interactiveReport("refresh");
Get the Current Rows Per Page:
$("#DEMO_IR_ir").interactiveReport("option",
"currentRowsPerPage");
Set the Current Rows Per Page:
$("#DEMO_IR_ir").interactiveReport("option",
"currentRowsPerPage”, 50);
TH Technology
APEX 5 Interactive Reports … Deep Dive
Knowing the Names …
Open Download Dialog
$("#DEMO_IR_actions_menu").menu("find",
"irDownload").action();
… find the irDownload object of the DEMO_IR
interactive report actions menu and call its action
method.
TH Technology
APEX 5 Interactive Reports … Deep Dive
APEX 5 IR Possible APIs?
For APEX 5.1 – Discussion of APIs to Close
the gReport Gap
gReport –Like Options
Public IR Widget Methods
Setting for Open/Close Settings
Wait for APEX 5.1 to
Upgrade/Refactor?
TH Technology
APEX 5 Interactive Reports … Deep Dive
Note:
In earlier APEX versions, there was less
declarative JavaScript capability and therefore
more developer customizations.
As APEX advances and incorporates more
declarative JavaScript, it is more important to
stay within the standard APIs when making
customizations, to avoid difficulties when
upgrading.
TH Technology
APEX 5 Interactive Reports … Deep Dive
Appearance
Pre APEX 5.0
Default Appearance is Blah
Customization via CSS (Hard, Customized)
APEX 5.0
Appearance is Better
Customization is Easy!
Template Options
Template Styles
Universal Theme, ThemeRoller
TH Technology
APEX 5 Interactive Reports … Deep Dive
Pre APEX 5: CSS Anatomy of an IR
Search Bar  apex_finderbar
Control Panel  apexir_CONTROL_PANEL
Worksheet  apexir_WORKSHEET
Column Search  apexir_columnsearch
All in apex_<version>.css
See …imagescssuncompressed for readable version
Do Not Modify the Original!
TH Technology
APEX 5 Interactive Reports … Deep Dive
apexir_WORKSHEET_DATA
table.apexir_WORKSHEET_DATA{border:0px
#ffffff solid;}
table.apexir_WORKSHEET_DATA tfoot tr
td{background:#efefef;}
table.apexir_WORKSHEET_DATA th{
background:#4e4e4e;
font-weight:bold;
color:#ffffff;
border-top:1px #ccc solid;
border-bottom:1px #aaa solid;
font-size:11px;
white-space:nowrap;
vertical-align:center;
letter-spacing:1;
background-image:url(../ws/report_bg.gif);
background-repeat:repeat-x;
}
table.apexir_WORKSHEET_DATA td{
background:#efefef;
border-top:1px #fff solid;
border-bottom:1px #ccc solid;
font-size:8pt;
padding:3px 9px;
empty-cells:show !important;
}
table.apexir_WORKSHEET_DATA th div{
color:#ffffff;
font-size:11px;
letter-spacing:1;
text-decoration:underline;
cursor:pointer;
margin:3px 9px;
}
TH Technology
APEX 5 Interactive Reports … Deep Dive
Custom Appearance: Pre APEX 5
Copy IR CSS into a New File: my_custom_IR.css
Place Custom CSS File after apex_#_#.css
Change as Little as Possible
Web Developer: Edit CSS for Visual Feedback
Try Out Your Settings
Test Test Test
Test in all Supported/Used Browsers
Test in End User Browsers
Common User Browser Settings often Different than Developer Settings!
TEST TEST TEST
TH Technology
APEX 5 Interactive Reports … Deep Dive
APEX 5+: CSS Anatomy of an IR
Search Bar  /…
Control Panel 
Worksheet  a…
Column Search 
Use Template Options
Create/Upload Template Styles
No Need for All That Custom CSS!
TH Technology
APEX 5 Interactive Reports … Deep Dive
APEX 5 IR “Cheat Sheet”
apexir_ … Ids  STATIC_ID_ …
apex_ classes  a-IRR-…
APEX 5 Adds a Few More
JavaScript widget is revamped
widget.interactiveReport.min.js
The name is the same … not much else.
No Supported Equivalents (for now)
TH Technology
APEX 5 Interactive Reports … Deep Dive
TH Technology
APEX 5 Interactive Reports … Deep Dive
Customizations: Demo
TH Technology
APEX 5 Interactive Reports … Deep Dive
Recap:
APEX 5.0 IR Changes
New Features
New CSS
New JavaScript
Caveats
Limitations & Workarounds
Changes
CSS and jQuery Widget
APIs Coming for APEX 5.1 (We Hope)
TH Technology
APEX 5 Interactive Reports … Deep Dive
Resources
Manually Refreshing APEX Components
http://docs.oracle.com/cd/E59726_01/doc.50/e39147/extend_app002.ht
m#HTMDB30267
APEX 5.0 Interactive Report Customization,
John Snyders
http://hardlikesoftware.com/weblog/2015/05/12/apex-5-0-interactive-
report-customization/
jQuery UI: How to Use the Widget Factory
https://learn.jquery.com/jquery-ui/widget-factory/how-to-use-the-widget-
factory/
TH Technology
APEX 5 Interactive Reports … Deep Dive
More Resources
APEX ThemeRoller How-To
http://dgielis.blogspot.com/2015/02/apex-50-way-to-use-theme-
roller.html?utm_source=feedburner&utm_medium=twitter&utm_campaign=Feed%3A+DimitriGielisBlog+
%28Dimitri+Gielis+Blog%29 .
AMIS Pivot Implementation for pre APEX 5
https://technology.amis.nl/2006/05/24/dynamic-sql-pivoting-stealing-antons-thunder/
APEX 5 IR Papers
http://thtechnology.com/APEX5
TH Technology
APEX 5 Interactive Reports … Deep Dive
Share Your Knowledge !
Call for Articles/Blogs/Updates/Reviewers
ODTUG Technical Journal
ALWAYS Looking for Content!
kcannell@odtug.com
TH Technology
APEX 5 Interactive Reports … Deep Dive
TH Technology
APEX IR
DEEP DIVE
APEX 5 Preview
Karen Cannell
kcannell@thtechnology.com
Questions ?
TH Technology
APEX IR
DEEP DIVE
APEX 5 Preview
Karen Cannell
Thank You ~
Please fill out the evaluations!
TH Technology
APEX 5 Interactive Reports … Deep Dive
Nostalgia …
TH Technology
APEX 5 Interactive Reports … Deep Dive
Ch Ch Ch Ch Changes …
TH Technology
APEX 5 Interactive Reports … Deep Dive
Appendix:
PDF Printing for IRs
Multiple IR on Single Page, Pre-APEX 5
TH Technology
APEX 5 Interactive Reports … Deep Dive
APEX IR PDF Print OOTB Options
Print Attributes - Generic Template Only
Same Width Columns
Basic Header/Footer Settings
Issues:
Equal Column Widths
No-Print Columns
No Highlighting, Formatting
Break Columns?
Pivot? Chart? Group By?
TH Technology
APEX 5 Interactive Reports … Deep Dive
APEX IR PDF Print Problem
Need to Capture As-Is Report Query and
Configuration
One Option:
APEX 4.1: APEX_IR_QUERY
Modified SS Version for Sorts, Column Order
Modify Your Version for Your Needs
APEX 4.2 +: APEX_IR Package (w help)
APEX 5: APEX_IR Package (w help)
TH Technology
APEX 5 Interactive Reports … Deep Dive
PDF Print Options
Report Query
Capture SQL via APEX_IR ( or Pre APEX 4.2
Equiv)
Report Layout
XSL-FO Named Column Template
Stylus Studio, FO Designer, BI Publisher Desktop, Manual
This Approach for Fixed Columns Only –
Not True WYSIWYG
TH Technology
APEX 5 Interactive Reports … Deep Dive
PDF Print Options
Report Query
Create TYPE to Hold Report Structure
Create Views w Same Structure as the TYPE
Create FUNCTION to use Dynamic SQL to
Select from View based on APEX_IR_QUERY
Output, Return Table Type
Parameters APP_ID, Page, Session, IR ID,
Any IR Parameters
TH Technology
APEX 5 Interactive Reports … Deep Dive
PDF Print Options
Report Query
example
TH Technology
APEX 5 Interactive Reports … Deep Dive
PDF Print
Function Returns Table Type
TH Technology
APEX 5 Interactive Reports … Deep Dive
PDF Print Options
Report Layout
example
TH Technology
APEX 5 Interactive Reports … Deep Dive
PDF Print Options
PDF Output Button
example
TH Technology
APEX 5 Interactive Reports … Deep Dive
TH Technology
APEX 5 Interactive Reports … Deep Dive
PDF Output - Limitations
Named Columns
Set Column Order - Not WYSIWYG
Tedious
Future:
Edit XSL-FO Template to handle Conditional
Column
Generate XSL-FO Template On The Fly
ALGEN Modification
See George Barra for original ALGEN
TH Technology
APEX 5 Interactive Reports … Deep Dive
PDF Output – Other Options
Plugins
PL/PDF
Jasper Reports
BIRT
Export to Excel Options
Node.js output to Word, Excel
Depends On Your Needs –
Know Your Users
TH Technology
APEX 5 Interactive Reports … Deep Dive
APEX 5.1 SOD
“PDF Printing – Improve the printing capabilities
utilizing the Oracle REST Data Services FOP
Support.”
 FOP 1.1Embedded in APEX REST Services
TH Technology
APEX 5 Interactive Reports … Deep Dive
Pre APEX 5: One IR per Page
Need for > 1 APEX IR ?
IFF So: Iframe
TH Technology
APEX 5 Interactive Reports … Deep Dive
NN
“First” IR,
on the
main page
“Second” IR is
in an iframe
(really in
separate app)
TH Technology
APEX 5 Interactive Reports … Deep Dive
Pre APEX 5 > 1 IR: IFRAME
Create the first IR on the main page
Create then next IR in separate app
Plain Page Template
Plain Region – No Template
Create an HTML Region on main page
Enter Iframe reference in Region Source
TH Technology
APEX 5 Interactive Reports … Deep Dive
Iframe Source

Contenu connexe

Tendances

Finit solutions - Automating Data Loads with FDMEE
Finit solutions - Automating Data Loads with FDMEEFinit solutions - Automating Data Loads with FDMEE
Finit solutions - Automating Data Loads with FDMEEfinitsolutions
 
Koalas: Making an Easy Transition from Pandas to Apache Spark
Koalas: Making an Easy Transition from Pandas to Apache SparkKoalas: Making an Easy Transition from Pandas to Apache Spark
Koalas: Making an Easy Transition from Pandas to Apache SparkDatabricks
 
PLAT-13 Metadata Extraction and Transformation
PLAT-13 Metadata Extraction and TransformationPLAT-13 Metadata Extraction and Transformation
PLAT-13 Metadata Extraction and TransformationAlfresco Software
 
Automate user creation using sap gui scripting
Automate user creation using sap gui scriptingAutomate user creation using sap gui scripting
Automate user creation using sap gui scriptingsparten369
 
Monitoring of GPU Usage with Tensorflow Models Using Prometheus
Monitoring of GPU Usage with Tensorflow Models Using PrometheusMonitoring of GPU Usage with Tensorflow Models Using Prometheus
Monitoring of GPU Usage with Tensorflow Models Using PrometheusDatabricks
 
IBM Maximo Performance Tuning
IBM Maximo Performance TuningIBM Maximo Performance Tuning
IBM Maximo Performance TuningFMMUG
 
CapellaDays2022 | SIEMENS | Expand MBSE into Model-based Production Engineeri...
CapellaDays2022 | SIEMENS | Expand MBSE into Model-based Production Engineeri...CapellaDays2022 | SIEMENS | Expand MBSE into Model-based Production Engineeri...
CapellaDays2022 | SIEMENS | Expand MBSE into Model-based Production Engineeri...Obeo
 
Optimizing Apache Spark UDFs
Optimizing Apache Spark UDFsOptimizing Apache Spark UDFs
Optimizing Apache Spark UDFsDatabricks
 
Feature store: Solving anti-patterns in ML-systems
Feature store: Solving anti-patterns in ML-systemsFeature store: Solving anti-patterns in ML-systems
Feature store: Solving anti-patterns in ML-systemsAndrzej Michałowski
 
Scaling Data Quality @ Netflix
Scaling Data Quality @ NetflixScaling Data Quality @ Netflix
Scaling Data Quality @ NetflixMichelle Ufford
 
Everything you ever wanted to know about IIIF but were too afraid to ask
Everything you ever wanted to know about IIIF but were too afraid to askEverything you ever wanted to know about IIIF but were too afraid to ask
Everything you ever wanted to know about IIIF but were too afraid to askCogapp
 
Bulk Export Tool for Alfresco
Bulk Export Tool for AlfrescoBulk Export Tool for Alfresco
Bulk Export Tool for AlfrescoRichard McKnight
 
Customer Intelligence: Using the ELK Stack to Analyze ForgeRock OpenAM Audit ...
Customer Intelligence: Using the ELK Stack to Analyze ForgeRock OpenAM Audit ...Customer Intelligence: Using the ELK Stack to Analyze ForgeRock OpenAM Audit ...
Customer Intelligence: Using the ELK Stack to Analyze ForgeRock OpenAM Audit ...ForgeRock
 
Capella Days 2021 | How I pack my suitcase
Capella Days 2021 | How I pack my suitcaseCapella Days 2021 | How I pack my suitcase
Capella Days 2021 | How I pack my suitcaseObeo
 
Monitor Apache Spark 3 on Kubernetes using Metrics and Plugins
Monitor Apache Spark 3 on Kubernetes using Metrics and PluginsMonitor Apache Spark 3 on Kubernetes using Metrics and Plugins
Monitor Apache Spark 3 on Kubernetes using Metrics and PluginsDatabricks
 
FDMEE script examples
FDMEE script examplesFDMEE script examples
FDMEE script examplesAmit Soni
 
Requirements Engineering - Introduction
Requirements Engineering - IntroductionRequirements Engineering - Introduction
Requirements Engineering - IntroductionBirgit Penzenstadler
 
Capella Days 2021 | Using MBSE to Integrate Engineering Undergraduate Courses...
Capella Days 2021 | Using MBSE to Integrate Engineering Undergraduate Courses...Capella Days 2021 | Using MBSE to Integrate Engineering Undergraduate Courses...
Capella Days 2021 | Using MBSE to Integrate Engineering Undergraduate Courses...Obeo
 

Tendances (20)

Finit solutions - Automating Data Loads with FDMEE
Finit solutions - Automating Data Loads with FDMEEFinit solutions - Automating Data Loads with FDMEE
Finit solutions - Automating Data Loads with FDMEE
 
Koalas: Making an Easy Transition from Pandas to Apache Spark
Koalas: Making an Easy Transition from Pandas to Apache SparkKoalas: Making an Easy Transition from Pandas to Apache Spark
Koalas: Making an Easy Transition from Pandas to Apache Spark
 
PLAT-13 Metadata Extraction and Transformation
PLAT-13 Metadata Extraction and TransformationPLAT-13 Metadata Extraction and Transformation
PLAT-13 Metadata Extraction and Transformation
 
Automate user creation using sap gui scripting
Automate user creation using sap gui scriptingAutomate user creation using sap gui scripting
Automate user creation using sap gui scripting
 
Monitoring of GPU Usage with Tensorflow Models Using Prometheus
Monitoring of GPU Usage with Tensorflow Models Using PrometheusMonitoring of GPU Usage with Tensorflow Models Using Prometheus
Monitoring of GPU Usage with Tensorflow Models Using Prometheus
 
IBM Maximo Performance Tuning
IBM Maximo Performance TuningIBM Maximo Performance Tuning
IBM Maximo Performance Tuning
 
CapellaDays2022 | SIEMENS | Expand MBSE into Model-based Production Engineeri...
CapellaDays2022 | SIEMENS | Expand MBSE into Model-based Production Engineeri...CapellaDays2022 | SIEMENS | Expand MBSE into Model-based Production Engineeri...
CapellaDays2022 | SIEMENS | Expand MBSE into Model-based Production Engineeri...
 
Dissecting SysML v2.pptx
Dissecting SysML v2.pptxDissecting SysML v2.pptx
Dissecting SysML v2.pptx
 
Optimizing Apache Spark UDFs
Optimizing Apache Spark UDFsOptimizing Apache Spark UDFs
Optimizing Apache Spark UDFs
 
Feature store: Solving anti-patterns in ML-systems
Feature store: Solving anti-patterns in ML-systemsFeature store: Solving anti-patterns in ML-systems
Feature store: Solving anti-patterns in ML-systems
 
Scaling Data Quality @ Netflix
Scaling Data Quality @ NetflixScaling Data Quality @ Netflix
Scaling Data Quality @ Netflix
 
Everything you ever wanted to know about IIIF but were too afraid to ask
Everything you ever wanted to know about IIIF but were too afraid to askEverything you ever wanted to know about IIIF but were too afraid to ask
Everything you ever wanted to know about IIIF but were too afraid to ask
 
Bulk Export Tool for Alfresco
Bulk Export Tool for AlfrescoBulk Export Tool for Alfresco
Bulk Export Tool for Alfresco
 
Customer Intelligence: Using the ELK Stack to Analyze ForgeRock OpenAM Audit ...
Customer Intelligence: Using the ELK Stack to Analyze ForgeRock OpenAM Audit ...Customer Intelligence: Using the ELK Stack to Analyze ForgeRock OpenAM Audit ...
Customer Intelligence: Using the ELK Stack to Analyze ForgeRock OpenAM Audit ...
 
Capella Days 2021 | How I pack my suitcase
Capella Days 2021 | How I pack my suitcaseCapella Days 2021 | How I pack my suitcase
Capella Days 2021 | How I pack my suitcase
 
Monitor Apache Spark 3 on Kubernetes using Metrics and Plugins
Monitor Apache Spark 3 on Kubernetes using Metrics and PluginsMonitor Apache Spark 3 on Kubernetes using Metrics and Plugins
Monitor Apache Spark 3 on Kubernetes using Metrics and Plugins
 
FDMEE script examples
FDMEE script examplesFDMEE script examples
FDMEE script examples
 
Requirements Engineering - Introduction
Requirements Engineering - IntroductionRequirements Engineering - Introduction
Requirements Engineering - Introduction
 
Log analytics with ELK stack
Log analytics with ELK stackLog analytics with ELK stack
Log analytics with ELK stack
 
Capella Days 2021 | Using MBSE to Integrate Engineering Undergraduate Courses...
Capella Days 2021 | Using MBSE to Integrate Engineering Undergraduate Courses...Capella Days 2021 | Using MBSE to Integrate Engineering Undergraduate Courses...
Capella Days 2021 | Using MBSE to Integrate Engineering Undergraduate Courses...
 

En vedette

APEX 5 IR: Guts & Performance
APEX 5 IR:  Guts & PerformanceAPEX 5 IR:  Guts & Performance
APEX 5 IR: Guts & PerformanceKaren Cannell
 
Migrate BI to APEX 5: Are We There Yet?
Migrate BI to APEX 5: Are We There Yet?Migrate BI to APEX 5: Are We There Yet?
Migrate BI to APEX 5: Are We There Yet?Karen Cannell
 
Migrate BI to APEX 5
Migrate BI to APEX 5Migrate BI to APEX 5
Migrate BI to APEX 5Karen Cannell
 
Создание веб-приложений с помощью Oracle APEX
Создание веб-приложений с помощью Oracle APEX Создание веб-приложений с помощью Oracle APEX
Создание веб-приложений с помощью Oracle APEX CUSTIS
 
Проверено и работает. Инструменты Oracle для разработки веб приложений
Проверено и работает. Инструменты Oracle для разработки веб приложенийПроверено и работает. Инструменты Oracle для разработки веб приложений
Проверено и работает. Инструменты Oracle для разработки веб приложенийMedia Gorod
 
Display template deep dive spug
Display template deep dive spugDisplay template deep dive spug
Display template deep dive spugDan Adams
 
RTF Primer: Building and RTF Document
RTF Primer:  Building and RTF DocumentRTF Primer:  Building and RTF Document
RTF Primer: Building and RTF DocumentKaren Cannell
 
APEX 5 IR Guts and Performance
APEX 5 IR Guts and PerformanceAPEX 5 IR Guts and Performance
APEX 5 IR Guts and PerformanceKaren Cannell
 
APEX 5 Interactive Reports: Guts and PErformance
APEX 5 Interactive Reports: Guts and PErformanceAPEX 5 Interactive Reports: Guts and PErformance
APEX 5 Interactive Reports: Guts and PErformanceKaren Cannell
 
MT AG Präsentation Rapid Application Development mit APEX 5
MT AG Präsentation Rapid Application Development mit APEX 5MT AG Präsentation Rapid Application Development mit APEX 5
MT AG Präsentation Rapid Application Development mit APEX 5MT AG
 
APEX Dashboard Competition - Winners
APEX Dashboard Competition - WinnersAPEX Dashboard Competition - Winners
APEX Dashboard Competition - WinnersTobias Arnhold
 
Oracle application express ppt
Oracle application express pptOracle application express ppt
Oracle application express pptAbhinaw Kumar
 
My Top 5 APEX JavaScript API's
My Top 5 APEX JavaScript API'sMy Top 5 APEX JavaScript API's
My Top 5 APEX JavaScript API'sRoel Hartman
 
APEX 5 Demo and Best Practices
APEX 5 Demo and Best PracticesAPEX 5 Demo and Best Practices
APEX 5 Demo and Best PracticesDimitri Gielis
 
Deloitte Innovation
Deloitte InnovationDeloitte Innovation
Deloitte InnovationDWCroese
 
Startup Pitch Deck Template: The Kitchen Sink Appendix
Startup Pitch Deck Template: The Kitchen Sink AppendixStartup Pitch Deck Template: The Kitchen Sink Appendix
Startup Pitch Deck Template: The Kitchen Sink AppendixNextView Ventures
 

En vedette (17)

APEX 5 IR: Guts & Performance
APEX 5 IR:  Guts & PerformanceAPEX 5 IR:  Guts & Performance
APEX 5 IR: Guts & Performance
 
Migrate BI to APEX 5: Are We There Yet?
Migrate BI to APEX 5: Are We There Yet?Migrate BI to APEX 5: Are We There Yet?
Migrate BI to APEX 5: Are We There Yet?
 
Migrate BI to APEX 5
Migrate BI to APEX 5Migrate BI to APEX 5
Migrate BI to APEX 5
 
Создание веб-приложений с помощью Oracle APEX
Создание веб-приложений с помощью Oracle APEX Создание веб-приложений с помощью Oracle APEX
Создание веб-приложений с помощью Oracle APEX
 
Проверено и работает. Инструменты Oracle для разработки веб приложений
Проверено и работает. Инструменты Oracle для разработки веб приложенийПроверено и работает. Инструменты Oracle для разработки веб приложений
Проверено и работает. Инструменты Oracle для разработки веб приложений
 
Display template deep dive spug
Display template deep dive spugDisplay template deep dive spug
Display template deep dive spug
 
RTF Primer: Building and RTF Document
RTF Primer:  Building and RTF DocumentRTF Primer:  Building and RTF Document
RTF Primer: Building and RTF Document
 
APEX 5 IR Guts and Performance
APEX 5 IR Guts and PerformanceAPEX 5 IR Guts and Performance
APEX 5 IR Guts and Performance
 
APEX 5 Interactive Reports: Guts and PErformance
APEX 5 Interactive Reports: Guts and PErformanceAPEX 5 Interactive Reports: Guts and PErformance
APEX 5 Interactive Reports: Guts and PErformance
 
MT AG Präsentation Rapid Application Development mit APEX 5
MT AG Präsentation Rapid Application Development mit APEX 5MT AG Präsentation Rapid Application Development mit APEX 5
MT AG Präsentation Rapid Application Development mit APEX 5
 
APEX Dashboard Competition - Winners
APEX Dashboard Competition - WinnersAPEX Dashboard Competition - Winners
APEX Dashboard Competition - Winners
 
Apex RnD APEX 5 - Printing
Apex RnD APEX 5 - PrintingApex RnD APEX 5 - Printing
Apex RnD APEX 5 - Printing
 
Oracle application express ppt
Oracle application express pptOracle application express ppt
Oracle application express ppt
 
My Top 5 APEX JavaScript API's
My Top 5 APEX JavaScript API'sMy Top 5 APEX JavaScript API's
My Top 5 APEX JavaScript API's
 
APEX 5 Demo and Best Practices
APEX 5 Demo and Best PracticesAPEX 5 Demo and Best Practices
APEX 5 Demo and Best Practices
 
Deloitte Innovation
Deloitte InnovationDeloitte Innovation
Deloitte Innovation
 
Startup Pitch Deck Template: The Kitchen Sink Appendix
Startup Pitch Deck Template: The Kitchen Sink AppendixStartup Pitch Deck Template: The Kitchen Sink Appendix
Startup Pitch Deck Template: The Kitchen Sink Appendix
 

Similaire à APEX 5 Interactive Reports: Deep Dive and Upgrade Advice

Structuring An ABAP Report In An Optimal Way
Structuring An ABAP Report In An Optimal WayStructuring An ABAP Report In An Optimal Way
Structuring An ABAP Report In An Optimal WayBlackvard
 
APEX 5.1 Interactive Grid: What it Means for You and Your Users
APEX 5.1 Interactive Grid: What it Means for You and Your UsersAPEX 5.1 Interactive Grid: What it Means for You and Your Users
APEX 5.1 Interactive Grid: What it Means for You and Your UsersKaren Cannell
 
Creating Interactive Olap Applications With My Sql Enterprise And Mondrian Pr...
Creating Interactive Olap Applications With My Sql Enterprise And Mondrian Pr...Creating Interactive Olap Applications With My Sql Enterprise And Mondrian Pr...
Creating Interactive Olap Applications With My Sql Enterprise And Mondrian Pr...Indus Khaitan
 
ActiveWarehouse/ETL - BI & DW for Ruby/Rails
ActiveWarehouse/ETL - BI & DW for Ruby/RailsActiveWarehouse/ETL - BI & DW for Ruby/Rails
ActiveWarehouse/ETL - BI & DW for Ruby/RailsPaul Gallagher
 
Oracle D2K reports
Oracle D2K reports Oracle D2K reports
Oracle D2K reports Rajesh Ch
 
Offshore Recruiting Training Material
Offshore Recruiting Training MaterialOffshore Recruiting Training Material
Offshore Recruiting Training Materialjohnpaka
 
OFF SHORE RECRUITER TRAINING
OFF SHORE RECRUITER TRAININGOFF SHORE RECRUITER TRAINING
OFF SHORE RECRUITER TRAININGsatish_kumar646
 
Webinar Oracle adf12c EN
Webinar Oracle adf12c ENWebinar Oracle adf12c EN
Webinar Oracle adf12c ENatSistemas
 
Daniel Egan Msdn Tech Days Oc Day2
Daniel Egan Msdn Tech Days Oc Day2Daniel Egan Msdn Tech Days Oc Day2
Daniel Egan Msdn Tech Days Oc Day2Daniel Egan
 
Xml Publisher And Reporting To Excel
Xml Publisher And Reporting To ExcelXml Publisher And Reporting To Excel
Xml Publisher And Reporting To ExcelDuncan Davies
 
Top10 Salesforce.com Admin Tools
Top10 Salesforce.com Admin ToolsTop10 Salesforce.com Admin Tools
Top10 Salesforce.com Admin Toolsdebm_madronasg
 
Beyond PowerPlay: Choose the Right OLAP Tool for Your BI Environment (Cognos...
 Beyond PowerPlay: Choose the Right OLAP Tool for Your BI Environment (Cognos... Beyond PowerPlay: Choose the Right OLAP Tool for Your BI Environment (Cognos...
Beyond PowerPlay: Choose the Right OLAP Tool for Your BI Environment (Cognos...Senturus
 
Business Intelligence solutions using Excel 2013 and Power BI
Business Intelligence solutions using Excel 2013 and Power BIBusiness Intelligence solutions using Excel 2013 and Power BI
Business Intelligence solutions using Excel 2013 and Power BIAlan Koo
 
Big Data Day LA 2016/ Hadoop/ Spark/ Kafka track - Real-time Aggregations, Ap...
Big Data Day LA 2016/ Hadoop/ Spark/ Kafka track - Real-time Aggregations, Ap...Big Data Day LA 2016/ Hadoop/ Spark/ Kafka track - Real-time Aggregations, Ap...
Big Data Day LA 2016/ Hadoop/ Spark/ Kafka track - Real-time Aggregations, Ap...Data Con LA
 
Evolutionary Design Solid
Evolutionary Design SolidEvolutionary Design Solid
Evolutionary Design SolidSai Venkat
 

Similaire à APEX 5 Interactive Reports: Deep Dive and Upgrade Advice (20)

oracle-reports6i
oracle-reports6ioracle-reports6i
oracle-reports6i
 
SAP
SAPSAP
SAP
 
Structuring An ABAP Report In An Optimal Way
Structuring An ABAP Report In An Optimal WayStructuring An ABAP Report In An Optimal Way
Structuring An ABAP Report In An Optimal Way
 
APEX 5.1 Interactive Grid: What it Means for You and Your Users
APEX 5.1 Interactive Grid: What it Means for You and Your UsersAPEX 5.1 Interactive Grid: What it Means for You and Your Users
APEX 5.1 Interactive Grid: What it Means for You and Your Users
 
Alteryx Presentation
Alteryx PresentationAlteryx Presentation
Alteryx Presentation
 
Creating Interactive Olap Applications With My Sql Enterprise And Mondrian Pr...
Creating Interactive Olap Applications With My Sql Enterprise And Mondrian Pr...Creating Interactive Olap Applications With My Sql Enterprise And Mondrian Pr...
Creating Interactive Olap Applications With My Sql Enterprise And Mondrian Pr...
 
ActiveWarehouse/ETL - BI & DW for Ruby/Rails
ActiveWarehouse/ETL - BI & DW for Ruby/RailsActiveWarehouse/ETL - BI & DW for Ruby/Rails
ActiveWarehouse/ETL - BI & DW for Ruby/Rails
 
Oracle D2K reports
Oracle D2K reports Oracle D2K reports
Oracle D2K reports
 
Offshore Recruiting Training Material
Offshore Recruiting Training MaterialOffshore Recruiting Training Material
Offshore Recruiting Training Material
 
OFF SHORE RECRUITER TRAINING
OFF SHORE RECRUITER TRAININGOFF SHORE RECRUITER TRAINING
OFF SHORE RECRUITER TRAINING
 
Webinar Oracle adf12c EN
Webinar Oracle adf12c ENWebinar Oracle adf12c EN
Webinar Oracle adf12c EN
 
Daniel Egan Msdn Tech Days Oc Day2
Daniel Egan Msdn Tech Days Oc Day2Daniel Egan Msdn Tech Days Oc Day2
Daniel Egan Msdn Tech Days Oc Day2
 
Xml Publisher And Reporting To Excel
Xml Publisher And Reporting To ExcelXml Publisher And Reporting To Excel
Xml Publisher And Reporting To Excel
 
Os Napier
Os NapierOs Napier
Os Napier
 
Intro to Application Express
Intro to Application ExpressIntro to Application Express
Intro to Application Express
 
Top10 Salesforce.com Admin Tools
Top10 Salesforce.com Admin ToolsTop10 Salesforce.com Admin Tools
Top10 Salesforce.com Admin Tools
 
Beyond PowerPlay: Choose the Right OLAP Tool for Your BI Environment (Cognos...
 Beyond PowerPlay: Choose the Right OLAP Tool for Your BI Environment (Cognos... Beyond PowerPlay: Choose the Right OLAP Tool for Your BI Environment (Cognos...
Beyond PowerPlay: Choose the Right OLAP Tool for Your BI Environment (Cognos...
 
Business Intelligence solutions using Excel 2013 and Power BI
Business Intelligence solutions using Excel 2013 and Power BIBusiness Intelligence solutions using Excel 2013 and Power BI
Business Intelligence solutions using Excel 2013 and Power BI
 
Big Data Day LA 2016/ Hadoop/ Spark/ Kafka track - Real-time Aggregations, Ap...
Big Data Day LA 2016/ Hadoop/ Spark/ Kafka track - Real-time Aggregations, Ap...Big Data Day LA 2016/ Hadoop/ Spark/ Kafka track - Real-time Aggregations, Ap...
Big Data Day LA 2016/ Hadoop/ Spark/ Kafka track - Real-time Aggregations, Ap...
 
Evolutionary Design Solid
Evolutionary Design SolidEvolutionary Design Solid
Evolutionary Design Solid
 

Plus de Karen Cannell

APEX Interactive Grids: Standardize for Sanity
APEX Interactive Grids: Standardize for SanityAPEX Interactive Grids: Standardize for Sanity
APEX Interactive Grids: Standardize for SanityKaren Cannell
 
Oracle Low Code Lowdown: APEX vs VBCS
Oracle Low Code Lowdown: APEX vs VBCSOracle Low Code Lowdown: APEX vs VBCS
Oracle Low Code Lowdown: APEX vs VBCSKaren Cannell
 
Validate Your Validations: Both Sides Now
Validate Your Validations: Both Sides NowValidate Your Validations: Both Sides Now
Validate Your Validations: Both Sides NowKaren Cannell
 
APEX Grids: Standardize for Productivity and Sanity
APEX Grids: Standardize for Productivity and SanityAPEX Grids: Standardize for Productivity and Sanity
APEX Grids: Standardize for Productivity and SanityKaren Cannell
 
Low Code Lowdown: APEX vs Visual Builder: Which is For You?
Low Code Lowdown:  APEX vs Visual Builder: Which is For You? Low Code Lowdown:  APEX vs Visual Builder: Which is For You?
Low Code Lowdown: APEX vs Visual Builder: Which is For You? Karen Cannell
 
Boston APEX Meetup ~ Standardize Your Grids
Boston APEX Meetup ~ Standardize Your GridsBoston APEX Meetup ~ Standardize Your Grids
Boston APEX Meetup ~ Standardize Your GridsKaren Cannell
 
APEX JET Charts: Data Viz now!
APEX JET Charts:  Data Viz now!APEX JET Charts:  Data Viz now!
APEX JET Charts: Data Viz now!Karen Cannell
 
APEX Interactive Grid API Essentials: The Stuff You Will Really Use
APEX Interactive Grid API Essentials:  The Stuff You Will Really UseAPEX Interactive Grid API Essentials:  The Stuff You Will Really Use
APEX Interactive Grid API Essentials: The Stuff You Will Really UseKaren Cannell
 
Mentors and Mentoring: Steps to Take When You are Stuck
Mentors and Mentoring: Steps to Take When You are StuckMentors and Mentoring: Steps to Take When You are Stuck
Mentors and Mentoring: Steps to Take When You are StuckKaren Cannell
 
UTOUG Training Days 2019 APEX Interactive Grids: API Essentials, the Stuff Yo...
UTOUG Training Days 2019 APEX Interactive Grids: API Essentials, the Stuff Yo...UTOUG Training Days 2019 APEX Interactive Grids: API Essentials, the Stuff Yo...
UTOUG Training Days 2019 APEX Interactive Grids: API Essentials, the Stuff Yo...Karen Cannell
 
UTOUG Training Days 2019 Voyage to Visual Builder Cloud Service
UTOUG Training Days 2019 Voyage to Visual Builder Cloud ServiceUTOUG Training Days 2019 Voyage to Visual Builder Cloud Service
UTOUG Training Days 2019 Voyage to Visual Builder Cloud ServiceKaren Cannell
 
RMOUG Training Days 2019 Analytic Views for Mortals: Worth A Look?
RMOUG Training Days 2019 Analytic Views for Mortals: Worth A Look?RMOUG Training Days 2019 Analytic Views for Mortals: Worth A Look?
RMOUG Training Days 2019 Analytic Views for Mortals: Worth A Look?Karen Cannell
 
RMOUG Training Days 2019 Oracle JET Charts in APEX: Data Viz Now!
RMOUG Training Days 2019 Oracle JET Charts in APEX: Data Viz Now!RMOUG Training Days 2019 Oracle JET Charts in APEX: Data Viz Now!
RMOUG Training Days 2019 Oracle JET Charts in APEX: Data Viz Now!Karen Cannell
 
APEX 18 Interactive Grids: And Them Some, Part 2
APEX 18 Interactive Grids: And Them Some, Part 2APEX 18 Interactive Grids: And Them Some, Part 2
APEX 18 Interactive Grids: And Them Some, Part 2Karen Cannell
 
APEX Interactive Grids: Essentials and Then Some, Part 1
APEX Interactive Grids: Essentials and Then Some, Part 1APEX Interactive Grids: Essentials and Then Some, Part 1
APEX Interactive Grids: Essentials and Then Some, Part 1Karen Cannell
 
East Coast Oracle 2018 APEX Charts - Data Viz Now
East Coast Oracle 2018 APEX Charts - Data Viz NowEast Coast Oracle 2018 APEX Charts - Data Viz Now
East Coast Oracle 2018 APEX Charts - Data Viz NowKaren Cannell
 
Utah Geek Events Big Mountain Data Mastering Oracle Interactive Grids
Utah Geek Events Big Mountain Data Mastering Oracle Interactive GridsUtah Geek Events Big Mountain Data Mastering Oracle Interactive Grids
Utah Geek Events Big Mountain Data Mastering Oracle Interactive GridsKaren Cannell
 
Utah Geek Events Big Mountain Data: Oracle Analytic Views: Worth It?
Utah Geek Events Big Mountain Data: Oracle Analytic Views: Worth It? Utah Geek Events Big Mountain Data: Oracle Analytic Views: Worth It?
Utah Geek Events Big Mountain Data: Oracle Analytic Views: Worth It? Karen Cannell
 
Going to the Grid: Tabular Form Edition (Oracle APEX Editable Interactive Grids)
Going to the Grid: Tabular Form Edition (Oracle APEX Editable Interactive Grids)Going to the Grid: Tabular Form Edition (Oracle APEX Editable Interactive Grids)
Going to the Grid: Tabular Form Edition (Oracle APEX Editable Interactive Grids)Karen Cannell
 
Oracle APEX Interactive Grid Essentials
Oracle APEX Interactive Grid EssentialsOracle APEX Interactive Grid Essentials
Oracle APEX Interactive Grid EssentialsKaren Cannell
 

Plus de Karen Cannell (20)

APEX Interactive Grids: Standardize for Sanity
APEX Interactive Grids: Standardize for SanityAPEX Interactive Grids: Standardize for Sanity
APEX Interactive Grids: Standardize for Sanity
 
Oracle Low Code Lowdown: APEX vs VBCS
Oracle Low Code Lowdown: APEX vs VBCSOracle Low Code Lowdown: APEX vs VBCS
Oracle Low Code Lowdown: APEX vs VBCS
 
Validate Your Validations: Both Sides Now
Validate Your Validations: Both Sides NowValidate Your Validations: Both Sides Now
Validate Your Validations: Both Sides Now
 
APEX Grids: Standardize for Productivity and Sanity
APEX Grids: Standardize for Productivity and SanityAPEX Grids: Standardize for Productivity and Sanity
APEX Grids: Standardize for Productivity and Sanity
 
Low Code Lowdown: APEX vs Visual Builder: Which is For You?
Low Code Lowdown:  APEX vs Visual Builder: Which is For You? Low Code Lowdown:  APEX vs Visual Builder: Which is For You?
Low Code Lowdown: APEX vs Visual Builder: Which is For You?
 
Boston APEX Meetup ~ Standardize Your Grids
Boston APEX Meetup ~ Standardize Your GridsBoston APEX Meetup ~ Standardize Your Grids
Boston APEX Meetup ~ Standardize Your Grids
 
APEX JET Charts: Data Viz now!
APEX JET Charts:  Data Viz now!APEX JET Charts:  Data Viz now!
APEX JET Charts: Data Viz now!
 
APEX Interactive Grid API Essentials: The Stuff You Will Really Use
APEX Interactive Grid API Essentials:  The Stuff You Will Really UseAPEX Interactive Grid API Essentials:  The Stuff You Will Really Use
APEX Interactive Grid API Essentials: The Stuff You Will Really Use
 
Mentors and Mentoring: Steps to Take When You are Stuck
Mentors and Mentoring: Steps to Take When You are StuckMentors and Mentoring: Steps to Take When You are Stuck
Mentors and Mentoring: Steps to Take When You are Stuck
 
UTOUG Training Days 2019 APEX Interactive Grids: API Essentials, the Stuff Yo...
UTOUG Training Days 2019 APEX Interactive Grids: API Essentials, the Stuff Yo...UTOUG Training Days 2019 APEX Interactive Grids: API Essentials, the Stuff Yo...
UTOUG Training Days 2019 APEX Interactive Grids: API Essentials, the Stuff Yo...
 
UTOUG Training Days 2019 Voyage to Visual Builder Cloud Service
UTOUG Training Days 2019 Voyage to Visual Builder Cloud ServiceUTOUG Training Days 2019 Voyage to Visual Builder Cloud Service
UTOUG Training Days 2019 Voyage to Visual Builder Cloud Service
 
RMOUG Training Days 2019 Analytic Views for Mortals: Worth A Look?
RMOUG Training Days 2019 Analytic Views for Mortals: Worth A Look?RMOUG Training Days 2019 Analytic Views for Mortals: Worth A Look?
RMOUG Training Days 2019 Analytic Views for Mortals: Worth A Look?
 
RMOUG Training Days 2019 Oracle JET Charts in APEX: Data Viz Now!
RMOUG Training Days 2019 Oracle JET Charts in APEX: Data Viz Now!RMOUG Training Days 2019 Oracle JET Charts in APEX: Data Viz Now!
RMOUG Training Days 2019 Oracle JET Charts in APEX: Data Viz Now!
 
APEX 18 Interactive Grids: And Them Some, Part 2
APEX 18 Interactive Grids: And Them Some, Part 2APEX 18 Interactive Grids: And Them Some, Part 2
APEX 18 Interactive Grids: And Them Some, Part 2
 
APEX Interactive Grids: Essentials and Then Some, Part 1
APEX Interactive Grids: Essentials and Then Some, Part 1APEX Interactive Grids: Essentials and Then Some, Part 1
APEX Interactive Grids: Essentials and Then Some, Part 1
 
East Coast Oracle 2018 APEX Charts - Data Viz Now
East Coast Oracle 2018 APEX Charts - Data Viz NowEast Coast Oracle 2018 APEX Charts - Data Viz Now
East Coast Oracle 2018 APEX Charts - Data Viz Now
 
Utah Geek Events Big Mountain Data Mastering Oracle Interactive Grids
Utah Geek Events Big Mountain Data Mastering Oracle Interactive GridsUtah Geek Events Big Mountain Data Mastering Oracle Interactive Grids
Utah Geek Events Big Mountain Data Mastering Oracle Interactive Grids
 
Utah Geek Events Big Mountain Data: Oracle Analytic Views: Worth It?
Utah Geek Events Big Mountain Data: Oracle Analytic Views: Worth It? Utah Geek Events Big Mountain Data: Oracle Analytic Views: Worth It?
Utah Geek Events Big Mountain Data: Oracle Analytic Views: Worth It?
 
Going to the Grid: Tabular Form Edition (Oracle APEX Editable Interactive Grids)
Going to the Grid: Tabular Form Edition (Oracle APEX Editable Interactive Grids)Going to the Grid: Tabular Form Edition (Oracle APEX Editable Interactive Grids)
Going to the Grid: Tabular Form Edition (Oracle APEX Editable Interactive Grids)
 
Oracle APEX Interactive Grid Essentials
Oracle APEX Interactive Grid EssentialsOracle APEX Interactive Grid Essentials
Oracle APEX Interactive Grid Essentials
 

Dernier

Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyKhushali Kathiriya
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
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 Takeoffsammart93
 
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 businesspanagenda
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingEdi Saputra
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
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 FMESafe Software
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobeapidays
 
Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024The Digital Insurer
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MIND CTI
 
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, ...apidays
 
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...Martijn de Jong
 
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 TerraformAndrey Devyatkin
 

Dernier (20)

Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
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
 
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
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
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
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
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, ...
 
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...
 
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
 

APEX 5 Interactive Reports: Deep Dive and Upgrade Advice

  • 1. TH Technology APEX 5 Interactive Reports … Deep Dive Prelude …
  • 4. TH Technology APEX 5 Interactive Reports … Deep Dive
  • 5. TH Technology APEX 5 Interactive Reports … Deep Dive About Me … Karen Cannell ~ Consultant, TH Technology Mechanical/SW Engineer - Analyzed, designed, developed, converted, upgraded, enhanced legacy & database applications for 25+ years Building APEX applications for government, medical, engineering industries since HTMLDB Leveraging the Oracle 10g,11g, 12c suite of tools Oracle Ace Associate Editor, Technical Journal Send ODTUG Technical Journal Content!
  • 6. TH Technology APEX 5 Interactive Reports … Deep Dive We Have Books … Expert Oracle Application Express, APress 2015 Report Printing Beginning Application Express 4.2, APress, 2013 Agile Oracle Application Express APress, 2012
  • 7. TH Technology APEX 5 Interactive Reports … Deep Dive About You … New to APEX? APEX Experience? APEX Versions? IR Habits? IR Customizations? New Stuff or Old? APEX5 Ready?
  • 8. TH Technology APEX 5 Interactive Reports … Deep Dive NOTE TO EARLY SLIDE DOWNLOADERS Many of these slides HAVE CHANGED as APEX 5 is Live and I find more neat stuff to add for you every day. Please download the updated slides from the Kscope15 site or email kcannell@thtechnology.com
  • 9. TH Technology APEX 5 Interactive Reports … Deep Dive Agenda APEX 5 IR New Features Inside and Out Caveats: Limitations and Workarounds Changes IR CSS and JS Changes
  • 10. TH Technology APEX 5 Interactive Reports … Deep Dive APEX IR 30-second Intro Introduced in APEX 3.1 Instead of Classic Reports One –Way Upgrade Search Bar Activity Menu Select,Filter,Aggregate,Highlight,Chart,Break,Sort, Compute,Flashback,Download,Save Report, Group By, Pivot User Control, Developer Effort
  • 11. TH Technology APEX 5 Interactive Reports … Deep Dive Developer and User Team “though APEX IR give the end user great power to format and arrange reports to their needs, the developer needs to be aware of end user needs to prepare and deliver the appropriate APEX IR query to support them.” For maximum value: Know Your Users Know What Your Users Do
  • 12. TH Technology APEX 5 Interactive Reports … Deep Dive Agenda APEX 5.0 New Features Inside and Out
  • 13. TH Technology APEX 5 Interactive Reports … Deep Dive APEX 5.0 New Features Appearance, Usability and Accessibility Accessible Menus Updated, Font Icons Modal Dialogs Action Menu Group By Enhancements column Limit increase Pivot Subscription – End is now End Date Manage Saved Reports and Subscriptions at Application Level
  • 14. TH Technology APEX 5 Interactive Reports … Deep Dive APEX 5.0 New Features, cont’d “Multiple Interactive Reports” More than One IR Per Page! to do this one … Things Have Changed
  • 15. TH Technology APEX 5 Interactive Reports … Deep Dive Things Look Different … Page Designer Usability, Appearance, Accessibility Menus Modal Dialogs Icons
  • 16. TH Technology APEX 5 Interactive Reports … Deep Dive Page Designer – Where to Find IR Things
  • 17. TH Technology APEX 5 Interactive Reports … Deep Dive Column Heading Menu APEX 4.2 Usability, Appearance, Accessibility
  • 18. TH Technology APEX 5 Interactive Reports … Deep Dive Column Heading Menu on Click APEX 5 Accessible by Tab Usability, Appearance, Accessibility
  • 19. TH Technology APEX 5 Interactive Reports … Deep Dive Developer - Report Attributes Selective End User Features Per Report Per Column
  • 20. TH Technology APEX 5 Interactive Reports … Deep Dive Page Designer - Report Attributes Property Editor - Attributes
  • 21. TH Technology APEX 5 Interactive Reports … Deep Dive <= APEX 4.2 Action Menu
  • 22. TH Technology APEX 5 Interactive Reports … Deep Dive APEX 5+ Action Menu
  • 23. TH Technology APEX 5 Interactive Reports … Deep Dive Modal Dialogs Pulldown Dialogs are now Modal “Improved Usability” Better Appearance Improved Accessibility Column Headings Click vs. Mouseover Usability, Appearance, Accessibility
  • 24. TH Technology APEX 5 Interactive Reports … Deep Dive Things ARE Different … Action Menu Enhancements GROUP BY PIVOT New CSS Classes, ID’s New JavaScript / jQuery Let’s Look at New Features First …
  • 25. TH Technology APEX 5 Interactive Reports … Deep Dive GROUP BY Up to 8 Columns (up from 3) APEX 3 – Build Your Own APEX 4 - 3 Column Group By APEX 5 – 8 Column Group By GROUP BY is Single View, Fixed Report Other IR Features Disabled GROUP BY or Main Report or Chart or Pivot Download Behavior Action Menu New / Enhanced Actions
  • 26. TH Technology APEX 5 Interactive Reports … Deep Dive Pivot Old Way Pivot via SQL Statement Diff Approach for Known Columns vs Unknown Columns Tedious At Best New Way Point – Click – Save - Run Demo Limitations Download Behavior Other IR Options Disabled Action Menu New / Enhanced Actions
  • 27. TH Technology APEX 5 Interactive Reports … Deep Dive Traditional Pivot Query SELECT agency, area_code, year, MAX ( CASE WHEN miy = '01' THEN sum_costs ELSE NULL END) jan_costs, MAX ( CASE WHEN miy = '02' THEN sum_costs ELSE NULL END) feb_costs, MAX ( CASE WHEN miy = '03' THEN sum_costs ELSE NULL END) mar_costs, MAX ( CASE WHEN miy = '04' THEN sum_costs ELSE NULL END) apr_costs, MAX ( CASE WHEN miy = '05' THEN sum_costs ELSE NULL END) may_costs, MAX ( CASE WHEN miy = '06' THEN sum_costs ELSE NULL END) jun_costs, MAX ( CASE WHEN miy = '07' THEN sum_costs ELSE NULL END) jul_costs, MAX ( CASE WHEN miy = '08' THEN sum_costs ELSE NULL END) aug_costs, MAX ( CASE WHEN miy = '09' THEN sum_costs ELSE NULL END) sep_costs, MAX ( CASE WHEN miy = '10' THEN sum_costs ELSE NULL END) oct_costs, MAX ( CASE WHEN miy = '11' THEN sum_costs ELSE NULL END) nov_costs, MAX ( CASE WHEN miy = '12' THEN sum_costs ELSE NULL END) dec_costs, MAX ( CASE WHEN miy = '00' THEN sum_costs ELSE NULL END) unk_costs, MAX( sum_costs) yr_costs FROM ( SELECT … FROM … WHERE GROUP BY ROLLUP ( … ) ) WHERE … GROUP BY agency, area_code, year Traditional PIVOT Query Options
  • 28. TH Technology APEX 5 Interactive Reports … Deep Dive SELECT agency, area_code, year, MAX ( CASE WHEN miy = '01' THEN sum_costs ELSE NULL END) jan_costs, MAX ( CASE WHEN miy = '02' THEN sum_costs ELSE NULL END) feb_costs, MAX ( CASE WHEN miy = '03' THEN sum_costs ELSE NULL END) mar_costs, MAX ( CASE WHEN miy = '04' THEN sum_costs ELSE NULL END) apr_costs, MAX ( CASE WHEN miy = '05' THEN sum_costs ELSE NULL END) may_costs, … … Known Columns Only Traditional Pivot Query Traditional PIVOT Query Options
  • 29. TH Technology APEX 5 Interactive Reports … Deep Dive Pivot Tables – Known Columns Known Columns and Column Names ex: Project by Status Budget by Month vs Unknown Columns and Column Names ex: Project by Year Status by Project <Data> by Year Standard APEX IR Needs Column Names Traditional PIVOT Query Options
  • 30. TH Technology APEX 5 Interactive Reports … Deep Dive Pivot Queries Traditional SQL MAX ( CASE or DECODE …) ) CASE to filter values into columns MAX to flatten the results Need Known Columns 11g PIVOT and UNPIVOT PIVOT PIVOT … XML http://www.oracle.com/technology/pub/articles/oracle- database-11g-top-features/11g-pivot.html Traditional PIVOT Query Options
  • 31. TH Technology APEX 5 Interactive Reports … Deep Dive Pivot Query Options, cont’d PIVOT PL/SQL Package - Kyte In Expert One on One Dynamic SQL Pivoting - AMIS Solution TYPE, TYPE BODY Pipelined Table Function http://technology.amis.nl/blog/1207/dynamic-sql- pivoting-stealing-antons-thunder Traditional PIVOT Query Options
  • 32. TH Technology APEX 5 Interactive Reports … Deep Dive PIVOT - The APEX 5 Easy Way Action Menu New / Enhanced Actions
  • 33. TH Technology APEX 5 Interactive Reports … Deep Dive Subscription – Pre APEX 5.0 “End” is a Repeat Count Action Menu New / Enhanced Actions
  • 34. TH Technology APEX 5 Interactive Reports … Deep Dive Subscription – APEX 5.0 + “End” is a true End Date Action Menu New / Enhanced Actions
  • 35. TH Technology APEX 5 Interactive Reports … Deep Dive Subscription, Download Email Do You Really Want Users Emailing Data? Consider: EMail Filters Tracking Limit Report Data Disable Subscription Disable Download Email
  • 36. TH Technology APEX 5 Interactive Reports … Deep Dive Manage at Application Level Administration for Saved Reports, Subscriptions Now at Application Level Used to Be Each Interactive Report Page
  • 37. TH Technology APEX 5 Interactive Reports … Deep Dive Floating Column Headers Heading Attribute Page – Aligns Multiple IR Headers Together w Top of Page Region – “Sticks” w/in Region Scroll None – Headers Scroll off the page Universal Theme Only
  • 38. TH Technology APEX 5 Interactive Reports … Deep Dive Floating Column Headers Yeah!
  • 39. TH Technology APEX 5 Interactive Reports … Deep Dive Multiple Interactive Reports “Any Number” of IR Per Page! Thank you! …
  • 40. TH Technology APEX 5 Interactive Reports … Deep Dive Refresher Course Underused IR Features: IR_<COLUMN_NAME> CIR – Clear IR (clear all) RIR – Reset IR ( to default settings)
  • 41. TH Technology APEX 5 Interactive Reports … Deep Dive Reference IR Columns and Filter Values IREQ_<column_alias> Equals IR _<column_alias> Equals IRLT_<column_alias> < IRLTE_<column_alias> <= IRGT_<column_alias> > IRGTE_<column_alias> >= IRLIKE_<column_alias> vSQL LIKE IRN_<column_alias> NULL IRNN_<column_alias> v NOT NULL IRC_<column_alias> Contains IRNC_<column_alias> Not Contains No BETWEEN, IN, NOT IN
  • 42. TH Technology APEX 5 Interactive Reports … Deep Dive Pre APEX 5 – IR%_COLUMN Single IR On the Page: Reference IR Column Name IR_COLUMN_NAME Create and use IR filter options: IR%_ COLUMN_NAME
  • 43. TH Technology APEX 5 Interactive Reports … Deep Dive Multi IR: – IR%[STATIC_ID]_COLUMN Multiple IRs On the Page: Reference IR [Static ID]Column Name IR[STATIC_ID] _COLUMN_NAME Create and use IR filter options: IR%[STATIC_ID]_COLUMN_NAME
  • 44. TH Technology APEX 5 Interactive Reports … Deep Dive Assign IR STATIC_ID
  • 45. TH Technology APEX 5 Interactive Reports … Deep Dive Assign Column Link Attributes
  • 46. TH Technology APEX 5 Interactive Reports … Deep Dive Assign Column Link Attributes Not Easy To Find in Page Designer … Click on Target …
  • 47. TH Technology APEX 5 Interactive Reports … Deep Dive Assign Column Link Attributes Link Target is a Modal Popup
  • 48. TH Technology APEX 5 Interactive Reports … Deep Dive Reference IR Columns and Filter Values IREQ[STATIC_ID]_<column_alias> Equals IR[STATIC_ID]_<column_alias> Equals IRLT[STATIC_ID]_<column_alias> < IRLTE[STATIC_ID]_<column_alias> <= IRGT[STATIC_ID]_<column_alias> > IRGTE[STATIC_ID]_<column_alias> >= IRLIKE[STATIC_ID]_<column_alias> SQL LIKE IRN[STATIC_ID]_<column_alias> NULL IRNN[STATIC_ID]_<column_alias> NOT NULL IRC[STATIC_ID]_<column_alias> Contains IRNC[STATIC_ID]_<column_alias> Not Contains No BETWEEN, IN, NOT IN
  • 49. TH Technology APEX 5 Interactive Reports … Deep Dive Developer Features – CIR and RIR To Clear or Reset ONE or a specific IR on a page: CIR[STATIC_ID] and RIR[STATIC_ID] Do Not Work Use IR[STATIC_ID] in REQUEST to Indicate IR to CIR or RIR: f?p=MYAPP:100:&SESSION.:IR[STATIC_ID]:NO:CIR
  • 50. TH Technology APEX 5 Interactive Reports … Deep Dive Multi IR Demo – “The Dashboard”
  • 51. TH Technology APEX 5 Interactive Reports … Deep Dive Imagine … Using IREQ[STATIC_ID]_COLUMN to Link/Jump/Drill Between IRs on the Same Page …
  • 52. TH Technology APEX 5 Interactive Reports … Deep Dive Imagine … Passing IREQ[STATIC_ID]_COLUMN to Control a Set of IRs on the Same Page
  • 53. TH Technology APEX 5 Interactive Reports … Deep Dive Use The Right Tool
  • 54. TH Technology APEX 5 Interactive Reports … Deep Dive Agenda: Caveats Limitations … How To Deal w Them
  • 55. TH Technology APEX 5 Interactive Reports … Deep Dive Limitations One Size Fits All Features Minor & Less-Known Limitations Still have 32K row limit Charts: 1000 element limit Filters: Commas, SYSDATE, Bugs w/GTE Links Aggregates: Not BI Chart, Group By, Pivot Are “Single View” Other IR Functions Disabled or Limited on these Views
  • 56. TH Technology APEX 5 Interactive Reports … Deep Dive Too Much? “One-Size-Fits-All” Really ? Developer Can Enable/Disable per IR (as of APEX 5) per Column Developer Can Add Condition on Link Column Conditional Pages Pre APEX 5, Need multiple IRs on multiple pages for more complex authorizations
  • 57. TH Technology APEX 5 Interactive Reports … Deep Dive APEX IR: Too Much? Use The Settings Declaratively Turn Off Features Disable Control Summary (Settings) display:none; On a-IRR-controlPanel or specific a-IRR-<element> Provide Manually-created RESET or CLEAR buttons (Future) API or Declarative Setting?
  • 58. TH Technology APEX 5 Interactive Reports … Deep Dive APEX IR: Not Enough? Extend the Toolbar (Widget) Outside the Toolbox Provide Manually-created Custom Buttons Provide Custom Actions Plugins Whatever You Can Code … Unless You Use Standard API, Not Supported
  • 59. TH Technology APEX 5 Interactive Reports … Deep Dive Limitations – Developers & Users 32K Row Limit Search Bar All-Column Not DATE-Savvy Aggregate Behavior IR is NOT BI Savvy Know Your Users
  • 60. TH Technology APEX 5 Interactive Reports … Deep Dive Limitations – Dynamic DATE filter SYSDATE as Filter Value Use “Is in the last” w/ large value - User Build a Specific URL Filter and Link Column - Dev Build SQL Report to look like a Menu Ex: Bonus Eligible Date Build Derived Column – Dev Ex: CASE WHEN <condition> THEN ‘Yes’ ELSE ‘No’ END overdue
  • 61. TH Technology APEX 5 Interactive Reports … Deep Dive Aggregate Behavior – Not BI Original Report Display Region: West ************ State County City Population CA Orange County Irvine 100 CA Orange County Orange 200 CA Los Angeles Hollywood 300 CA Los Angeles Universal City 400 Sum 1,000 Actual APEX IR Result Region: West ************ State County Population CA Orange County 100 CA Orange County 200 CA Los Angeles 300 CA Los Angeles 400 Sum 1,000 Intended Result Region: West ************ State County Population CA Orange County 300 CA Los Angeles 700 Sum 1,000
  • 62. TH Technology APEX 5 Interactive Reports … Deep Dive Limitations – Developers & Users Charts Chart or Data Set (or Group By or Pivot) Charting Limits 1000 elements Vert, Horiz., Line; 2D Pie Aggregate then chart? Chart Labels Vertical Bart Chart may not Display All Labels Chart Education!
  • 63. TH Technology APEX 5 Interactive Reports … Deep Dive Limitations – Developers & Users Search Columns Search Drop Down – Max # is 1000 Columns Report Attributes List – Max 100 Columns Volume of Data Returned ? ~ 85K Rows? THINK … what do users really need?
  • 64. TH Technology APEX 5 Interactive Reports … Deep Dive Limitations – Developers & Users APEX IR is NOT MS Excel !! Arrow Up/Down Right/Left Navigation Freeze Columns, Freeze Headers WYSIWYG Printing Download Data Set RETRAINING MAY BE REQUIRED ELSE Plug-Ins What do users really need?
  • 65. TH Technology APEX 5 Interactive Reports … Deep Dive Agenda: Changes CSS and JS Changes Appearance
  • 66. TH Technology APEX 5 Interactive Reports … Deep Dive APEX 5.0 Remember … 2014
  • 67. TH Technology APEX 5 Interactive Reports … Deep Dive APEX 5.0 2015
  • 68. TH Technology APEX 5 Interactive Reports … Deep Dive APEX 5.0 IR 2015 Changes … differentt bowie image Usability, Appearance, Accessibility
  • 69. TH Technology APEX 5 Interactive Reports … Deep Dive CSS Changes Different Classes Different Ids apexir_<element> ids replaced by a-irr-<…> classes and STATIC_ID_<…> ids
  • 70. TH Technology APEX 5 Interactive Reports … Deep Dive
  • 71. TH Technology APEX 5 Interactive Reports … Deep Dive
  • 72. TH Technology APEX 5 Interactive Reports … Deep Dive Refactor Example - CSS Dynamic Action – APEX 4.2 Custom jQuery w CSS References var rows = $('table.apexir_WORKSHEET_DATA tbody tr:gt(0)'); rows.each(function(idx) { var Flags = $(this).children("td[headers='FLAGS']").text(); if( Flags == 'Outlier') { $(this).children("td").css("background-color","#FCF067"); } });
  • 73. TH Technology APEX 5 Interactive Reports … Deep Dive STATIC_ID on Column
  • 74. TH Technology APEX 5 Interactive Reports … Deep Dive Refactor Example – APEX 5.0 Dynamic Action – APEX 5.0 Style var rows = $('table.a-IRR-table tbody tr:gt(0)'); rows.each(function(idx) { var Flags = $(this).children("td[headers=‘FLAGS']").text(); if( Flags == 'Outlier') { $(this).children("td").css("background-color","#FCF067"); } });
  • 75. TH Technology APEX 5 Interactive Reports … Deep Dive JavaScript Changes New Code Base jQuery UI Widget Factory widget.interactivereport.js No Inline Event Handlers No gReport No APIs
  • 76. TH Technology APEX 5 Interactive Reports … Deep Dive widget.interactiveReport.js Same Name Different Contents jQuery UI Widget Factory
  • 77. TH Technology APEX 5 Interactive Reports … Deep Dive What !!?? No gReport No Inline Event Handlers All Private Methods No Supported APIs (yet) APIs are Planned for APEX 5.1 Exactly What TBD
  • 78. TH Technology APEX 5 Interactive Reports … Deep Dive APEX 4.2 Search Icon gReport.dialog2
  • 79. TH Technology APEX 5 Interactive Reports … Deep Dive APEX 4.2 IR Toolbar Go Button gReport.search(‘SEARCH’)
  • 80. TH Technology APEX 5 Interactive Reports … Deep Dive APEX 5 Toolbar Go Button No gReport No Visible Call/Event
  • 81. TH Technology APEX 5 Interactive Reports … Deep Dive 5.0 Changes - Impact on Existing Code Appearance CSS (less of a problem due to Universal Theme) PL/SQL Collection Logic, References JavaScript Custom Code, References Dynamic Actions Whatever was Done Non-Standard Will Need Refactoring! Usability, Appearance, Accessibility
  • 82. TH Technology APEX 5 Interactive Reports … Deep Dive Supported vs UnSupported Anything that Uses Standard API …is Supported ex: apexrefresh for IR refreshes apex.event.trigger( "#IRStaticID", "apexrefresh" ); Anything Else …. gReport.search - Not Supported
  • 83. TH Technology APEX 5 Interactive Reports … Deep Dive Supported RIR and CIR Alts APEX_IR.RESET_REPORT( p_page_id IN NUMBER, p_region_id IN NUMBER, p_report_id IN NUMBER DEFAULT NULL); and APEX_IR.CLEAR_REPORT( p_page_id IN NUMBER, p_region_id IN NUMBER, p_report_id IN NUMBER DEFAULT NULL);
  • 84. TH Technology APEX 5 Interactive Reports … Deep Dive Safe Harbor?
  • 85. TH Technology APEX 5 Interactive Reports … Deep Dive Understanding the IR Widgets APEX 5.0 Interactive Report Customization, John Snyders http://hardlikesoftware.com/weblog/2015/05/12/a pex-5-0-interactive-report-customization/ jQuery UI: How to Use the Widget Factory https://learn.jquery.com/jquery-ui/widget- factory/how-to-use-the-widget-factory/
  • 86. TH Technology APEX 5 Interactive Reports … Deep Dive Widgets 101 Widget Options $(selector).widgetName("option"); Get/Set Widget Option $(selector).widgetName("option“,”optionname”); $(selector).widgetName("option“,”optionname”,100); Widget Method Parameters
  • 87. TH Technology APEX 5 Interactive Reports … Deep Dive Naming IR Widget: Append _ir to IR Static ID DEPT_IR_ir Menu Widget Append _actions_menu to IR Static Id DEPT_IR_actions_menu
  • 88. TH Technology APEX 5 Interactive Reports … Deep Dive Knowing the Names … Refresh an IR: $("#DEMO_IR_ir“).interactiveReport("refresh"); Get the Current Rows Per Page: $("#DEMO_IR_ir").interactiveReport("option", "currentRowsPerPage"); Set the Current Rows Per Page: $("#DEMO_IR_ir").interactiveReport("option", "currentRowsPerPage”, 50);
  • 89. TH Technology APEX 5 Interactive Reports … Deep Dive Knowing the Names … Open Download Dialog $("#DEMO_IR_actions_menu").menu("find", "irDownload").action(); … find the irDownload object of the DEMO_IR interactive report actions menu and call its action method.
  • 90. TH Technology APEX 5 Interactive Reports … Deep Dive APEX 5 IR Possible APIs? For APEX 5.1 – Discussion of APIs to Close the gReport Gap gReport –Like Options Public IR Widget Methods Setting for Open/Close Settings Wait for APEX 5.1 to Upgrade/Refactor?
  • 91. TH Technology APEX 5 Interactive Reports … Deep Dive Note: In earlier APEX versions, there was less declarative JavaScript capability and therefore more developer customizations. As APEX advances and incorporates more declarative JavaScript, it is more important to stay within the standard APIs when making customizations, to avoid difficulties when upgrading.
  • 92. TH Technology APEX 5 Interactive Reports … Deep Dive Appearance Pre APEX 5.0 Default Appearance is Blah Customization via CSS (Hard, Customized) APEX 5.0 Appearance is Better Customization is Easy! Template Options Template Styles Universal Theme, ThemeRoller
  • 93. TH Technology APEX 5 Interactive Reports … Deep Dive Pre APEX 5: CSS Anatomy of an IR Search Bar  apex_finderbar Control Panel  apexir_CONTROL_PANEL Worksheet  apexir_WORKSHEET Column Search  apexir_columnsearch All in apex_<version>.css See …imagescssuncompressed for readable version Do Not Modify the Original!
  • 94. TH Technology APEX 5 Interactive Reports … Deep Dive apexir_WORKSHEET_DATA table.apexir_WORKSHEET_DATA{border:0px #ffffff solid;} table.apexir_WORKSHEET_DATA tfoot tr td{background:#efefef;} table.apexir_WORKSHEET_DATA th{ background:#4e4e4e; font-weight:bold; color:#ffffff; border-top:1px #ccc solid; border-bottom:1px #aaa solid; font-size:11px; white-space:nowrap; vertical-align:center; letter-spacing:1; background-image:url(../ws/report_bg.gif); background-repeat:repeat-x; } table.apexir_WORKSHEET_DATA td{ background:#efefef; border-top:1px #fff solid; border-bottom:1px #ccc solid; font-size:8pt; padding:3px 9px; empty-cells:show !important; } table.apexir_WORKSHEET_DATA th div{ color:#ffffff; font-size:11px; letter-spacing:1; text-decoration:underline; cursor:pointer; margin:3px 9px; }
  • 95. TH Technology APEX 5 Interactive Reports … Deep Dive Custom Appearance: Pre APEX 5 Copy IR CSS into a New File: my_custom_IR.css Place Custom CSS File after apex_#_#.css Change as Little as Possible Web Developer: Edit CSS for Visual Feedback Try Out Your Settings Test Test Test Test in all Supported/Used Browsers Test in End User Browsers Common User Browser Settings often Different than Developer Settings! TEST TEST TEST
  • 96. TH Technology APEX 5 Interactive Reports … Deep Dive APEX 5+: CSS Anatomy of an IR Search Bar  /… Control Panel  Worksheet  a… Column Search  Use Template Options Create/Upload Template Styles No Need for All That Custom CSS!
  • 97. TH Technology APEX 5 Interactive Reports … Deep Dive APEX 5 IR “Cheat Sheet” apexir_ … Ids  STATIC_ID_ … apex_ classes  a-IRR-… APEX 5 Adds a Few More JavaScript widget is revamped widget.interactiveReport.min.js The name is the same … not much else. No Supported Equivalents (for now)
  • 98. TH Technology APEX 5 Interactive Reports … Deep Dive
  • 99. TH Technology APEX 5 Interactive Reports … Deep Dive Customizations: Demo
  • 100. TH Technology APEX 5 Interactive Reports … Deep Dive Recap: APEX 5.0 IR Changes New Features New CSS New JavaScript Caveats Limitations & Workarounds Changes CSS and jQuery Widget APIs Coming for APEX 5.1 (We Hope)
  • 101. TH Technology APEX 5 Interactive Reports … Deep Dive Resources Manually Refreshing APEX Components http://docs.oracle.com/cd/E59726_01/doc.50/e39147/extend_app002.ht m#HTMDB30267 APEX 5.0 Interactive Report Customization, John Snyders http://hardlikesoftware.com/weblog/2015/05/12/apex-5-0-interactive- report-customization/ jQuery UI: How to Use the Widget Factory https://learn.jquery.com/jquery-ui/widget-factory/how-to-use-the-widget- factory/
  • 102. TH Technology APEX 5 Interactive Reports … Deep Dive More Resources APEX ThemeRoller How-To http://dgielis.blogspot.com/2015/02/apex-50-way-to-use-theme- roller.html?utm_source=feedburner&utm_medium=twitter&utm_campaign=Feed%3A+DimitriGielisBlog+ %28Dimitri+Gielis+Blog%29 . AMIS Pivot Implementation for pre APEX 5 https://technology.amis.nl/2006/05/24/dynamic-sql-pivoting-stealing-antons-thunder/ APEX 5 IR Papers http://thtechnology.com/APEX5
  • 103. TH Technology APEX 5 Interactive Reports … Deep Dive Share Your Knowledge ! Call for Articles/Blogs/Updates/Reviewers ODTUG Technical Journal ALWAYS Looking for Content! kcannell@odtug.com
  • 104. TH Technology APEX 5 Interactive Reports … Deep Dive
  • 105. TH Technology APEX IR DEEP DIVE APEX 5 Preview Karen Cannell kcannell@thtechnology.com Questions ?
  • 106. TH Technology APEX IR DEEP DIVE APEX 5 Preview Karen Cannell Thank You ~ Please fill out the evaluations!
  • 107. TH Technology APEX 5 Interactive Reports … Deep Dive Nostalgia …
  • 108. TH Technology APEX 5 Interactive Reports … Deep Dive Ch Ch Ch Ch Changes …
  • 109. TH Technology APEX 5 Interactive Reports … Deep Dive Appendix: PDF Printing for IRs Multiple IR on Single Page, Pre-APEX 5
  • 110. TH Technology APEX 5 Interactive Reports … Deep Dive APEX IR PDF Print OOTB Options Print Attributes - Generic Template Only Same Width Columns Basic Header/Footer Settings Issues: Equal Column Widths No-Print Columns No Highlighting, Formatting Break Columns? Pivot? Chart? Group By?
  • 111. TH Technology APEX 5 Interactive Reports … Deep Dive APEX IR PDF Print Problem Need to Capture As-Is Report Query and Configuration One Option: APEX 4.1: APEX_IR_QUERY Modified SS Version for Sorts, Column Order Modify Your Version for Your Needs APEX 4.2 +: APEX_IR Package (w help) APEX 5: APEX_IR Package (w help)
  • 112. TH Technology APEX 5 Interactive Reports … Deep Dive PDF Print Options Report Query Capture SQL via APEX_IR ( or Pre APEX 4.2 Equiv) Report Layout XSL-FO Named Column Template Stylus Studio, FO Designer, BI Publisher Desktop, Manual This Approach for Fixed Columns Only – Not True WYSIWYG
  • 113. TH Technology APEX 5 Interactive Reports … Deep Dive PDF Print Options Report Query Create TYPE to Hold Report Structure Create Views w Same Structure as the TYPE Create FUNCTION to use Dynamic SQL to Select from View based on APEX_IR_QUERY Output, Return Table Type Parameters APP_ID, Page, Session, IR ID, Any IR Parameters
  • 114. TH Technology APEX 5 Interactive Reports … Deep Dive PDF Print Options Report Query example
  • 115. TH Technology APEX 5 Interactive Reports … Deep Dive PDF Print Function Returns Table Type
  • 116. TH Technology APEX 5 Interactive Reports … Deep Dive PDF Print Options Report Layout example
  • 117. TH Technology APEX 5 Interactive Reports … Deep Dive PDF Print Options PDF Output Button example
  • 118. TH Technology APEX 5 Interactive Reports … Deep Dive
  • 119. TH Technology APEX 5 Interactive Reports … Deep Dive PDF Output - Limitations Named Columns Set Column Order - Not WYSIWYG Tedious Future: Edit XSL-FO Template to handle Conditional Column Generate XSL-FO Template On The Fly ALGEN Modification See George Barra for original ALGEN
  • 120. TH Technology APEX 5 Interactive Reports … Deep Dive PDF Output – Other Options Plugins PL/PDF Jasper Reports BIRT Export to Excel Options Node.js output to Word, Excel Depends On Your Needs – Know Your Users
  • 121. TH Technology APEX 5 Interactive Reports … Deep Dive APEX 5.1 SOD “PDF Printing – Improve the printing capabilities utilizing the Oracle REST Data Services FOP Support.”  FOP 1.1Embedded in APEX REST Services
  • 122. TH Technology APEX 5 Interactive Reports … Deep Dive Pre APEX 5: One IR per Page Need for > 1 APEX IR ? IFF So: Iframe
  • 123. TH Technology APEX 5 Interactive Reports … Deep Dive NN “First” IR, on the main page “Second” IR is in an iframe (really in separate app)
  • 124. TH Technology APEX 5 Interactive Reports … Deep Dive Pre APEX 5 > 1 IR: IFRAME Create the first IR on the main page Create then next IR in separate app Plain Page Template Plain Region – No Template Create an HTML Region on main page Enter Iframe reference in Region Source
  • 125. TH Technology APEX 5 Interactive Reports … Deep Dive Iframe Source