APEX vs OutSystems, een vergelijking door een gebruiker

Vergelijkbare documenten
Kennis na het volgen van de training. Na het volgen van deze training bent u in staat:

MA!N Rapportages en Analyses

Selenium IDE Webdriver. Introductie

WebSite Director Gebruikersgids

Website met Wordpress

Technische nota AbiFire Rapporten maken via ODBC

Basis handleiding CMS

Acht stappen voor JSF

Workflows voor SharePoint met forms en data K2 VOOR SHAREPOINT

Handleiding helpdesk. Datum: Versie: 1.0 Auteur: Inge van Sark

Document. Name: Systemhound 2007 Getting started guide. Created: Roel van Baaren Raxco Software 7 April Revisions:

Functionaliteiten 4orange Connect

Release notes Xerte Online Toolkits 3.5

RULES RELEASE EVENTS. Mavim. Rules 7 Rules 8 Rules 9. Rules 2008

Naam project Lost And Found Animals Lokaal gehost Percentage van het totaal geleverde werk 1 Cindy Jansen 50% 2 Eline Steyvers 50%

Release notes Release

Is APEX a worthy substitute for Oracle Forms?

Release Notes Carta 14.1

1 Inleiding. 3 Handmatig... invoeren zaken basis 4 Verwerken... zaken 5 Afhandelen... van zaken. 7 Uitgebreidere... zaak opties

15 July Betaalopdrachten web applicatie gebruikers handleiding

Rapporten. Labels en Rapporten in Atlantis 1. Atlantis heeft twee manieren om output te genereren: 1. labels 2. rapporten (reports)

Handleiding Content Management Systeem

2.ouderbeleid.3.plaatsingsprocedure werk admini Pagina 1 van 14

Release notes:

Inloggen. In samenwerking met Stijn Berben.

EPLAN Software & Service. 12 februari 2016 We starten om 14:00 uur

Handleiding. Voedingsversie Evry Hanzehogeschool Groningen november 2011

icafe Project Joeri Verdeyen Stefaan De Spiegeleer Ben Naim Tanfous

Technisch Ontwerp W e b s i t e W O S I

Inhoud van de website invoeren met de ContentPublisher

Maximo Tips and Tricks

IQ LEADS Adres: Curieweg 8E Postcode: 2408 BZ Plaats: ALPHEN AAN DEN RIJN Telefoon: (0172)

Handleiding: Whitelabel Customersite

i ll take off to the cloud

Automatisering voor Financiële Dienstverleners. Werken met Queries en Merge Documenten. For more information visit our website at


De Kleine WordPress Handleiding

Werkinstructie/case. Revisie 2.1. Erik van Schaik

WordPress in het Kort

Werking van de Office Connector, en het oplossen van fouten.

Captain Reader. E-captain help E-captain help

Support website WATCH

Quick Start Guide. Het Dashboard

Inhoud. Endnote X7 Handleiding Mediacentrum maart 2015 Page 2

januari TTNWW Handleiding TST tools voor het Nederlands als Web services in een Workflow Meertens Instituut, Joan Muyskensweg 25, 1096 CJ Amsterdam

1 Algemeen Inloggen in Basecone Aanleveren van documenten Commentaar toevoegen aan documenten Autoriseren...

Programmeerstructuren met App Inventor

Bericht Creëren en versturen binnen Wes 4 U mail

Werkinstructie. Technisch Beheer. uitvoeren MAP scan. voor. Datum: 15 oktober Versie: 1.0

Een website maken met Joomla!

Installatie Excel Controller (Office 64 bits) voor Exact Online

Ga naar en log in met de gebruikersnaam en wachtwoord verkregen via mail.

e-balie 3.0 Aan de slag

DECADE FINANCIALS. met APEX klaar voor de toekomst. Zeist

INHOUD VAN SERVICE CALLS

Technische nota AbiFire5 Rapporten maken via ODBC

Zakelijk Office 365 Snel aan de slag met Zakelijk Office 365 Professional Plus

Contict Drive Versie 3.0 Laatst herzien: juni 2016

Aan de slag met AdminView

