PC SOFT
ONLINE REPOSITORY
FOR WINDEVWEBDEV AND WINDEV MOBILE

Home |  | Sign in | English US
Wndev mobile 18 Android - exemple didactique d'accès HF et Sqlite
Published by CLEROY
in the category Tools
New features



Description
L'objet de cet exemple didactique est de préciser les informations issues de la documentation, des exemples et du manuel d'autoformation. Cet exemple se réfère à la version K18F039034, version du module 18.0.89.0 (L'exemple peut devenir non valide en cas d'évolution des accès fichiers lors de versions ultérieures de WINDEV Mobile 18).

L'installation de référence a été effectuée sur Galaxy Tab II (10.1) mis à jour en version android 4.1.1, kernel 3.0.31-523998.

La page d'accueil propose 4 boutons.
- Bouton "BDD (1)" : affiche une zone répétée qui accède au fichier "evts1" qui est placé lors de l'installation dans le "répertoire BDD" (répertoire android "Database"); ce fichier comporte lors de l'installation 3 enregistrements dont un concerne l'année "-1500".
- Bouton "Fichiers" : affiche une zone répétée qui accède au fichier "evts" qui est placé lors de l'installation dans le "répertoire courant" (répertoire android "Files") ; ce fichier comporte lors de l'installation 3 enregistrements dont un concerne l'année "-1500".
- Bouton "Sqlite" : affiche une zone répétée qui accède à la base de données "test.db" qui est placée lors de l'installation dans le "répertoire BDD". La base comporte un fichier "evts2" qui comporte lors de l'installation 2 enregistrements (celui concernant l'année "-1500" est absent).
- Bouton "Init. Fichiers" : ce bouton sera utilisé plus loin pour copier des données. Ne l'utilisez pas à ce stade.
L'installation place également un fichier "evts2" dans le "répertoire courant". Nous constaterons que ce fichier ne sera pas utilisé.

Après installation :
- le bouton "BDD" accède au fichier evts1 ; la zone répétée comporte les données initiales
- le bouton "Fichiers" accède au fichier evts ; la zone répétée est vide (evts ne comprend pas les données d'initialisation comprises dans l'installation)
- le bouton "Sqlite" accède au fichier evts2 de test.db ; la zone répétée est également vide (alors que nous avons joint une base non vide lors de l'installation)
Donc seul le fichier situé dans le répertoire BDD comprend les données d'initialisation.

Ajouter maintenant un enregistrement identique ("1, an 1, com 1") dans chacun des fichiers en cliquant successivement sur les 3 boutons BDD, Fichers et sqlite. Pour ouvrir la fiche qui permet d'ajouter un enregistrement, cliquez sur le n° d'enregistrement d'une ligne de la zone répétée. Valider avec le bouton "appliquer". Vérifier avant de fermer l'application que l'an 1 est présent partout (ouvrez de nouveau chacune des 3 listes avec les boutons BDD, Fichers et sqlite).

Fermer maintenant l'application puis la relancer
- Cliquer sur BDD (cas 1): le fichier evts1 comporte les données initiales, mais pas les ajouts
- Cliquer sur Fichiers (cas 2): le fichier evts ne comporte que les ajouts et pas les données d'initialisation
- Cliquer sur Sqlite (cas 3): le fichier evts2 (de la base test.db) ne comporte que les ajouts et pas les données d'initialisation.
Donc seul le fichier présent dans le "répertoire courant" comporte les saisies effectuées (ajouts dans notre exemple).

Nous sommes donc dans la situation où :
- un fichier placé dans le répertoire BDD reprend les données initiales mais perd les enregistrements ajoutés (ou modifiés ou supprimés)
- un fichier placé dans le répertoire courant comprend les enregistrement ajoutés (ou modifiés) mais perd les données d'initialisation.

Comment conserver à la fois les données d'initialisation et les données ajoutées ?
Pour y parvenir, cliquez sur le bouton "Init Fichiers" pour ajouter au fichier evts les données de evts1 (qui comprend les données initiales) et pour ajouter ces mêmes données initiales à test.db.

Fermer de nouveau l'application puis la relancer :
- Cliquer sur BDD (cas 1): le fichier evts1 comporte toujours les données initiales inchangées, mais pas les ajouts
- Cliquer sur Fichiers (cas 2): le fichier evts comporte maintenant les données initiales ET les ajouts
- Cliquer sur Sqlite (cas 3): le fichier evts2 comporte maintenant les données initiales ET les ajouts.

NOTA : ne pas supprimer d'enregistrements provenant des données initiales dans cet exercice car alors les données initiales peuvent avoir évolué (cas 2 et 3) ; les données initiales restent inchangées dans le cas 1. Ne supprimez pas l'enregistrement "-1500" dont la présence est testée dans le programme pour déceler quel fichier est utilisé.

Conclusion : pour installer une application qui comprend des données initiales et doit pouvoir faire évoluer les enregistrements, il faut :
1- placer un fichier de données initiales HF dans le répertoire BDD
2- placer un fichier HF vide (ou le créer avec hcréationsiinexistant) dans le répertoire courant (accès HF classic) : c'est ce fichier qui sera mouvementé par l'application. On peut aussi alternativement utiliser une base sqlite vide placée dans le répertoire BDD (accès natif sqlite)
3- recopier par programmation lors du 1er lancement de l'application (et surtout pas à chaque lancement) les données initiales (1) dans le fichier actif (2). Dans cet exemple nous avons effectué cette copie à l'aide d'un bouton, et non par programmation lors du premier lancement.
Illustrations, screen shots
none
none
User reviews
(To evaluate this resource, click 'Write a review')
No review or comment? Be the first one!
ABOUT
RATING:
00No rating
DOWNLOADS:
1,103
PUBLISHED:
January 21, 2013
VERSION:
1.0
CONCERNS:
WINDEV Mobile
Minimum version: K18F039034
SIZE:
9.8 MB