Ervaringen met APEX 5.0 EA1

Blog: Ervaringen met APEX .0 Early Adopter 1
Auteur: Marc Bodde (Senior APEX Consultant              

Dit jaar nog zal de grote nieuwe release van Oracle Application Express (APEX) uit gaan komen. Wanneer dat gaat gebeuren is -traditioneel- nog niet helemaal duidelijk, maar we kunnen ondertussen wel met zijn allen aan het experimenteren gaan middels de zogeheten “early adopter” versie.

De url https://apexea.oracle.com geeft je de mogelijkheid workspaces aan te vragen en zeven stappen verder kun je aan de slag.

Het eerste verschil met eerdere APEX versies dat opvalt, is dat je in het inlogscherm niet direct kiest voor de workspace waarin je wilt werken. In APEX 5.0 log je in en vervolgens krijg je een scherm met de beschikbare workspaces.

apex5_0 login

Eén gebruiker dus voor verschillende workspaces. Op zich handig. Switchen tussen workspaces kan later gemakkelijk via het user icoontje. Dat is trouwens ook de enige plek waar je kunt zien in welke workspace je aan het werk bent, ik kan me voorstellen dat het handig zou zijn dit op een wat prominentere plek zichtbaar te hebben.

Na de keuze voor de workspace kom je in het APEX hoofdmenu. Hier zijn weinig grote veranderingen. Een strak, bijna spartaans design valt direct op, maar ook in deze versie de gebruikelijke keuzes: Application Builder, SQL Workshop, Team Development en Administration.

apex 5_0 menu

Als ontwikkelaar gaat de belangstelling uiteraard in eerste instantie uit naar de Builder. Ook daar dezelfde opties als voorheen, in licht vernieuwde opmaak.

apex 5_0 builder

Grote verschillen komen tevoorschijn in de Page Designer. Gebruikersgemak en -intuïtie staan hier voorop. De opmaak is sterk veranderd ten opzichte van de oudere versies. Daar was in de Page Designer een keuze te maken tussen de ‘Component View’ (bekend vanuit APEX 3.x) en de nieuwere ‘Tree View’. Persoonlijke smaak en gewenning bepaalden de keuze voor de ontwikkelaar. Ik schat in dat de meeste ontwikkelaars zelden of nooit tussen de twee settings wisselen.
In de vernieuwde Page Designer van de 5.0 versie bestaat het scherm grofweg uit vijf gescheiden delen, waarvan er drie inklapbaar (collapsable) zijn:

apex 5_0 page designer

  1. Navigatievenster
  2. Grid layout- en texteditor
  3. Property Editor
  4. Gallery, Messages en Search
  5. Property Help

1 Het navigatievenster

Aan de linkerkant van de Designer is er een (inklapbaar) navigatie venster waar, door middel van zogenaamde accordions, gekozen kan worden voor achtereenvolgens ‘Rendering’, ‘Dynamic Actions’, ‘Processing’ en ‘Utilized Shared Components’. Op zich is deze indeling duidelijk, maar het betekent ook op sommige momenten dat je het overzicht mist.
Voorheen was de processing altijd zichtbaar, waardoor je bijvoorbeeld in een oogopslag kon zien of er specifieke processen voor de pagina zijn of welke braches er zijn. Nu zul je eerst de processing accordion-tab moeten aanklikken om die informatie te verkrijgen.

2 Gridlayout en texteditor

Het hart van het scherm wordt gevormd door de grid layout en de texteditor. De grid editor maakt het mogelijk de opmaak van je pagina gemakkelijk aan te passen. Regio’s, items en buttons kunnen erin gesleept worden naar de gewenste plek. Als je iets fout doet of vergeet, kleurt het betreffende onderdeel rood en kun je in het message venster eronder zien wat er fout is. Erg duidelijk.
Al met al levert het een redelijk overzichtelijk plaatje op en aanpassingen zijn inderdaad intuïtief te doen. De nieuw toegevoegde mogelijkheid om acties terug te draaien middels de undo en redo functionaliteit is een van de beste vernieuwingen.

3 Property editor

De rechterkant van het scherm is de property editor. Belangrijkste eigenschap hier is de contextgevoeligheid. Als je in het navigatie venster of in de grid editor een selectie maakt, zullen de properties van het betreffende onderdeel context krijgen. Dit is met afstand de beste vernieuwing in deze APEX versie en werkt overigens ook vanuit de grid editor naar het navigatievenster en andersom. Daarbij geldt dat bij het selecteren van meerdere soortgelijke onderdelen (bv meerdere regio items) de property editor keurig aangeeft welke properties verschillen en overeenkomen. Ontwikkelaars die ervaring hebben met Oracle Forms zal deze feature bekend voorkomen en zeer bevallen. Helaas werkt de feature in de early adaptor versie nog niet vlekkeloos.
Naast de haperingen in functionaliteit die soms optreden in de property editor, zijn er in ieder geval nog drie zaken die, als ze blijven zoals ze nu zijn, tegenvallend of zelfs slecht te noemen zijn:

  • Ten eerste worden standaard niet alle properties getoond. Er moet expliciet gekozen worden voor de show all button om alle properties te zien.
  • Ten tweede zijn de vensters voor code en tekst erg klein. Je kunt inderdaad kiezen voor het wijzigen van de tekst in de tekst editor (of in de modal tekst editor), maar het zou handiger zijn als die modal automatisch opkomt als je in een tekstveld komt.
  • De derde misser is het ontbreken van de quickpick shortcuts bij  de properties (zoals ‘display as’, ‘source type’ ‘conditions’, ‘read-only’. Waar je in APEX 4.x snel kon kiezen voor bijvoorbeeld een conditie [PL/SQL] of [never], is dat in versie 5 niet meer mogelijk. Iedere optie moet uit een selectlist gekozen worden.

4 De Gallery

Dit inklapbare venster heeft 4 tabjes: Gallery, Messages, Page Search en Help.

Via het tabje Gallery zijn regions, items en buttons van alle mogelijke typen te verslepen naar de grid editor. Zodra je je gekozen onderdeel loslaat, zal een aantal properties ingevuld worden en zal in de Message tab aangegeven worden wat nog noodzakelijkerwijs ingevuld dient te worden. Er treden hier wel verschillen op met eerdere versies. Het toevoegen van een hidden item resulteert bijvoorbeeld in de aanmaak van een nieuw item, waarvan de property Source Type op ‘database column’ staat. In eerdere versie was dat ‘always null’. Daarnaast krijgt het item direct een naam (vb P31_NEW) die je normaal gesproken later zult wijzigen. Ervaring met eerdere APEX versies leerde dat het wijzigen van de naam van een page item in veel gevallen leidde tot problemen. De wijze van werken in APEX 5.0 leidt ertoe dat ieder page item tenminste een keer van naam veranderd. Ik houd mijn hart vast.

Het derde tabje, de Page Search, doet wat het zegt en snel. Zoeken naar tekst op de huidige pagina. Ook reguliere expressies zijn mogelijk.
Het tabje Help is eigenlijk redundant te noemen. Het vijfde venster biedt exact hetzelfde.

5 Property Help

De Property Help is een inklapbaar venster onderaan de property editer waar contextgevoelige help of de te wijzigen properties gegeven wordt. In tegenstelling to eerdere versies is de help nu uitgebreid en zeer bruikbaar.

Het zou goed kunnen dat werken met de page designer van de vernieuwde APEX versie een genoegen wordt. De early adapter versie heeft echter nog te veel haperingen. Daarnaast is een behoorlijk groot aantal opties nog niet beschikbaar. Voorbeelden hiervan zijn de ‘utilized shared components’ en het aanmaken van form buttons.

Functioneel is er uiteraard ook een en ander veranderd.

  • Het kunnen aanmaken van modal page dialogs is een toegevoegde waarde. In eerdere versie was hiervoor een plugin en nogal wat codeerwerk noodzakelijk.
  • Bij interactive reports is er de mogelijkheid tot het maken van pivot rapporten. Het aantal kolommen waarop de data gekanteld kan worden is echter beperkt tot drie.
  • Gebruik van Navigation List als alternatief voor Tabs. Eenvoudig op te zetten en te onderhouden.
  • Vernieuwde kalender functionaliteit
  • Verbeterde interactive reporting functionaliteit ten behoeve van (eind)gebruikers
  • Meerdere interactive reports op een pagina mogelijk? Of is dat een gerucht.

 

Joel Kallman, Director of Software Development  APEX, zei onlangs op de OGh APEX World dag in Zeist dat we met deze versie 10 jaar verder moeten, dan wel kunnen. Een mooie droom, lijkt me.

Gerelateerd nieuws