Altova MobileTogether Designer

La table Edit Sales, comme la table Edit Offices, a été créée sur une page de niveau supérieur séparée. Lorsque la solution est exécutée, cette page est accessible depuis la page principale (capture d'écran en-dessous à gauche). Cliquer sur le bouton Edit Sales Table pour charger la table Edit Sales (capture d'écran en-dessous à droite). La table Sales a plusieurs lignes, chacune d'entre elles contient une colonne d'ID  (éléments de ventes) non-éditable, des colonnes Office, Month, Year, Licenses éditables et une commande Supprimer (capture d'écran en-dessous à droite). De plus, vous trouverez une commande d'ajout de ligne en-dessous de la dernière ligne, un bouton Soumettre dans la barre Edit Sales Table et un bouton Retour pour retourner à la page précédente (la page principale, dans ce cas).

MTDDBCSimulator01   Cliquez pour expansion/compression

Dans le projet, les boutons Edit (première capture d'écran ci-dessous) ont tous les deux été attribués à l'action Aller à la page pour leurs événements SurClicDuBouton respectifs (cliquez avec le bouton de droite sur le bouton et choisissez Actions de commande pour SurClicDuBouton). Ces actions Aller à la page (deuxième capture d'écran ci-dessous) chargent les pages cibles respectives.

MTDDBCEditButtons
MTDDBCOnButtonPressed

 

Création de la table éditable Sales

La structure de la table Sales de la BD est affichée dans l'arborescence de données de \$DB2 (capture d'écran ci-dessous). Puisque l'attribut @id est la clé primaire, il ne peut pas être modifié. Cela signifie qu'à l'ajout d'un nouvel enregistrement, l'utilisateur final ne peut pas saisir une valeur @id via la solution. La valeur @id doit être générée automatiquement en utilisant une expression XQuery. L'expression XQuery est insérée en utilisant la commande de menu de contexte. S'assurer de l'existence avant le chargement de la page (Valeur XPath) :

 

let \$all := \$DB2/DB/RowSet/Row/@id

let \$ids := remove(\$allindex-of(\$all""))

let \$id := if (empty(\$ids)) then 1 else max(\$ids) + 1

return \$id

MTDDBCDataSrcDB2

Dans le projet, nous allons procéder comme suit :

 

Pour...

Instructions...

Afficher toutes les lignes (Sales)

Ajouter une table répétitive avec la ligne Sales en tant qu'élément répétitif

Inclure les commandes de suppression et d'ajout de lignes

Lors de l'ajout de la table, activez l'inclusion automatique des commandes Supprimer/Ajouter

Activer l'édition des valeurs éditables

Ajouter une liste de choix et des commandes d'édition de champs possédant des liens de source de page

Réenregistrer les changements dans la BD

Ajouter une action Enregistrer à l'événement ClicDeBoutonsursoumission de la page d’action ;

De même, cliquez sur le bouton de droite \$DB2 et basculer sur Créer OriginalRowSet

Retourner à la page principale

Ajouter une action Aller à la page à l'événement SurClicDeBoutonRetour

 

 

 

© 2017-2023 Altova GmbH