---
title: "Manipulation des données dans les applications mobiles multiplateformes"
date: "2015-07-09"
categories: 
  - "applications"
  - "data-integration"
  - "events"
tags: 
  - "mobile"
  - "mobile-development"
  - "mobiletogether"
  - "software-tools"
description: Les outils de développement à faible code intégrés à Altova MapForce facilitent la définition d'actions dans les applications multiplateformes.
---
Status: #blog

Tags:  #mobile #mobile-development #mobiletogether #software-tools

Categories: [mobile-development](/blog/fr/category/mobile-development.md) | [data-integration](/blog/fr/category/data-integration.md) 
# Manipulation des données dans les applications mobiles multiplateformes

Altova MobileTogether permet aux entreprises de toutes tailles de concevoir et de déployer des solutions mobiles personnalisées qui fonctionnent sur toutes les plateformes mobiles. Cet article est la deuxième partie d'une discussion sur la boîte de dialogue des actions MobileTogether, qui permet aux développeurs de [créer rapidement des gestionnaires d'événements sophistiqués, des flux de contrôle et des opérations](https://www.altova.com/fr/mobiletogether/develop-apps-fast.html) qui fonctionnent de la même manière sur les appareils iOS®, Android™ et Windows, ainsi que sur un client basé sur un navigateur HTML5, sans se soucier des spécificités de l'API ou du SDK de chaque système d'exploitation mobile.

![Population mondiale](/blog/images/world-population1.jpg)
Si vous avez manqué la première partie, veuillez lire [Définition de la gestion des événements et du contrôle du flux](/blog/fr/2015/06/defining-event-handling-and-control-flow-for-cross-platform-mobile-applications.md) pour vous mettre à jour. 


Cet article présente certaines des fonctionnalités de MobileTogether qui permettent de manipuler des données et qui sont flexibles, performantes, et qui accélèrent le développement d'applications mobiles d'entreprise basées sur les données, afin de fournir des informations actualisées aux utilisateurs, même lorsqu'ils sont en déplacement.

![Mise à jour de l'image 1](/blog/images/image-update-11.png) <!--more--> La capture d'écran ci-dessous montre la page d'accueil d'une application mobile de gestion des stocks, avec une brève description et une option permettant de consulter une description plus détaillée lorsque l'utilisateur clique sur le bouton "en savoir plus".

![Un bouton dans une application mobile multiplateforme](https://lh3.googleusercontent.com/-22yFbM6VUIU/VZqc2ibPi1I/AAAAAAAACTI/MjWvYauR5CA/clip_image003%25255B3%25255D.jpg?imgmax=800 "A Button in a Cross-Platform Mobile App")

La définition de l'action associée au bouton est présentée ci-dessous dans la fenêtre d'actions du concepteur MobileTogether. Lorsque l'utilisateur clique sur le bouton, une action "[Mettre à jour le(s) nœud(s)](https://manual.altova.com/MobileTogether/mobiletogetherdesigner/index.html?mtdpagedesign_actions_update.htm)" insère la valeur fixe "true" dans le nœud "ShowMore".

![Définition du comportement d'un bouton dans 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")

La zone de texte contenant la définition longue possède une propriété de visibilité qui utilise une expression pour déterminer si elle doit être affichée.

![Propriété de visibilité qui permet de masquer ou d'afficher le bouton](https://lh3.googleusercontent.com/-w4_VdBzO014/VZqc3T5WZ7I/AAAAAAAACTY/wVHdxSUyQto/clip_image005%25255B3%25255D.png?imgmax=800 "Visibility Property that Hides or Shows the Button")

Dès que la valeur de "ShowMore" passe à "true", la description complète s'affiche automatiquement sur l'appareil mobile

![Résultat affiché après avoir cliqué sur le bouton](https://lh3.googleusercontent.com/-W_VE1PDTxu8/VZqc3_AvqYI/AAAAAAAACTg/DhCLXYMDtQs/clip_image007%25255B3%25255D.png?imgmax=800 "Resulting Display After the Button is Clicked")

Le bouton "Afficher plus" était masqué car sa propriété de visibilité contenait une expression qui vérifiait si la valeur de "ShowMore" était égale à "false".

Cette simple définition d'action génère un bouton qui fonctionne sur tous les appareils mobiles, ou même dans une fenêtre de navigateur sur un poste de travail. Mais la fonction "Mettre à jour le(s) nœud(s)" peut faire bien plus ! Dans notre exemple, à la fois le nœud cible et la charge utile étaient des valeurs fixes. Soit le nœud cible, le résultat, ou les deux, peuvent également être définis comme des expressions XPath contenant des références à d'autres éléments de données, des opérateurs XPath, des fonctions XQuery, des fonctions spéciales MobileTogether, et même des fonctions définies par l'utilisateur.

Les développeurs peuvent simplement cliquer sur l'un des boutons XPath pour ouvrir.. [Dialogue de modification de l'expression XPath](https://manual.altova.com/MobileTogether/mobiletogetherdesigner/index.html?mtdxpxqexfv_xpxq_editxpxqexp.htm) pour créer et modifier des expressions, avec accès à l'arborescence des sources de données XML, une bibliothèque d'opérateurs et de fonctions XPath/XQuery 3.1, et des fonctionnalités d'aide pour faciliter la création d'expressions XPath/XQuery 3.1 valides.

Dans un exemple simple d'utilisation d'une expression, l'application de gestion des stocks enregistre la date de la dernière exécution afin de vérifier s'il faut initialiser la table pour un nouveau mois lors de son prochain lancement. Cette action "Mettre à jour les nœuds" utilise une fonction de date XQuery :

![Mettre à jour un nœud en fonction d'une expression simple](https://lh3.googleusercontent.com/-wEMAirpLBRk/VZqc4foKqWI/AAAAAAAACTo/rBk8_8Dm0cQ/clip_image008%25255B3%25255D.png?imgmax=800 "Updating a Node Based on a Simple Expression")

Remarquez qu'il n'est pas nécessaire d'utiliser des appels d'API spécifiques à chaque plateforme. Une seule expression dans MobileTogether est compatible avec toutes les plateformes mobiles.

[Insérer un ou plusieurs nœuds](https://manual.altova.com/MobileTogether/mobiletogetherdesigner/mtdpagedesign_actions_update_insertnode.htm) et [Ajouter un ou plusieurs nœuds](https://manual.altova.com/MobileTogether/mobiletogetherdesigner/mtdpagedesign_actions_update_appendnode.htm) sont des actions qui créent un ou plusieurs nouveaux nœuds, conformément à une expression XPath. La différence entre ces deux actions réside dans le fait que "Insérer un ou plusieurs nœuds" ajoute le ou les nœuds à un emplacement spécifique dans l'arborescence des données, tandis que "Ajouter un ou plusieurs nœuds" ajoute le ou les nœuds en tant que nœuds enfants du ou des nœuds sélectionnés.

![Actions MobileTogether pour manipuler les données dans les applications mobiles multiplateformes](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")

Les fonctions "Insérer un nœud" et "Ajouter un nœud" permettent d'étendre dynamiquement un modèle d'intégration de données pour gérer des ensembles de données de taille inconnue. Par exemple, le cœur de l'application "Gestionnaire d'inventaire" est un tableau décrivant l'état des pièces nécessaires à la fabrication de différents produits. Dans le monde réel, les nomenclatures des produits changent fréquemment, car les chefs de produit ajoutent ou suppriment des variantes de produits, ou modifient les fournisseurs. Il serait extrêmement inefficace de coder en dur une solution mobile pour un nombre spécifique de pièces. Au lieu de cela, un développeur peut simplement définir le contenu d'une seule ligne décrivant une seule pièce, et fournir des valeurs par défaut pour chaque élément :

![Création d'un modèle de données pour une application mobile multiplateforme](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")

Lorsque la table est initialisée, l'action "Ajouter à un nœud" peut être configurée à l'intérieur d'une [action de boucle](https://manual.altova.com/MobileTogether/mobiletogetherdesigner/index.html?mtdpagedesign_actions_ifloop.htm) pour ajouter un nombre quelconque de lignes. Dans la solution "Gestionnaire d'inventaire", la variable "PartNumbersCount" stocke le nombre de pièces uniques, qui peut être lu à partir d'une requête de base de données ou d'un fichier externe contenant une liste maîtresse des pièces. Le développeur n'a même pas besoin de connaître le nombre exact.

![Utiliser une boucle pour étendre le modèle de données](https://lh3.googleusercontent.com/-NmJbjXstrX8/VZqc5rwaGYI/AAAAAAAACUA/bVF1_D_yOF4/clip_image011%25255B3%25255D.png?imgmax=800 "Extend the Data Model Inside a Loop")

Dans la définition ci-dessus, le nouveau nœud est défini comme une expression XPath représentant une ligne du modèle de données. La fonction "Ajouter un nœud" ajoute le nœud référencé, ainsi que tous ses enfants, ainsi que tous leurs éléments, attributs et contenus. Le nouveau nœud peut être ajouté comme premier ou dernier enfant.

L'exécution d'un projet en cours dans le simulateur intégré de MobileTogether permet aux développeurs d'examiner les données pendant que l'application s'exécute. Une fois que la boucle définie ci-dessus a terminé toutes ses itérations, nous pouvons constater que la variable PartNumbersCount a la valeur 167, et que la boucle a ajouté exactement 166 lignes supplémentaires, chacune étant remplie de manière identique à la définition initiale.

![Modèle de données pour une application mobile](https://lh3.googleusercontent.com/-r009GTY9ONo/VZqc6G01WhI/AAAAAAAACUI/rtVdGRFbhSc/clip_image012%25255B3%25255D.png?imgmax=800 "Constructed Data Model fo a Mobile App")

Les fonctions "Insérer un nœud" et "Ajouter un nœud" peuvent également créer de nouveaux nœuds qui sont définis directement en tant que constructeurs XML, comme : <MyElement-01 myatt="value">Element Content</MyElement-01>, ou ils peuvent être assemblés à l'aide de constructeurs de nœuds calculés par XQuery, tels que : `element MyElement-01 {xs:string("Contenu de l'élément")} attribute myatt{"valeur"}`

[Recharger](https://manual.altova.com/MobileTogether/mobiletogetherdesigner/mtdpagedesign_actions_pgsrcs_reload.htm) est une autre action puissante pour travailler avec les données. L'action "recharger" peut être appliquée à toute ressource externe incluse dans la conception, y compris les requêtes de base de données, les fichiers de données externes, les graphiques et les images. L'action "recharger" inclut une liste déroulante pratique de toutes les ressources externes déjà configurées. Dans l'application "Gestionnaire d'inventaire", $ProductSalesMTD est une requête SQL qui interroge la base de données des commandes de l'entreprise et qui renvoie le nombre de ventes de chaque produit individuel jusqu'à présent au cours du mois en cours. Les produits sont mis en correspondance avec les nomenclatures pour calculer les statistiques de demande pour chaque pièce individuelle.

![Action de rechargement MobileTogether pour les sources de données et les graphiques mobiles](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")

Il est facile de recharger plusieurs sources de données en faisant glisser plusieurs actions de rechargement dans la zone de modification. Ci-dessous, vous trouverez la définition partiellement développée des actions effectuées par un autre bouton dans le gestionnaire d'inventaire. Une fois que toutes les sources de données ont été actualisées, la dernière étape consiste à effectuer un rechargement afin de redessiner le graphique de performance en fonction des dernières valeurs.

![Appliquer l'action "Recharger" pour exécuter des requêtes de base de données](https://lh3.googleusercontent.com/-XRupqFTAaqc/VZqc67hsblI/AAAAAAAACUY/Wbv6elxt2ZY/clip_image014%25255B3%25255D.png?imgmax=800 "Applying the Reload Action to Execute Database Queries")

Cette capture d'écran, prise sur une petite tablette Android, montre le tableau de données principal et le graphique pour une version du logiciel de gestion des stocks configurée pour les sous-ensembles, plutôt que pour des centaines de pièces individuelles. Si les niveaux de tout composant sont inférieurs aux objectifs, l'utilisateur peut saisir les quantités dans la colonne située à droite, puis cliquer sur le bouton "Valider la commande" pour autoriser les commandes auprès des fournisseurs.

![Une application mobile de gestion des stocks, compatible avec différentes plateformes, créée avec 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")

Sur un iPhone en mode paysage, l'affichage est similaire, et l'utilisateur peut consulter toutes les données en faisant défiler la page.

![Application mobile de gestion des stocks, affichée sur un téléphone](https://lh3.googleusercontent.com/-wsuRq0Ae4jE/VZqc7yk9x0I/AAAAAAAACUo/JoHEdivPiAY/clip_image018%25255B3%25255D.jpg?imgmax=800 "Mobile Inventory Management App Viewed on a Phone")

Une série de courts métrages [Démonstrations vidéo](https://www.altova.com/fr/mobiletogether/demos.html) publié sur le site web d'Altova, qui montre à quel point il est facile de commencer à créer une application mobile d'entreprise avec le logiciel MobileTogether Designer. Vous pouvez également consulter la version web de.. [Aide en ligne pour MobileTogether Designer](https://manual.altova.com/MobileTogether/mobiletogetherdesigner/mtdpagedesign_actions_update_insertnode.htm) pour obtenir des informations plus détaillées.

Pour en savoir plus et télécharger gratuitement le logiciel MobileTogether Designer, qui vous permettra de créer votre première solution mobile d'entreprise pour iOS®, Android™, Windows® Phone 8 et Windows 8, ainsi que pour un client basé sur un navigateur HTML5, veuillez consulter le site : [**www.altova.com/mobiletogether**](https://www.altova.com/fr/mobiletogether)