Beveiligingsbeleid. Online platform Perflectie

ORBIS SOFTWARE TASKCENTRE INTEGREERT

Uw productassortiment moeiteloos online én op papier met onze database publishing software.

De basis principes zoals deze in de oude versie waren, zijn ook van toepassing op de nieuwe versie. In de basis is dit:

Installatie Excel Controller voor Exact Online

CONTAINERIZATION OF APPLICATIONS WITH MICROSOFT AZURE PAAS SERVICES

Release notes Inhoud

ANOUK ROUMANS TO CODE OR NOT TO CODE.

ORBIS SOFTWARE TASKCENTRE INTEGREERT

VisiBox Online Handleiding Pagina 1

Handleiding. Opslag Online voor Windows Phone 8. Versie augustus 2014

mymanualsolarapp - What s Your Solar Power Today?

Stappenplan Infographic maken

De voordelen van Drupal

Beveiligingsbeleid Perflectie. Architectuur & Procedures

Na het inloggen met de gegevens die je hebt gekregen, verschijnt het overzichtsscherm zoals hieronder:

Message Server Handleiding voor Content Editors

Selenium IDE Webdriver. Aan de slag

Installatiehandleiding Business Assistent

emscreator PageBuilder Korte uitleg van werkwijze en functies

VERZENDLIJSTEN HANDLEIDING. OTYS Recruiting Technology

Handleiding wijzigingen in Kindkans

Forecasting Quickstart NL

Coligo conne ct. Gebruikershandleiding

Handleiding Website wijzigingen Versie juni 2015

REDACTEUREN HANDLEIDING

Installatiehandleiding Business Assistent

User accounts maken in een Wandy Hotspot, d.m.v. een batch.

Deel 5: Ontleding van een thema en subtheming. 20. YML-bestanden en subtheming

Project plan. Erwin Hannaart Sander Tegelaar

Opdrachtgever: Avpec1910 Auteur: Avalon Systems Versie: 1.0 Datum: 12/01/2011. Handleiding WYSIWYG HTML editor: CKEditor

15 July Betaalopdrachten web applicatie beheerders handleiding

DOSSIERS HANDLEIDING. OTYS Recruiting Technology

HANDLEIDING FOCWA.TEVREDEN.NL

PRINT CV HANDLEIDING. OTYS Recruiting Technology

Handleiding CMS Online Identity Webontwikkeling. Handleiding CMS

Korte uitleg gebruik Jira als bevindingregistratie systeem

Tijd registreren met ASTRID. Ronald van Dijk en Marco de Kaper

Installatiehandleiding Cane Webservices.nl Integratie

Technische implementatie De infrastructuur rondom Transit kent de volgende rollen:

OpenIMS 4.2 Portaal Server

Transcriptie:

WHITEBOOK APEX vs OutSystems, een vergelijking door een gebruiker Februari 2019 Auteur: Michel Vogelpoel INTEGRATIESPECIALIST

Inleiding Als fervent gebruiker van APEX moet men ook af en toe over de Oracle muur heen kijken naar wat er nog meer in de markt is, en hoe die beweegt. APEX is een ontwikkeltool met veel mogelijkheden en gebruikers, maar sommige andere tools claimen beter te zijn. OutSystems is recent uitgeroepen tot Software Innovator van het jaar door Dutch IT Channels. Tevens wordt beweerd dat OutSystems het nummer 1 platform is voor low-code application development. Reden genoeg om een kijkje te nemen hoe OutSystems zich verhoudt tot de ORACLE APEX omgeving met betrekking tot de front-end ontwikkeling. Dat OutSystems naast front-end ontwikkeling veel meer te bieden heeft, wordt hier buiten beschouwing gelaten. In dit Whitebook wordt als APEX-gebruiker gekeken naar het bouwen van een applicatie met OutSystems. Welke stappen worden gezet binnen OutSystems om iets eenvoudig, zoals een tabel in een scherm, voor elkaar te krijgen binnen een applicatie. De stappen Het opzetten van de ontwikkelomgeving De eerste stap Maken van Entiteiten Schermopbouw Het gebruik van Javascript Screen Actions en Ajax Submit Foutafhandeling en Debugging Authorisatie Versiebeheer Support Conclusie Whitebook APEX vs OutSystems, een vergelijking door een gebruiker 2

