| 
Five Finger Death Punch 
Oliver Lemm 
Competence Center Leiter APEX 
Nürnberg, 20.11.2014
| 
UNSER PORTFOLIO 
BUSINESS INTELLIGENCE SOLUTIONS 
SOCIAL BUSINESS SOLUTIONS 
MOBILE 
SOLUTIONS 
APPLICATION DEVELOPMENT 
INTEGRATION SERVICES 
IT SYSTEM SERVICES 
DATA INTEGRATION 
SELF SERVICE BI 
MOBILE BI 
COLLABORATION 
SEARCH 
SOCIAL 
APPS 
ABLÄUFE 
LOKALISIERUNG 
APEX / ADF 
JAVA 
.NET 
STRATEGIE 
ARCHITEKTUR 
SAP HANA 
MANAGED SERVICES 
BETRIEB 
MIGRATION 
DOAG 2014 - Five Fingers Death Punch 
2
| 
über mich 
Oliver Lemm 
seit 02.2007 bei der MT AG in Ratingen 
-Junior Berater > Berater > Senior Berater > Competence Center Leiter 
Diplom Angewandte Informatik an der Universität Duisburg-Essen 
IT-Architekt und Entwickler im Bereich 
Beschäftigt sich seit 2007 kontinuierlich mit dem Produkt 
Blog http://oliverlemm.blogspot.de 
Twitter https://twitter.com/OliverLemm 
DOAG 2014 - Five Fingers Death Punch 
3
| 
Agenda 
DOAG 2014 - Five Fingers Death Punch 
1.Entwickler SSO & Developer Preferences 
2.Page Designer 
3.Syntax Highlighting & Messages 
4.Supporting Objects & Static Files 
5.Neue Komponenten 
6.Look & Feel 
7.API & Packages & Autorisierung 
8.Fazit 
4
| 
Entwickler SSO & Developer Preferences 
DOAG 2014 - Five Fingers Death Punch 
5
| 
Entwickler SSO & Developer Preferences 
DOAG 2014 - Five Fingers Death Punch 
6
| 
Entwickler SSO & Developer Preferences 
DOAG 2014 - Five Fingers Death Punch 
7
| 
Entwickler SSO 
Achtung: Vor Upgrade nach APEX 5.0 Entwickleraccounts migrieren! 
Aktuelle Entwickleraccounts: Oliver, LemmO, Olemm 
Neuer Account (via LDAP) oliver.lemm@mt-ag.com 
per Skript migrieren 
oder händisch 
DOAG 2014 - Five Fingers Death Punch 
8 
BEGIN 
APEX_UTIL.SET_USERNAME( 
p_userid => APEX_UTIL.GET_USER_ID('OLIVER'), 
p_username => 'OLIVER.LEMM@MT-AG.COM'); 
END;
| 
Entwickler SSO & Developer Preferences 
DOAG 2014 - Five Fingers Death Punch 
9
| 
Entwickler SSO 
SSO Entwickleraccounts besitzen kein Passwort 
Für Nutzung als Benutzer der Anwendung muss ein Passwort gesetzt werden 
DOAG 2014 - Five Fingers Death Punch 
10
| 
Page Designer 
DOAG 2014 - Five Fingers Death Punch 
11
| 
Page Designer 
DOAG 2014 - Five Fingers Death Punch 
12
| 
Page Designer 
DOAG 2014 - Five Fingers Death Punch 
13
| 
Page Designer - Rendering 
Kontextmenü inklusive „Delete“ 
Kein „Bearbeiten“ (Edit) 
DOAG 2014 - Five Fingers Death Punch 
14 
Nicht angezeigte Regionen 
APEX 4.X 
APEX 5.X
| 
Page Designer – Grid Layout 
DOAG 2014 - Five Fingers Death Punch 
15
| 
Page Designer – Property Editor 
Eigenschaften eines Elements im Property Editor 
Pflichteigenschaft mit „rotem Dreieck“ 
DOAG 2014 - Five Fingers Death Punch 
16 
Zusätzliche Eigenschaften
| 
Page Designer – „Übersicht“ 
DOAG 2014 - Five Fingers Death Punch 
17
| 
Syntax Highlighting & Messages 
APEX Roadshow – Enterprise APEX 
18
| 
Syntax Highlighting & Messages 
DOAG 2014 - Five Fingers Death Punch 
19
| 
Supporting Objects & Static Files 
DOAG 2014 - Five Fingers Death Punch 
20
| 
Static Files 
Logische Zusammenfassung 
-Anwendung & Workspace 
Dateien gepackt/gezippt hochladbar 
„Verzeichnis“ beim Upload definierbar 
Pro Aktualisierung der Dateien neue Versionsnummer 
DOAG 2014 - Five Fingers Death Punch 
21
| 
Import & Export 
Statische Dateien immer Bestandteil des Im/Exports 
Statische Dateien nicht einzeln exportierbar 
Exportiert alles (z.B.) 
-Mails & Mail Log 
-Users & Groups 
-Preferences 
-Workspace Files 
-… 
DOAG 2014 - Five Fingers Death Punch 
22 
Import
| 
DOAG 2014 - Five Fingers Death Punch 
23 
Komponenten, Look & Feel
| 
Komponenten – Modal Pages 
DOAG 2014 - Five Fingers Death Punch 
24
| 
Mehrere Interactive Reports 
DOAG 2014 - Five Fingers Death Punch 
25
| 
Komponenten - Branch 
andere Anwendung als Ziel möglich 
mehr als 3 Elemente änderbar 
DOAG 2014 - Five Fingers Death Punch 
26
| 
API, Packages & Autorisierung 
DOAG 2014 - Five Fingers Death Punch 
27
| 
DOAG 2014 - Five Fingers Death Punch 
28
| 
DOAG 2014 - Five Fingers Death Punch 
29 
Autorisierung 
APEX 4.2 
APEX 5
| 
Autorisierung 
Ausführung 
-Once per session => für Performanz optimal 
-Once per Page View => für indivduell abhängige Eigenschaften optimal 
-Once per Component => Performant und indivduell 
-Always (No Caching) => basiernd auf Daten, für dynamische Ansätze optimal 
Individuelle Parameter in Autorisierung auswertbar 
-APP_COMPONENT_TYPE => BUTTON, REGION, … 
-APP_COMPONENT_ID => 32421432434 (APEX_ELEMENT_ID) 
-APP_COMPONENT_NAME => ITEM_NAME 
DOAG 2014 - Five Fingers Death Punch 
30
| 
Application Process – After Auth 
DOAG 2014 - Five Fingers Death Punch 
31
| 
„Session Joining“ 
DOAG 2014 - Five Fingers Death Punch 
32
| 
Item Handling 
&P1_ITEM. 
-Syntax auch für Spalten, List View und weiteren Stellen möglich 
-#P1_ITEM# wird weiterhin interpretiert soll aber durch &-Syntax abgelöst werden 
&P1_ITEM!HTML. => apex_escape.html 
&P1_ITEM!ATTR. => apex_escape.html_attribute 
&P1_ITEM!JS. => apex_escape.js_literal(,null) 
&P1_ITEM!RAW. => unescaped 
&P1_ITEM!STRIPHTML. => strip tags und apex_escape.html 
DOAG 2014 - Five Fingers Death Punch 
33
| 
APEX_JSON 
Erzeugen von JSON 
-apex_json.to_xmltype( l_json ); 
-apex_json.open_object(); 
-apex_json.write('Element','Wert'); 
-apex_json.close_object(); 
-apex_json.open_array('Eigenschaften'); 
-apex_json.close_array(); 
-apex_json.close_all(); 
Verarbeiten von JSON 
-apex_json.parse( l_json ); 
-l_val := apex_json.get_varchar2( p_path => ‘Element‘ ); 
DOAG 2014 - Five Fingers Death Punch 
34
| 
APEX_MAIL, APEX_ZIP & APEX_SPATIAL 
APEX_MAIL 
-GET_IMAGES_URL 
-GET_INSTANCE_URL 
APEX_ZIP 
-ADD_FILE 
-FINISH 
-GET_FILE_CONTENT 
-GET_FILES 
APEX_SPATIAL 
DOAG 2014 - Five Fingers Death Punch 
35
| 
APEX Packages 
select 
distinct s.synonym_name, 
p.procedure_name 
from all_procedures p 
join all_synonyms s on p.object_name = s.table_name where p.owner like 'APEX%‚ 
and s.synonym_name like 'APEX%‚ 
order by 1, 2; By Roel Hartman 
DOAG 2014 - Five Fingers Death Punch 
36
| 
Fazit 
DOAG 2014 - Five Fingers Death Punch 
37
| 
Weiße Folien für den eigentlichen Vortrag 
DOAG Konferenz 2014 
38
| 
DOAG Konferenz 2014 
39 
apexmeetups.com
| 
10:00 - 10:45 Helsinki 
12c Oracle Warehousing voll Groovy. Ein Projektbericht. 
Bernhard Dominic Rosen- Kettel- berger tasche 
20.11.14 
12:00 - 12:45 
Istanbul 
Dateien per Drag & Drop in APEX Applikationen ablegen 
Franziska Höcker 
20.11.14 
15:00 - 15:45 Oslo 
Ist Gradle auch für die APEX-Projekte? 
Oleg 
Kiriltsev 
20.11.14 
15:00 - 15:45 
Istanbul 
Tune Up Your APEX 
Oliver Lemm 
20.11.14
| 
Vielen Dank… 
Oliver Lemm 
Competence Center Leiter APEX 
Telefon: +49 (0) 21 02 309 61-0 
Telefax: +49 (0) 21 02 309 61-101 
E-Mail: oliver.lemm@mt-ag.com 
www.mt-ag.com

