Zo integreer je Mendix Apps met andere systemen

mendix, low-code, low code app development, app development, e-mergo,, mendix integraties

Of je nu een verouderd ERP-systeem wilt vervangen met Mendix, of een bestaande database of webservice als gegevensbron wilt gebruiken in een Mendix app, de mogelijkheid om te integreren met andere systemen is de sleutel tot succes bij het creëren van waardevolle applicaties. In dit blog lees je welke opties voor integraties er bestaan ​binnen het Mendix-platform.

Welke opties biedt Mendix voor integratie?

De logica van een Mendix applicatie wordt gecreëerd met behulp van Microflows. Het bouwen van de applicatielogica doe je niet door het programmeren van code, maar door de logica te modelleren op een visuele manier, waar voorgeschreven acties geconfigureerd kunnen worden en met elkaar verbonden kunnen worden. Dit kan je zien als een flowchart die niet enkel een visuele weergave is, maar ook echt functioneert als ‘code’. Een microflow kan acties uitvoeren, zoals het ophalen van data uit de interne database, het maken/bijwerken van objecten, het tonen van pagina’s, maar ook het integreren met externe systemen. In dit blog beschrijven we vier opties voor het integreren met Mendix.

mendix, mendix integraties, api, mendix api, low code, low code development, legacy systems,

Webservices en API’s

Bij de ontwikkeling van moderne webapplicaties spelen API’s een belangrijke rol. Door de snelle groei van SaaS-toepassingen (software-as-a-service) en cloud-gebaseerde diensten hebben softwareontwikkelaars steeds meer behoefte aan API’s om webapplicaties met elkaar te verbinden, om gegevens uit te wisselen en om gebeurtenissen in workflows te activeren.

Op het gebied van webservices zijn REST en OData uitgegroeid tot de huidige standaard. Mendix biedt uitgebreide ondersteuning voor deze webservices. Dat geldt ook voor webservices die zijn gebaseerd op het verouderde SOAP-protocol. Het opvragen en wegschrijven van gegevens via webservices is heel eenvoudig in Mendix. Het aanroepen van een webservice is een actie die wordt uitgevoerd in een microflow. Met behulp van wizards kunnen deze acties eenvoudig toegevoegd worden in microflows. Ook de documentatie op dit vlak is erg duidelijk vanuit Mendix. Binnen enkele stappen is eenvoudig een verbinding gelegd met een API of Webservice.

Internet of Things

mendix, low-code, low code app development, app development, e-mergo,, mendix integraties

Voor het koppelen van Mendix aan randapparatuur in een IoT (Internet of Things)-toepassing, zoals sensors en slimme meters, zijn er naast REST-services andere integratiemethodes beschikbaar in Mendix. In dit soort toepassingen wordt veelal gewerkt met uitwisseling van berichten tussen enerzijds de applicatie en anderzijds de randappartatuur. MQTT is een berichtprotocol dat hierbij veel wordt gebruikt. In de App Store van Mendix is een MQTT-connector beschikbaar, waarmee in een microflow berichten eenvoudig kunnen worden verstuurd naar en ontvangen van een message broker.

Naast daadwerkelijk via het internet communiceren met IoT-apparatuur is het ook mogelijk via andere verbindingen te communiceren. De nieuwe versie van Mendix, die eerder dit jaar is geïntroduceerd op de Mendix World conferentie, biedt verbeterde ondersteuning voor native functies op smartphones. Hierdoor is het bijvoorbeeld mogelijk om mobiele applicaties direct te laten communiceren met IoT-apparatuur via bijvoorbeeld Bluetooth of om direct sensor-informatie uit de smarthphone uit te lezen.

Databases

Webservices en berichtenuitwisseling zijn integratiemethodes die vaak worden toepast in Mendix-applicaties die in de cloud draaien. Naast deze toepassingen is het ook mogelijk om databaseverbinding te maken via JDBC met de generieke Database Connector van Mendix. Je kunt hiermee een directe koppeling maken met vrijwel elke relationele database. De Database Connector kan SQL-opdrachten naar een database sturen voor het opvragen, bewerken en invoeren van gegevens. Deze optie vereist over het algemeen dat Mendix binnen hetzelfde netwerk draait als de database.

Connectoren

mendix, low-code, low code app development, app development, e-mergo,, mendix integraties

Voor koppelingen naar specifieke bedrijfsapplicaties zijn er in de App Store van Mendix een groot aantal connectoren beschikbaar. Voorbeelden hiervan zijn de SalesForce.com Connector, SAP OData Connector en de Microsoft Office365 Connector. Deze connectoren worden via de App Store gratis aangeboden aan de Mendix community en kun je eenvoudig downloaden en gebruiken in je eigen applicaties.

Connector Kit

Mocht geen van bovengenoemde methoden beschikbaar zijn voor je bron (i.e. voor het verbinden met externe systemen via minder gangbare protocollen) biedt Mendix de Connector Kit. Dit is een software development kit (SDK), waarmee ontwikkelaars binnen Mendix zelf een nieuwe connector kunnen maken met behulp van Java code.