Het opzetten van de ontwikkelomgeving Je begint met het aanmaken van een account bij OutSystems en het downloaden en installeren van de laatste versie van de Development Environment. Een account is zo gemaakt en de installatie is zonder problemen te doen. Bij APEX zou men de XE database moeten downloaden waarin APEX is mee geïnstalleerd, is iets meer werk. Bij APEX kan alles lokaal draaien, bij OutSystems is een internetverbinding nodig om naar de cloud van OutSystems te gaan waar alle ontwikkeling wordt gedaan en opgeslagen. De eerste stap In het begin moet je zoeken waar alles te vinden is. Er zit een verschil in de eerste look-andfeel bij OutSystems. Het oogt niet zoals je gewend bent bij APEX. Diverse tabs (Process, Interface, Logic en Data) en vreemde widgets aan de linkerkant. Gelukkig heeft OutSystems online trainingen opgezet, die de gebruiker bij de virtuele hand neemt en stap voor stap uitlegt waar wat voor dient en hoe je het dient te gebruiken. In dit Whitebook wordt gekeken naar de verschillen bij het front-end bouwen ten opzichte van APEX. Hoe gemakkelijk is het nu om een tabel in een scherm te maken met deze nieuwe tool? Whitebook APEX vs OutSystems, een vergelijking door een gebruiker 3

Maken van Entiteiten Als je in APEX een region met een nieuwe tabel wilt aanmaken, maak je een SQL statement met de kolommen die je wilt hebben. In OutSystems dien je eerst de entiteit en haar attributen te definiëren voordat je dit kan doen. Het voordeel is wel dat dit een eenmalige actie is, en dat deze entiteit dan overal gebruikt kan worden. Op de achtergrond wordt ook direct een tabel in de OutSystems repository gemaakt van deze entiteit. Tevens worden er automatisch entiteit-acties gedefinieerd (Creatie, Read, Update, Delete of CRUD functionaliteit). Deze entiteit-acties zorgen voor de afhandeling van de data op het scherm naar de tabel van de entiteit. Figuur 1 en 2: Entiteit overview met attributen, daarnaast het attribuut detail LOV s (Static Entities in OutSystems) dienen ook op deze manier aangemaakt worden, wat vergelijkbaar is met APEX. Whitebook APEX vs OutSystems, een vergelijking door een gebruiker 4

Schermopbouw Bij het aanmaken van een nieuw scherm (Web screen in OutSystems) voor het tonen van een tabel, krijg je ook de opties voor welke template het gemaakt moet worden. Waar je bij APEX een icoon moet aanklikken bij het kiezen van een template, krijg je bij OutSystems een voorbeeld van de pagina te zien. Dit maakt het kiezen van de te gebruiken template een stuk eenvoudiger. Figuur 3: Templates waaruit gekozen kan worden bij het maken van een nieuwe webpagina Whitebook APEX vs OutSystems, een vergelijking door een gebruiker 5

De volgende stap is het toevoegen van een Preparation, wat vergelijkbaar is met de acties die uitgevoerd moeten worden bij het opbouwen van het scherm in APEX. Diverse zogenaamde widgets worden direct zichtbaar waarvan de Aggregate widget de meest gebruikelijke is. De Preparation bepaalt dus welke data opgehaald moet worden en in de Aggregate kun je aangeven welke data getoond mag / moet worden plus eventuele filters / sorteringen. Figuur 4: Toevoegen van Aggregate en Preparation In de Aggregate kan men de eventuele filters en sorteringen aanbrengen. Figuur 5: Aggregate detail Whitebook APEX vs OutSystems, een vergelijking door een gebruiker 6