Five Finger Death Punch

  • 1.
    | Five FingerDeath Punch Oliver Lemm Competence Center Leiter APEX Nürnberg, 20.11.2014
  • 2.
    | UNSER PORTFOLIO BUSINESS INTELLIGENCE SOLUTIONS SOCIAL BUSINESS SOLUTIONS MOBILE SOLUTIONS APPLICATION DEVELOPMENT INTEGRATION SERVICES IT SYSTEM SERVICES DATA INTEGRATION SELF SERVICE BI MOBILE BI COLLABORATION SEARCH SOCIAL APPS ABLÄUFE LOKALISIERUNG APEX / ADF JAVA .NET STRATEGIE ARCHITEKTUR SAP HANA MANAGED SERVICES BETRIEB MIGRATION DOAG 2014 - Five Fingers Death Punch 2
  • 3.
    | über mich Oliver Lemm seit 02.2007 bei der MT AG in Ratingen -Junior Berater > Berater > Senior Berater > Competence Center Leiter Diplom Angewandte Informatik an der Universität Duisburg-Essen IT-Architekt und Entwickler im Bereich Beschäftigt sich seit 2007 kontinuierlich mit dem Produkt Blog http://oliverlemm.blogspot.de Twitter https://twitter.com/OliverLemm DOAG 2014 - Five Fingers Death Punch 3
  • 4.
    | Agenda DOAG2014 - Five Fingers Death Punch 1.Entwickler SSO & Developer Preferences 2.Page Designer 3.Syntax Highlighting & Messages 4.Supporting Objects & Static Files 5.Neue Komponenten 6.Look & Feel 7.API & Packages & Autorisierung 8.Fazit 4
  • 5.
    | Entwickler SSO& Developer Preferences DOAG 2014 - Five Fingers Death Punch 5
  • 6.
    | Entwickler SSO& Developer Preferences DOAG 2014 - Five Fingers Death Punch 6
  • 7.
    | Entwickler SSO& Developer Preferences DOAG 2014 - Five Fingers Death Punch 7
  • 8.
    | Entwickler SSO Achtung: Vor Upgrade nach APEX 5.0 Entwickleraccounts migrieren! Aktuelle Entwickleraccounts: Oliver, LemmO, Olemm Neuer Account (via LDAP) oliver.lemm@mt-ag.com per Skript migrieren oder händisch DOAG 2014 - Five Fingers Death Punch 8 BEGIN APEX_UTIL.SET_USERNAME( p_userid => APEX_UTIL.GET_USER_ID('OLIVER'), p_username => 'OLIVER.LEMM@MT-AG.COM'); END;
  • 9.
    | Entwickler SSO& Developer Preferences DOAG 2014 - Five Fingers Death Punch 9
  • 10.
    | Entwickler SSO SSO Entwickleraccounts besitzen kein Passwort Für Nutzung als Benutzer der Anwendung muss ein Passwort gesetzt werden DOAG 2014 - Five Fingers Death Punch 10
  • 11.
    | Page Designer DOAG 2014 - Five Fingers Death Punch 11
  • 12.
    | Page Designer DOAG 2014 - Five Fingers Death Punch 12
  • 13.
    | Page Designer DOAG 2014 - Five Fingers Death Punch 13
  • 14.
    | Page Designer- Rendering Kontextmenü inklusive „Delete“ Kein „Bearbeiten“ (Edit) DOAG 2014 - Five Fingers Death Punch 14 Nicht angezeigte Regionen APEX 4.X APEX 5.X
  • 15.
    | Page Designer– Grid Layout DOAG 2014 - Five Fingers Death Punch 15
  • 16.
    | Page Designer– Property Editor Eigenschaften eines Elements im Property Editor Pflichteigenschaft mit „rotem Dreieck“ DOAG 2014 - Five Fingers Death Punch 16 Zusätzliche Eigenschaften
  • 17.
    | Page Designer– „Übersicht“ DOAG 2014 - Five Fingers Death Punch 17
  • 18.
    | Syntax Highlighting& Messages APEX Roadshow – Enterprise APEX 18
  • 19.
    | Syntax Highlighting& Messages DOAG 2014 - Five Fingers Death Punch 19
  • 20.
    | Supporting Objects& Static Files DOAG 2014 - Five Fingers Death Punch 20
  • 21.
    | Static Files Logische Zusammenfassung -Anwendung & Workspace Dateien gepackt/gezippt hochladbar „Verzeichnis“ beim Upload definierbar Pro Aktualisierung der Dateien neue Versionsnummer DOAG 2014 - Five Fingers Death Punch 21
  • 22.
    | Import &Export Statische Dateien immer Bestandteil des Im/Exports Statische Dateien nicht einzeln exportierbar Exportiert alles (z.B.) -Mails & Mail Log -Users & Groups -Preferences -Workspace Files -… DOAG 2014 - Five Fingers Death Punch 22 Import
  • 23.
    | DOAG 2014- Five Fingers Death Punch 23 Komponenten, Look & Feel
  • 24.
    | Komponenten –Modal Pages DOAG 2014 - Five Fingers Death Punch 24
  • 25.
    | Mehrere InteractiveReports DOAG 2014 - Five Fingers Death Punch 25
  • 26.
    | Komponenten -Branch andere Anwendung als Ziel möglich mehr als 3 Elemente änderbar DOAG 2014 - Five Fingers Death Punch 26
  • 27.
    | API, Packages& Autorisierung DOAG 2014 - Five Fingers Death Punch 27
  • 28.
    | DOAG 2014- Five Fingers Death Punch 28
  • 29.
    | DOAG 2014- Five Fingers Death Punch 29 Autorisierung APEX 4.2 APEX 5
  • 30.
    | Autorisierung Ausführung -Once per session => für Performanz optimal -Once per Page View => für indivduell abhängige Eigenschaften optimal -Once per Component => Performant und indivduell -Always (No Caching) => basiernd auf Daten, für dynamische Ansätze optimal Individuelle Parameter in Autorisierung auswertbar -APP_COMPONENT_TYPE => BUTTON, REGION, … -APP_COMPONENT_ID => 32421432434 (APEX_ELEMENT_ID) -APP_COMPONENT_NAME => ITEM_NAME DOAG 2014 - Five Fingers Death Punch 30
  • 31.
    | Application Process– After Auth DOAG 2014 - Five Fingers Death Punch 31
  • 32.
    | „Session Joining“ DOAG 2014 - Five Fingers Death Punch 32
  • 33.
    | Item Handling &P1_ITEM. -Syntax auch für Spalten, List View und weiteren Stellen möglich -#P1_ITEM# wird weiterhin interpretiert soll aber durch &-Syntax abgelöst werden &P1_ITEM!HTML. => apex_escape.html &P1_ITEM!ATTR. => apex_escape.html_attribute &P1_ITEM!JS. => apex_escape.js_literal(,null) &P1_ITEM!RAW. => unescaped &P1_ITEM!STRIPHTML. => strip tags und apex_escape.html DOAG 2014 - Five Fingers Death Punch 33
  • 34.
    | APEX_JSON Erzeugenvon JSON -apex_json.to_xmltype( l_json ); -apex_json.open_object(); -apex_json.write('Element','Wert'); -apex_json.close_object(); -apex_json.open_array('Eigenschaften'); -apex_json.close_array(); -apex_json.close_all(); Verarbeiten von JSON -apex_json.parse( l_json ); -l_val := apex_json.get_varchar2( p_path => ‘Element‘ ); DOAG 2014 - Five Fingers Death Punch 34
  • 35.
    | APEX_MAIL, APEX_ZIP& APEX_SPATIAL APEX_MAIL -GET_IMAGES_URL -GET_INSTANCE_URL APEX_ZIP -ADD_FILE -FINISH -GET_FILE_CONTENT -GET_FILES APEX_SPATIAL DOAG 2014 - Five Fingers Death Punch 35
  • 36.
    | APEX Packages select distinct s.synonym_name, p.procedure_name from all_procedures p join all_synonyms s on p.object_name = s.table_name where p.owner like 'APEX%‚ and s.synonym_name like 'APEX%‚ order by 1, 2; By Roel Hartman DOAG 2014 - Five Fingers Death Punch 36
  • 37.
    | Fazit DOAG2014 - Five Fingers Death Punch 37
  • 38.
    | Weiße Folienfür den eigentlichen Vortrag DOAG Konferenz 2014 38
  • 39.
    | DOAG Konferenz2014 39 apexmeetups.com
  • 40.
    | 10:00 -10:45 Helsinki 12c Oracle Warehousing voll Groovy. Ein Projektbericht. Bernhard Dominic Rosen- Kettel- berger tasche 20.11.14 12:00 - 12:45 Istanbul Dateien per Drag & Drop in APEX Applikationen ablegen Franziska Höcker 20.11.14 15:00 - 15:45 Oslo Ist Gradle auch für die APEX-Projekte? Oleg Kiriltsev 20.11.14 15:00 - 15:45 Istanbul Tune Up Your APEX Oliver Lemm 20.11.14
  • 41.
    | Vielen Dank… Oliver Lemm Competence Center Leiter APEX Telefon: +49 (0) 21 02 309 61-0 Telefax: +49 (0) 21 02 309 61-101 E-Mail: oliver.lemm@mt-ag.com www.mt-ag.com