---
title: "Het verwerken van data in mobiele applicaties die op verschillende platforms werken"
date: "2015-07-09"
categories: 
  - "applications"
  - "data-integration"
  - "events"
tags: 
  - "mobile"
  - "mobile-development"
  - "mobiletogether"
  - "software-tools"
description: De low-code tools in Altova MapForce maken het eenvoudig om acties te definiëren in applicaties die op verschillende platforms werken.
---
Status: #blog

Tags:  #mobile #mobile-development #mobiletogether #software-tools

Categories: [mobile-development](/blog/nl/category/mobile-development.md) | [data-integration](/blog/nl/category/data-integration.md) 
# Het verwerken van data in mobiele applicaties die op verschillende platforms werken

Altova MobileTogether stelt bedrijven van elke omvang in staat om op maat gemaakte mobiele oplossingen te ontwerpen en te implementeren die op alle mobiele platforms werken. Dit artikel is het tweede deel van een discussie over de MobileTogether Actiesdialoog, waarmee ontwikkelaars [snel geavanceerde eventhandlers, controlemechanismen en bewerkingen kunnen creëren](https://www.altova.com/nl/mobiletogether/develop-apps-fast.html) die op dezelfde manier werken op iOS®, Android™- en Windows-apparaten, evenals in een HTML5-browser, zonder zich zorgen te hoeven maken over de specifieke details van de API of SDK voor elk mobiel besturingssysteem.

![Wereldbevolking](/blog/images/world-population1.jpg)
Als u deel 1 gemist heeft, lees dan [Definitie van gebeurtenisafhandeling en controle van de uitvoering](/blog/nl/2015/06/defining-event-handling-and-control-flow-for-cross-platform-mobile-applications.md) om op de hoogte te komen. 


Deze post behandelt enkele van de MobileTogether-functies die data bewerken en flexibel en krachtig zijn. Ze versnellen de ontwikkeling van mobiele bedrijfsapplicaties die data gebruiken, zodat drukke gebruikers altijd en overal actuele informatie kunnen ontvangen.

![Afbeelding bijgewerkt 1](/blog/images/image-update-11.png) <!--more--> De onderstaande screenshot toont de startpagina van een mobiele applicatie voor voorraadbeheer, met een korte beschrijving en de mogelijkheid om een uitgebreidere beschrijving te bekijken wanneer de gebruiker op de knop "meer" klikt.

![Een knop in een mobiele app die op verschillende platforms werkt](https://lh3.googleusercontent.com/-22yFbM6VUIU/VZqc2ibPi1I/AAAAAAAACTI/MjWvYauR5CA/clip_image003%25255B3%25255D.jpg?imgmax=800 "A Button in a Cross-Platform Mobile App")

De actie die aan de knop is gekoppeld, wordt hieronder weergegeven in het dialoogvenster "Acties" van MobileTogether Designer. Wanneer de gebruiker op de knop klikt, voegt de actie "[Knooppunten bijwerken](https://manual.altova.com/MobileTogether/mobiletogetherdesigner/index.html?mtdpagedesign_actions_update.htm)" de vaste waarde 'true' toe aan het knooppunt "ShowMore".

![Definitie van de functionaliteit van een knop in Altova MobileTogether ](https://lh3.googleusercontent.com/-M82HnIaVljo/VZqc3N305DI/AAAAAAAACTQ/Jv_2V2fijIg/clip_image004%25255B3%25255D.png?imgmax=800 "Definition of the Action of a Button in Altova MobileTogether")

Het tekstvak met de lange definitie heeft een eigenschap die bepaalt of het zichtbaar is. Deze eigenschap gebruikt een formule om te bepalen of het tekstvak wel of niet moet worden weergegeven.

![Eigenschap die bepaalt of de knop zichtbaar is of verborgen](https://lh3.googleusercontent.com/-w4_VdBzO014/VZqc3T5WZ7I/AAAAAAAACTY/wVHdxSUyQto/clip_image005%25255B3%25255D.png?imgmax=800 "Visibility Property that Hides or Shows the Button")

Zodra de waarde van "ShowMore" verandert naar "true", wordt de uitgebreide beschrijving automatisch weergegeven op het mobiele apparaat:

![Het resultaat dat wordt weergegeven nadat op de knop is geklikt](https://lh3.googleusercontent.com/-W_VE1PDTxu8/VZqc3_AvqYI/AAAAAAAACTg/DhCLXYMDtQs/clip_image007%25255B3%25255D.png?imgmax=800 "Resulting Display After the Button is Clicked")

De "meer tonen"-knop werd tegelijkertijd verborgen, omdat de eigenschap die bepaalt of deze zichtbaar is, een expressie bevat die controleert of "ShowMore" gelijk is aan 'false'.

Deze eenvoudige actiedefinitie creëert een knop die werkt op alle mobiele apparaten, of zelfs in een browservenster op een desktopcomputer. Maar "Update Node(s)" kan veel meer! In ons voorbeeld waren zowel de doelnode als de payload vaste waarden. Zowel het doel, het resultaat – of beide – kunnen ook gedefinieerd worden als XPath-expressies die verwijzingen bevatten naar andere data-elementen, XPath-operatoren, XQuery-functies, speciale MobileTogether-functies, en zelfs door de gebruiker gedefinieerde functies.

Ontwikkelaars kunnen eenvoudig op een van de XPath-knoppen klikken om het dialoogvenster "[XPath-expressie bewerken](https://manual.altova.com/MobileTogether/mobiletogetherdesigner/index.html?mtdxpxqexfv_xpxq_editxpxqexp.htm)" te openen. Hierdoor kunnen ze expressies maken en bewerken, met toegang tot de boomstructuur van XML-gegevensbronnen, een bibliotheek met XPath/XQuery 3.1-operatoren en -functies, en hulpmiddelen om het maken van geldige XPath/XQuery 3.1-expressies te vereenvoudigen.

In een eenvoudig voorbeeld van het toepassen van een expressie, registreert de app "Inventory Manager" de datum waarop deze wordt uitgevoerd, om te testen of de tabel moet worden geïnitialiseerd voor een nieuwe maand wanneer deze de volgende keer wordt gestart. Deze actie "Bijwerken van knooppunten" maakt gebruik van een XQuery-datumsfunctie:

![Een knooppunt bijwerken op basis van een eenvoudige expressie](https://lh3.googleusercontent.com/-wEMAirpLBRk/VZqc4foKqWI/AAAAAAAACTo/rBk8_8Dm0cQ/clip_image008%25255B3%25255D.png?imgmax=800 "Updating a Node Based on a Simple Expression")

Let op dat er geen behoefte is aan API-aanroepen die specifiek zijn voor een bepaald platform. Eén expressie in MobileTogether ondersteunt alle mobiele platforms.

[Knooppunt(en) invoegen](https://manual.altova.com/MobileTogether/mobiletogetherdesigner/mtdpagedesign_actions_update_insertnode.htm) en [Knooppunt(en) toevoegen](https://manual.altova.com/MobileTogether/mobiletogetherdesigner/mtdpagedesign_actions_update_appendnode.htm) zijn acties die beide één of meer nieuwe knooppunten creëren, zoals gespecificeerd in een XPath-expressie. Het verschil tussen deze twee acties is dat "Knooppunt(en) invoegen" het/de knooppunt(en) op een bepaalde positie in de datastructuur toevoegt, terwijl "Knooppunt(en) toevoegen" het/de knooppunt(en) als onderliggende knooppunten van de geselecteerde knooppunten toevoegt.

![MobileTogether-functies om gegevens te manipuleren in mobiele apps die op verschillende platforms werken](https://lh3.googleusercontent.com/-0jRXHSPSeU4/VZqc4_S3l9I/AAAAAAAACTw/6dpTtn_owJI/clip_image009%25255B3%25255D.png?imgmax=800 "MobiltTogether Actions to Manipulate Data in Cross-Platform Mobile Apps")

"Node toevoegen" en "Node toevoegen aan einde" kunnen een dataintegratiemodel dynamisch uitbreiden om datasets van onbekende grootte te verwerken. Zo is de kern van de app "Inventory Manager" een tabel die de status van onderdelen beschrijft die nodig zijn voor de productie van verschillende producten. In de praktijk veranderen productiemateriaal lijsten vaak, omdat productmanagers productvarianten toevoegen of verwijderen, of leveranciers wijzigen. Het zou uiterst inefficiënt zijn om een mobiele oplossing te programmeren voor een specifiek aantal onderdelen. In plaats daarvan kan een ontwikkelaar eenvoudig de inhoud van een enkele rij definiëren, die een enkel onderdeel beschrijft, en standaardwaarden opgeven voor elk element:

![Het creëren van een datamodel voor een mobiele app die op verschillende platforms werkt](https://lh3.googleusercontent.com/-6_I-e8qyg_c/VZqc5DOrGMI/AAAAAAAACT4/h8vberqwkVA/clip_image010%25255B3%25255D.png?imgmax=800 "Creating a Data Model for a Cross-Platform Mobile App")

Wanneer de tabel wordt geïnitialiseerd, kan de actie "Toevoegen aan knoop" worden geconfigureerd binnen een [lusactie](https://manual.altova.com/MobileTogether/mobiletogetherdesigner/index.html?mtdpagedesign_actions_ifloop.htm) om een willekeurig aantal rijen toe te voegen. In de oplossing "Inventory Manager" slaat "PartNumbersCount" het aantal unieke onderdelen op, wat kan worden gelezen uit een databasequery of een extern bestand met een hoofdlijst van onderdelen. De ontwikkelaar hoeft zelfs niet precies te weten hoeveel er zijn.

![Het gebruik van een lus om het datamodel uit te breiden](https://lh3.googleusercontent.com/-NmJbjXstrX8/VZqc5rwaGYI/AAAAAAAACUA/bVF1_D_yOF4/clip_image011%25255B3%25255D.png?imgmax=800 "Extend the Data Model Inside a Loop")

In de bovenstaande definitie wordt de nieuwe knoop gedefinieerd als een XPath-expressie voor een rij uit het datamodel. De functie "Append Node" voegt de aangegeven knoop toe, samen met al zijn onderliggende knopen, en alle elementen, attributen en inhoud van die onderliggende knopen. De nieuwe knoop kan als eerste of als laatste kindelement worden toegevoegd.

Het uitvoeren van een applicatie in de ingebouwde simulator van MobileTogether stelt ontwikkelaars in staat om de data te bekijken terwijl de applicatie draait. Nadat de bovenstaande lus alle iteraties had voltooid, kunnen we zien dat PartNumbersCount 167 was en dat de lus precies 166 extra rijen heeft toegevoegd, waarbij elke rij identiek is aan de oorspronkelijke definitie.

![Data model voor een mobiele applicatie](https://lh3.googleusercontent.com/-r009GTY9ONo/VZqc6G01WhI/AAAAAAAACUI/rtVdGRFbhSc/clip_image012%25255B3%25255D.png?imgmax=800 "Constructed Data Model fo a Mobile App")

De functies "Knoop invoegen" en "Knoop toevoegen" kunnen ook nieuwe knopen creëren die direct als XML-constructies worden ingevoerd, zoals: <MyElement-01 myatt="value">Element Content</MyElement-01>, of ze kunnen worden samengesteld via XQuery-constructies voor het genereren van knopen, zoals: `element MyElement-01 {xs:string("Inhoud van het element")} attribute myatt{"waarde"}`

[Opnieuw laden](https://manual.altova.com/MobileTogether/mobiletogetherdesigner/mtdpagedesign_actions_pgsrcs_reload.htm) is een andere krachtige functie voor het werken met data. De functie "opnieuw laden" kan worden toegepast op elke externe bron die is opgenomen in het ontwerp, inclusief databasequery's, externe data bestanden, grafieken en afbeeldingen. "Opnieuw laden" bevat een handige dropdown-lijst met alle reeds geconfigureerde externe bronnen. In de applicatie "Inventory Manager" is $ProductSalesMTD een SQL-query van de database met bedrijfsorders die een telling van de verkopen van elk individueel product tot nu toe in de huidige maand ophaalt. Producten worden vergeleken met materiaallijsten om de vraagstatistieken voor elk individueel onderdeel te berekenen.

![MobileTogether: Herlaadactie voor mobiele databronnen en grafieken](https://lh3.googleusercontent.com/-ZC1kX63Ve0o/VZqc6UKjc2I/AAAAAAAACUQ/68uozrMpIDo/clip_image013%25255B3%25255D.png?imgmax=800 "Reload Action for Mobile Data Sources and Charts in MobileTogether")

Het is eenvoudig om meerdere databronnen tegelijkertijd te vernieuwen door meerdere vernieuwingsacties naar het bewerkingsvenster te slepen. Hieronder staat een gedeeltelijk uitgewerkte definitie van de acties die door een andere knop in de voorraadbeheerder worden uitgevoerd. Nadat alle databronnen zijn vernieuwd, voert de laatste stap de vernieuwingsactie uit om het prestatieoverzicht opnieuw te tekenen op basis van de meest recente waarden.

![Het gebruik van de "Opnieuw laden"-actie om databasequery's uit te voeren](https://lh3.googleusercontent.com/-XRupqFTAaqc/VZqc67hsblI/AAAAAAAACUY/Wbv6elxt2ZY/clip_image014%25255B3%25255D.png?imgmax=800 "Applying the Reload Action to Execute Database Queries")

Deze screenshot van een kleine Android-tablet toont de belangrijkste datatabel en grafiek voor een versie van de voorraadbeheerder, die is ingesteld voor deelproducten in plaats van honderden individuele onderdelen. Als de voorraad van een bepaald onderdeel onder het gewenste niveau komt, kan de gebruiker de benodigde hoeveelheden invoeren in de kolom aan de rechterkant en vervolgens op de knop "Bestelling plaatsen" klikken om bestellingen bij leveranciers te autoriseren.

![Een mobiele applicatie voor voorraadbeheer, geschikt voor verschillende platforms, ontwikkeld met MobileTogether](https://lh3.googleusercontent.com/-5QS5GlfMxDo/VZqc7UaB86I/AAAAAAAACUg/cGlTHKn11Vg/clip_image016%25255B3%25255D.jpg?imgmax=800 "A Cross-Platform Mobile Inventory Management App Created in MobileTogether")

Een iPhone in horizontale modus toont een vergelijkbaar scherm, waarbij de gebruiker alle gegevens kan bekijken door de pagina te scrollen.

![Mobiele app voor voorraadbeheer, bekeken op een telefoon](https://lh3.googleusercontent.com/-wsuRq0Ae4jE/VZqc7yk9x0I/AAAAAAAACUo/JoHEdivPiAY/clip_image018%25255B3%25255D.jpg?imgmax=800 "Mobile Inventory Management App Viewed on a Phone")

Een reeks korte [videodemonstraties](https://www.altova.com/nl/mobiletogether/demos.html) op de Altova-website staat een demonstratie die laat zien hoe eenvoudig het is om te beginnen met het ontwikkelen van een mobiele bedrijfsapplicatie met de MobileTogether Designer. Of bekijk de webversie van de [Online help voor MobileTogether Designer](https://manual.altova.com/MobileTogether/mobiletogetherdesigner/mtdpagedesign_actions_update_insertnode.htm) voor meer gedetailleerde informatie.

Om meer te weten te komen en de gratis MobileTogether Designer te downloaden om uw eerste mobiele oplossing voor bedrijven te maken, geschikt voor iOS®, Android™, Windows® Phone 8 en Windows 8, evenals een HTML5-client voor browsers, bezoek: [**www.altova.com/mobiletogether**](https://www.altova.com/nl/mobiletogether)