Tot nu toe is er nog geen data op het scherm te zien. Dat is de volgende stap en een hele verbetering ten opzichte van APEX. Voor de GUI opbouw bij OutSystems is een hele rij aan widgets beschikbaar. Het is een soort WYSIWYG (What You See Is What You Get) interface. Als je een tabel op het scherm brengt worden direct een aantal rijen met labels zichtbaar. De kracht zit ook in het aanmaken van containers, binnen APEX zouden dat Regions zijn, om data dat bij elkaar hoort te koppelen. Deze containers kunnen vrij aangemaakt worden wat het heel gebruiksvriendelijk maakt. Je kan op deze manier een complexe lay-out maken wat in APEX met heel veel meten en plakken gepaard zou gaan. Om een tabel op het scherm te krijgen moet er een Table-Records widget gesleept worden naar het scherm, de juiste source data moet aan deze widget gekoppeld worden (vanuit de Preparation) en daarna moet je nog een keer de entiteit slepen naar deze tabel. Dus één keer de entiteit slepen naar de Preparation voor welke data opgehaald moet worden en één keer voor de attributen die getoond moeten worden in de tabel. Daarna kun je de tabel gaan tweaken met de Style editor die ook bij alle andere widgets aanwezig is. Bij elke aanpassing zie je direct het resultaat in de tabel. Erg handig, alhoewel je dit beter kan regelen via CSS script als je dit consequent over alle tabellen in alle schermen wilt doen. Bij APEX is de Theme Roller van Universal Theme een vergelijkbare tool, echter alleen maar bruikbaar voor de kleur layout over de gehele applicatie. Figuur Style editor van een widget Whitebook APEX vs OutSystems, een vergelijking door een gebruiker 7

Er is veel keuze in widgets, waarbij de IF en de Expression widget het meest zullen worden gebruikt om specifieke data wel of niet te laten zien. Je kunt de widgets slepen van de zijbalk naar het scherm, maar soms is het niet duidelijk naar welke container je het gesleept hebt. OutSystems biedt ook de mogelijkheid via de rechter muisknop widgets toe te voegen, daarnaast kun je via de Elements tree gedetailleerd zien welke widgets er om een specifiek veld zitten. Figuur 6: Elements tree view van attribuut op het veld De vrijheid om deze widgets toe te passen op elke plek maakt OutSystems heel flexibel. Je kunt denken aan het toevoegen van een if-then widget voor het wel of niet tonen van een hele container of juist van 1 veld. Figuur 7: Beschikbare GUI widgets voor de schermopbouw Whitebook APEX vs OutSystems, een vergelijking door een gebruiker 8

Het gebruik van Javascript APEX en Javascript zijn vier handen op een buik. Bij OutSystems is dat iets complexer. Veldnamen in een OutSystems scherm hebben niet de gemakkelijke benaming zoals bv :P40225_NAAM bij APEX. Dit maakt het moeilijker om zo n veld via Javascript te benaderen, denk bijvoorbeeld aan het manipuleren van een HTML attribuut, het toevoegen van een CSS klasse of aan een aantal velden read-only of disabled zetten bij een bepaalde status via een Javascript. Via extended properties van een OutSystems veld of via de visibility editor van een veld kan je wel de style aanpassen. Via <element>.id kan men wel het veld benaderen binnen OutSystems, dus net iets anders maar het kan dus wel. Screen Actions en Ajax Submit Als je een record wilt opslaan door een knop in te drukken of om naar een andere pagina te gaan moet je Screen Actions gebruiken. Bij een Screen Action doe je een aantal stappen om bijvoorbeeld een record te saven. Denk daarbij aan de controle van de data, het verrijken van de te saven data, het refreshen van de pagina, het naar een specifieke pagina gaan, etc. Ook hier heb je weer keuze uit een flinke set widgets. De screen Action van OutSystems combineert de Dynamic Action, Page Processing (validatie, data processing en branching) van APEX. Deze manier van opzetten binnen OutSystems heeft als voordeel dat het overzichtelijk is. Alle acties die het systeem moet doen, bijvoorbeeld een druk op een knop, staan op één plek. Dit maakt het doorvoeren van eventuele aanpassingen, bugfixing en copy pasten eenvoudiger. Figuur 8: De Action widgets Whitebook APEX vs OutSystems, een vergelijking door een gebruiker 9