4 Use cases voor Mendix integraties

mendix,

Voor je een keuze maakt voor een specifieke integratiemethode is het goed om eerst na te denken over het doel dat je wilt bereiken met de integratie en de manier waarop Mendix wordt gebruikt binnen de organisatie (in de cloud, of on-premise).  Hieronder staan vier voorbeelden van use cases voor integratie en de oplossing die hier het beste bij past.

1 Uitbreiding van legacy systemen

Een veel voorkomende toepassing van Mendix is het ontwikkelen van moderne user-interfaces en mobiele applicaties boven op legacy systemen. Legacy systemen bieden over het algemeen niet de meest moderne technologieën voor connectiviteit. In sommige gevallen zul je gebruik moeten maken van SOAP-services. Mendix biedt de mogelijkheid om dit soort verouderde webservices te gebruiken bij de ontwikkeling van applicatielogica, door complexe XML-berichten te mappen aan entiteiten. Het komt ook voor dat er een directe databasekoppeling moet worden gemaakt met een legacy database. De Database Connector van Mendix kan in de meeste gevallen hiervoor gebruikt worden. Wanneer er minder gangbare protocollen moeten worden gebruikt voor integratie met een legacy systeem is er nog de mogelijkheid om een maatwerk connector te ontwikkelen met de Connector Kit.

2 Maatwerk boven op ERP in de cloud

EPR-systemen worden tegenwoordig steeds vaker aangeboden als SaaS-oplossing. Voorbeelden hiervan zijn SAP S4/HANA Cloud en Microsoft Dynamics 365. Deze oplossingen zijn zeer configureerbaar, maar bieden weinig flexibiliteit met betrekking tot de ontwikkeling van maatwerk. Tegelijkertijd worden er in dit soort SaaS-toepassingen allerlei integratiemogelijkheden aangeboden als webservice in de vorm van opvraagbare en interoperabele RESTful API’s, waarmee gegevens via bijvoorbeeld het Open Data Protocol (OData) kunnen worden uitgewisseld. Dit biedt nieuwe mogelijkheden om complementaire functionaliteiten boven op het ERP-systeem te implementeren met behulp van Mendix.

Voor de integratie van OData-services van SAP en Microsoft zijn er in de App Store van Mendix standaard modules beschikbaar. In deze modules zijn veel noodzakelijke configuraties al ingesteld, zoals de authenticatie naar de SaaS-omgeving, waardoor de implementatie van dit soort services snel kan worden gerealiseerd.

Specifiek voor SAP biedt Mendix nog de mogelijkheid om apps te deployen naar SAP Cloud Platform. Dit is hetzelfde platform waarbinnen S4/HANA Cloud ook draait. Je kunt er dan voor kiezen om SAP HANA te gebruiken als primaire database voor de applicatie.

3 Cloud-diensten gebruiken in applicatielogica

Steeds meer bedrijven leveren functionaliteit via het internet als cloud-dienst. Via cloud-platforms zoals AWS, Azure en IBM Watson worden allerlei interessante webservices aangeboden, waarmee de functionaliteit van Mendix-applicaties kan worden verrijkt. Denk bijvoorbeeld aan het vertalen van teksten, het geocoderen van adressen, of het checken van de kredietwaardigheid van klanten. De meeste van dit soort services worden via REST API’s beschikbaar gesteld. Het verwerken en versturen van gegevens via REST API’s is eenvoudig met Mendix. Internet of Things kan ook gezien worden als cloud-dienst. De ‘dienst’ hiervan is dat de data die de apparatuur genereert kan worden uitgelezen in de Mendix applicatie. Ook dit gaat dan middels een REST API.

4 Mendix als middleware

Bedrijven die participeren in digitale ecosystemen, moeten data en/of functionaliteit beschikbaar kunnen stellen via API’s. REST geldt als de huidige standaard om dit soort API’s te ontwikkelen. Hoewel het niet de meest voor de hand liggende toepassing is, kan Mendix hiervoor heel goed ingezet worden, omdat het de mogelijkheid biedt om entiteiten (datasets) te publiceren als REST-services. Deze services kunnen vervolgens door andere systemen geconsumeerd worden. Op deze manier kan het Mendix platform fungeren als middleware om back-end systemen via REST API’s open te stellen voor externe partijen, zoals partners en leveranciers. Meer weten hierover? Bekijk ons blog over middelware.

Meer weten over Mendix integraties?

Mendix is op meerdere manieren met tal van bestaande systemen te koppelen en kan vrijwel overal data vandaan halen. Vanuit E-mergo denken wij graag met je mee over de verschillende oplossingen en mogelijkheden om bestaande systemen uit te kunnen lezen voor het maken van een sterke applicatie.

Maak een afspraak    Stel een vraag

 

Dit blog is geschreven door:

Steven Samuels Brusse,
Senior Consultant

Steve Jonk
Mendix Developer