Le 14 septembre 2017, nous avons publié une version actualisée de notre Politique de confidentialité. En utilisant video2brain.com vous vous engagez à respecter ces documents mis à jour. Veuillez donc prendre quelques minutes pour les consulter.

WinDev 21 : La gestion des bases de données HFSQL

Se connecter par programmation

TESTEZ LINKEDIN LEARNING GRATUITEMENT ET SANS ENGAGEMENT

Tester maintenant Afficher tous les abonnements
Vous allez vous connecter par programmation sur un serveur HFSQL client/serveur, ou sur n'importe quel autre serveur de bases de données.
11:20

Transcription

Nous avons donc vu deux méthodes pour importer des données dans un serveur Hyper File SQL. Maintenant nous allons nous attarder sur les connexions. Pour cela, je vais à nouveau créer une autre base de données à partir d'un petit fichier tout simple, donc quelque chose de plus simple justement que ces exemples-là pour avoir différents cas et différentes situations. Je vais donc importer un nouveau fichier de données que vous allez trouver dans les sources si vous y avez accès. Donc ici moi je les ai placées sur mon bureau, le dossier Sources, et dans ce dossier Sources j'ai un fichier de données qui s'appelle Animaux. Pour l'instant, ce qu'il me propose c'est de l'importer dans la dernière base de données que j'ai créée, Congés alors je vais pas l'importer là-dedans, je vais en créer une nouvelle comme tout à l'heure, je vais créer une base de données que je vais appeler Animaux. Voilà, comme le fichier de données qui sera à l'intérieur, il n'y a pas d'analyse correspondante c'est juste un fichier de données tout seul, enfin avec son fichier a memory index mais c'est quand même un fichier de données tout seul, donc je continue, il est là, voilà. Je ne vois que le .fic mais dans le répertoire vous avez un .fic, un .mmo et un .ndx. Je vais importer donc le fichier de données, voilà, on le laisse faire, un petit peu plus long que tout à l'heure parce qu'il y a des images un peu grosses je crois à l'intérieur. Voilà donc il a importé le fichier de données que je peux consulter évidemment, et voir donc cette liste de 26 animaux c'est un alphabet des animaux en fait. Voilà donc comme ça on aura plusieurs cas de figures, on aura une base de données qui a été envoyée depuis une application, l'autre qui a été importée depuis le Centre de contrôle HFSQL. Et ici une petite base de données avec un seul fichier tout simple qui va nous servir à faire nos démonstrations. Donc la première chose que je vais faire, c'est créer une petite application démo qui nous servira après éventuellement sur le reste du cours, donc c'est pas une application qui va faire quelque chose de bien particulier mais qui va plutôt contenir différentes fenêtres de démonstration. Donc pour ça je vous propose de lancer WinDev, et de créer donc un projet de démonstration. Alors nous allons lui donner un petit nom tout de suite, je clique sur Créer un projet Application Windows ou Linux, on va l'appeler Mon_Projet_Bdd. Je clique sur Suivant, ça sera une Plateforme Windows évidemment, exécutable 32 bits très bien, pas de GDS dans cette démo, charte de programmation , charte graphique : on va prendre celle qui est proposée par défaut, langue : français, pas de fenêtre Le saviez-vous et justement la base de données, voilà qui m'intéresse. Donc ici je lui dis évidemment que je veux créer une base de données. Je continue, et il va donner à l'analyse le nom du projet, très bien aussi. Et je vais donc établir une connexion avec le serveur Hyper File SQL puisque c'est le but ici de ma base de données. Pour l'instant la connexion va être établie dans l'analyse, mais on verra après qu'on peut également la faire par programmation c'est le but de cette démonstration. MaConnexion1 c'est le nom de la connexion, on peut l'appeler MaConnexion_bdd, enfin peu importe ça ne changera rien à la démo. Saisir les paramètres de connexion avancées maintenant ou plus tard je vais le faire tout de suite, c'est-à-dire donc le nom du serveur, le log-in etc. Donc je continue, alors le serveur on a vu que c'était 127.0.0.1. Le nom de compte utilisateur c'est Admin pas de mot de passe sur mon serveur, je continue, et il me propose donc les bases de données se trouvant sur ce serveur. Donc par rapport à ce que l'on a fait tout à l'heure on va prendre Animaux dans laquelle il y a un fichier de données. Donc il a crée l'analyse, très bien. Et la il me propose, enfin il me demande plus exactement ce que je veux faire au niveau des fichiers de données. Eh bien je ne vais pas en créer un, il existe déjà, sur le serveur HFSQL, je vais donc utiliser un fichier de données d'une base existante. Je prends cette option, je continue, toujours HFSQL. La connexion je viens de l'établir donc effectivement, elle est là, je la prends. Et voilà le fichier de données qui se trouve à l'intérieur de cette base de données. Je sélectionne donc le fichier Animaux, je l'envoie sur la droite, je clique sur Suivant, et c'est fait. Il me propose de créer une fenêtre puisque je suis en train de créer un projet mais je vais pour l'instant abandonner cette option, on le fera juste après, on va d'abord vérifier le fichier de données. Ici je vois que j'ai affaire à un fichier de données qui se trouve sur le serveur Hyper File SQL, pour l'instant la connexion a été établie ici dans l'analyse, comme vous le voyez là. On verra après le côté programmation. Au niveau de mon fichier de données je voudrais quand même vérifier que j'y ai bien accès et qu'il contient bien des informations. Ici je viens de créer l'analyse, faut pas l'oublier, donc le mieux c'est quand même d'être sûr de l'enregistrer et de la générer. Comme il s'agit de la première génération, il se passe pas grand chose mais il a quand même fait quelque chose derrière. Si je n'avais pas fait ça, je ne pourrais pas faire l'opération suivante : qui consiste à Éditer le fichier de données avec WDMap pour en voir le contenu. Et là voyez que ça fonctionne, j'accède bien au fichier de données qui est sur le serveur, même si je le vois pas ici il n'y a rien qui m'indique en vérité que le fichier se trouve dans cette fenêtre parce qu'ici on le voit grâce à la couleur. Donc à partir de là je vais créer une fenêtre et je vais afficher ces données dans une table pour commencer. Donc allons-y, Nouveau Fenêtre Vierge on va l'appeler, cette petite fenêtre on va l'enregistrer tout de suite et je vous conseille de faire ça dès de départ parce que sinon vous aurez des problèmes de complétion automatique dans le code etc. Donc on va l'appeler Animaux. Voilà, je vais faire un Contrôle + w pour enlever les petits volets et je vais diminuer un petit peu la fenêtre qui est un poil trop grande pour mon affichage. Voilà donc je l'enregistre à nouveau et à partir de là, je vais y mettre une table verticale qui va afficher les données du fichier Animaux. Donc là il me propose tous les champs donc je vais tous les prendre sauf l'IDAnimaux qui n'a aucun intérêt ici. Nom, Photo, Famille, Espérance de vie ça va bien. Par contre il n'y a pas de clé particulière sur mon fichier pour l'instant en tout cas donc il doit les trier dans l'ordre des IDAnimaux, ça ira très bien pour la démo. Table en affichage oui, colonnes verticales, voilà c'est terminé. Donc voilà le résultat, donc on va réorganiser un petit peu les champs pour mettre la photo un poil plus grande à la limite, voilà. Par trop non plus, bon et en fait il n'y a pas beaucoup d'informations à afficher par rapport à la taille de la fenêtre, mais l'essentiel c'est que ça fonctionne. Je vois mes données, je vais quand même tester la fenêtre pour aller jusqu'au bout de la démonstration, je clique donc sur le bouton Go, il me dit qu'il va iconiser l'éditeur, je le sais c'est plus la peine de me le dire à l'avenir. Donc voilà le résultat, je suis connecté à ma base de données et je vois donc mes données. Donc maintenant l'idée ça va être de ne pas utiliser la connexion qui se trouve dans l'analyse, alors la connexion elle se trouve dans l'analyse qui est ici. Donc elle est là en fait, et ce que je vais faire dans un premier temps c'est établir une connexion par programmation. Ensuite on verra qu'on peut éventuellement même à la limite supprimer cette connexion-là. Mais l'idée ici c'est vraiment d'établir la connexion par programmation, de voir comment on fait cette chose. Cette connexion par programmation on va la faire avant évidemment d'utiliser les données, alors vous avez deux solutions ici. Si vos données ne sont à utiliser que dans la fenêtre on les ferait au niveau de la fenêtre, ou alors plus logiquement, dans la plupart des cas, au niveau du projet lui-même. Donc je vais faire un Clic droit sur le projet et je vais aller sur le Code de l'élément voilà, et c'est probablement ici dans la partie initialisation que vous allez insérer le code de connexion à la base de données. Alors nous allons commencer par déclarer une variable de type connexion que je vais appeler MaConnexion est une connexion. Voilà il a préfixe de G pour global. Ensuite je vais lui donner différentes propriétés, la première importante à ne pas oublier c'est le Provider. Le Provider correspond au type de base de données sur laquelle je vais me connecter, et en l'occurrence ce sera du HFClientServeur. C'est important, si vous ne précisez pas le type de provider, ça ne fonctionnera pas. Ensuite je vais avoir besoin de préciser le Serveur. Alors évidemment ici je mets tout en dur mais dans un vrai projet on paramètrera toutes ces valeurs, on les mettra dans des paramètres modifiables comme par exemple en utilisant les fonctions ChargeParamètre et SauveParamètre par exemple. Ensuite donc gcnxConnexion.BaseDeDonnées donc là je vais me connecter sur la base de données Animaux. Puis il me faut log in, alors le log in en fait c'est la propriété Utilisateur donc c'est admin, le mot de passe. Ici il est vide mais il faut quand même le préciser. Donc là j'ai défini les différentes propriétés indispensables pour établir la connexion. Pour faire cette connexion à proprement dite, je vais utiliser la fonction hOuvreConnexion. hOuvreConnexion va me permettre donc de me connecter sur le serveur que j'ai défini ici. Normalement je devrais pouvoir me contenter de cette ligne-là dans la pratique il vaut mieux vérifier que ça fonctionne bien, moi je vous conseille de tester. On va faire un SI PAS hOuvreConnexion ALORS, donc si ça ne fonctionne pas, si ça renvoie une erreur, alors on va afficher une erreur. Donc là j'affiche l'erreur directement, dans un autre projet encore une fois peut-être qu'on se contenterait de la journaliser par exemple, ou d'afficher une erreur plus compréhensible à l'utilisateur, mais ici pour la démo je vais utiliser HErreurInfo qui renvoie dont les infos liées au fichier de données, et je vais prendre HErrComplet donc quand on fait du débuggage c'est intéressant d'avoir l'erreur complète. Donc ici normalement j'établis la connexion avec la base de données. Donc ça devrait fonctionner, si je teste ma fenêtre. Alors je viens de cliquer sur le Go général comme la fenêtre n'était pas en avant plan, il me demande quelle est la fenêtre principale, on va dire pour l'instant que c'est celle-là. Voilà, et ça continue à fonctionner alors vous allez me dire ça fonctionnait déjà avant, c'est pas très démonstratif effectivement. Dans la pratique, il va quand même établir la connexion à partir de là. Ce qui se passe ici c'est que je pourrais, si je voulais, supprimer la connexion de l'analyse. Alors c'est pas une super bonne idée dans la pratique parce que si je supprime la connexion, il va me dire qu'ici le fichier de données n'est plus lié à rien, donc la connexion dans l'analyse est quand même nécessaire dans la mesure où j'en ai besoin tant que je fais le développement, tant que je suis dans l'éditeur WinDev, pour justement accéder aux fichiers de données, pour avoir le live data, c'est-à-dire les données qui s'affichent directement dans la fenêtre quand je l'utilise comme ça, pour que dans le code je puisse accéder aux différentes rubriques du fichier etc. Mais dans l'absolu, c'est quand même mon code ici de connexion qui va être utilisé puisque quand je lance le projet, il est exécuté. Et si éventuellement, j'avais le même fichier de données sur un autre serveur, il suffirait ici que je change mes infos de connexion pour passer sur l'autre serveur, et j'aurais mon application qui continue à fonctionner évidemment et qui afficherait les données, bien entendu, de l'autre serveur.

WinDev 21 : La gestion des bases de données HFSQL

Découvrez les manipulations, les outils et les possibilités intéressantes des bases de données HFSQL dans WinDev. Installez, utilisez, et gérez le serveur HFSQL client/serveur.

2h03 (23 vidéos)
Aucun commentaire n´est disponible actuellement
 
Logiciel :
WinDev WinDev 21
Spécial abonnés
Date de parution :23 févr. 2016

Votre formation est disponible en ligne avec option de téléchargement. Bonne nouvelle : vous ne devez pas choisir entre les deux. Dès que vous achetez une formation, vous disposez des deux options de consultation !

Le téléchargement vous permet de consulter la formation hors ligne et offre une interface plus conviviale. Si vous travaillez sur différents ordinateurs ou que vous ne voulez pas regarder la formation en une seule fois, connectez-vous sur cette page pour consulter en ligne les vidéos de la formation. Nous vous souhaitons un excellent apprentissage avec cette formation vidéo.

N'hésitez pas à nous contacter si vous avez des questions !