9: Een voorbeeld van een Screen Action bij het opslaan van een movie record Foutafhandeling en Debugging Als je bij het maken van het scherm iets vergeet in te vullen (bv vergeten entiteit te vullen) wordt dit direct getoond bij het genereren van de pagina via de 1step knop. De code sprint direct naar de locatie van de fout. Dit is vergelijkbaar met APEX. Het is zelfs mogelijk binnen OutSystems breakpoints te zetten in de code, zodat je stap voor stap de logica en de variabelen kan bekijken. Een hele verbetering t.o.v. APEX waar debugging nogal onoverzichtelijk gaat en men moet vertrouwen op de F12 functionaliteit van de browser. Whitebook APEX vs OutSystems, een vergelijking door een gebruiker 10

Autorisatie De autorisatie is vergelijkbaar met APEX, je kunt rollen aanmaken en deze koppelen aan schermen en gebruikers via eenvoudige checkboxes. Maar er zit een limiet aan het aantal gelijktijdige gebruikers (users) die actief kunnen zijn binnen een applicatie als de applicatie naar productie gaat. Voor de goedkoopste variant staat de limiet op 50 gebruikers. Dit kan uitgebreid worden naar oneindig maar dat betekent wel dat je maandelijkse kosten van het gebruik van OutSystems flink omhoog gaan. Voor evaluatie en educatie is er geen limiet voor de gebruikers, maar dan is het niet mogelijk om naar productie te gaan met de applicatie. Figuur 10: Role autorisatie van een scherm Whitebook APEX vs OutSystems, een vergelijking door een gebruiker 11

Versiebeheer In tegenstelling tot bij APEX, waar versiebeheer nog altijd ontbreekt, is er bij OutSystems de mogelijkheid om te mergen. Je kan hier dan vergelijken met vorige gepubliceerde versies van je applicatie en ervoor kiezen dit wel of niet te gaan opnemen in je applicatie. Dit kan ook via reeds opgeslagen applicaties. Mergen is nog niet mogelijk binnen APEX, het is wel mogelijk om bijvoorbeeld 1 of meer pagina s te exporteren van applicatie A en te vervangen (of toe te voegen) in applicatie B. Een alles of niets variant. Figuur 11: Mergen van twee applicaties Whitebook APEX vs OutSystems, een vergelijking door een gebruiker 12

Support Er is een grote community van OutSystems die snel via het forum reageert op vragen en eventuele bugs. Dit alles is centraal geregeld via de hoofdpagina van OutSystems op https://www.outsystems.com/community/. Bij OutSystems hoef je niet te zoeken waar je je vraag moet stellen zoals bij APEX helaas wel het geval is. Ben je op zoek naar een stukje programmatuur kan je altijd de Forge bezoeken. Dit is een verzameling van kleine en grote applicaties: The OutSystems Forge is a repository of reusable, open code modules, connectors, and UI components to help speed up app delivery time. Dus als men iets generieks zoekt, grote kans dat het al een keer gemaakt is en aanwezig in de Forge, wat heel eenvoudig is te importeren naar de eigen applicatie. Conclusie De prettige look-and-feel (als je er eenmaal aan gewend bent), de intuïtieve lay-out en gebruiksvriendelijkheid scoren hoog bij OutSystems. Complexe schermen kunnen snel worden gebouwd worden. Debugging, kant en klare modules en een actieve community, die middels een forum je met raad en daad bijstaat indien er vragen zijn, zorgen ervoor dat iedere APEX gebruiker weinig moeite heeft om zich OutSystems eigen te maken en te gebruiken. OutSystems heeft een hele goede front-end ontwikkeling, en op sommige punten zeker een paar stappen voorsprong op de APEX. Er kan een ontwikkelomgeving gedownload worden via: https://www.outsystems.com/home/downloads. Voor het volgen van een online training ga naar: https://www.outsystems.com/learn/. Het beste kan je beginnen met de training Developing OutSystems Web Applications. Veel leerplezier! OutSystem innovator award: https://www.outsystems.com/news/dutch-it-channel-software-innovator-award/ Whitebook APEX vs OutSystems, een vergelijking door een gebruiker 13