Après l’article dans lequel je me lamentais qu’il n’y ait pas de passerelle entre Heredis et Excel, quelques bonnes âmes, en particulier Jimbo du forum d’Heredis, que je remercie du fond du coeur, ont eu la gentillesse de m’aider à comprendre comment on peut avec beaucoup de persévérance retrouver dans Excel les informations qu’on a saisies dans Heredis.
J’ai pensé qu’un petit mode d’emploi pourrait aider certains d’entre vous.
Attention, cette procédure ne s’adresse qu’à des personnes qui ont une connaissance au moins basique des bases de données. Si quand on vous parle de tables, de requêtes ou de langage SQL vous ouvrez de grands yeux, passez votre chemin, et faites savoir à BSD que mettre à la disposition de ses clients – oui, clients, parce que nous payons fort cher le droit d’utiliser un logiciel – un outil simple et adapté pour récupérer nos données dans un tableur devrait être une de leur priorité.
Vous allez avoir besoin d’installer dans votre navigateur Firefox un plugin spécial, SQLite Manager, qui fera tourner la base de données.
Si vous utilisez un autre navigateur – comme c’est mon cas – à titre exceptionnel téléchargez Firefox et lancez le.
Les plugins se trouvent ici
Firefox – Modules complémentaires
Dans le catalogue, trouvez SQLite Manager, et installez le. Ici c’est simple, comme il s’agit d’un plugin Firefox, c’est à dire d’un morceau de code contenant un programme optimisé pour fonctionner à l’intérieur d’un navigateur défini, l’installation va se faire toute seule.
C’est installé ? Pour le lancer, il vous suffira d’aller dans votre étiquette Firefox, en haut à gauche de l’écran, Développement web – SQLite Manager.
Maintenant, récupérons notre base de données, c’est à dire la base Heredis sur laquelle nous travaillons.
Allons dans Heredis – fichier – Préparer pour – Heredis Mac
Le programme nous demande un nom de fichier et nous propose un chemin de sauvegarde
Il a fini, notre fichier est prêt .
Alors lançons nous.
Ouvrons SQLite Manager dans Firefox
Dans la rubrique Base de données, cliquons sur Connecter la base de données. Une fenêtre Explorateur s’ouvre, allons récupérer notre fichier. Attention, pour voir notre base, nous devons indiquer « tous les fichiers » dans les extensions que le programme va visualiser.
Ouvrons le fichier
Voici l’écran de travail de SQLite manager.
La zone 1 comprend la structure de la base de données. C’est là que se trouvent les tables, et dans chacune d’elle les champs de la table. Nous allons y revenir.
La zone 2 va nous permettre d’écrire nos requêtes, c’est à dire la question structurée qui va choisir les données que nous voulons afficher.
La zone 3 va afficher nos résultats.
Une base de données, c’est un ensemble structuré et organisé d’informations. Pour pouvoir interroger une base de données, il faut connaitre sa structure – quelles sont les tables, quels sont les champs de la table – et connaitre les liens entre les différentes tables.
Voici les différentes tables qu’utilise Heredis.
Pour une requete simple qui ne va interroger qu’une seule table, la requête par défaut de la zone 2 est facilement applicable : choisissez la table que vous voulez interroger, les champs qui vous intéressent, et cliquez sur Exécuter les commandes SQL.
Dans l’exemple ci dessous, je vais demander à afficher les départements et villes que j’ai entrés dans Heredis
Les flèches rouges correspondent à la table – ici Lieux – les flèches vertes aux champs à afficher, que j’ai repris de la table.
Voici le résultat.
Pour récupérer le résultat de cette requête dans Excel, sélectionnons toutes les lignes de la plage de résultat, puis avec un clic droit sur la zone, choisissons l’option « Copy Row as CSV Excel compatible » . Ouvrons une nouvelle feuille Excel – ou autre tableur équivalent – et copions nos données.
Pour ce genre de requête qui ne porte que sur une table, tout est simple. Mais reconnaissons que ça ne va pas nous apporter grand chose. Il est temps de passer à l’étape suivante.
Les requêtes sur plusieurs tables à la fois – celles qui sont vraiment intéressantes – vont nécessiter de connaitre la façon dont Heredis lie entre elles ces différentes tables.
J’ai retrouvé un certain nombre de ces liaisons au fur et à mesure de mes besoins, je vous partage ici la note Evernote dans laquelle je tiens ces liens à jour.
Pour terminer ce petit tutoriel sans prétention, je vous propose les quelques requêtes que j’ai mises au point pour vous aider à vous lancer, si le coeur vous en dit.
Si une des requêtes ci dessous vous intéresse, surtout ne faites pas un copier/coller de votre écran, mais tapez à nouveau la requête dans la partie 2 de SQLite Manager. Un site pour tourner ajoute de nombreux codes qui vous sont invisibles, mais modifient totalement le langage et le rendent inexploitable en langage SQL …..
Pour récupérer les événements individuels dans un registre
===
SELECT Sources.Titre,Sources.Document,Sources.Cote,Evenements.TriTypeUCD,Noms.Nom,Individus.Prenoms,Evenements.AgeSurActe
FROM Sources
JOIN LiensSources ON Sources.CodeID=LiensSources.XrefSource
JOIN Evenements ON LiensSources.XrefProprietaire=Evenements.CodeID
JOIN Individus ON Individus.CodeID=Evenements.CodeProprietaire
JOIN Noms ON Individus.CodeNom=Noms.CodeID
WHERE Document=’xxx’
ORDER BY Evenements.EventType, Noms.Nom
===
Pour récupérer les événements Union dans un registre
===
SELECT Sources.Titre,Sources.Document,Sources.Cote,Unions.TypeUnionUCD,Noms.Nom,Individus.Prenoms
FROM Sources
JOIN LiensSources ON Sources.CodeID=LiensSources.XrefSource
JOIN Unions ON Unions.CodeMainEventMariage=LiensSources.XrefProprietaire
JOIN Individus ON Individus.CodeID=Unions.Epoux OR Individus.CodeID=Unions.Epouse
JOIN Noms ON Individus.CodeNom=Noms.CodeID
WHERE Document=’xxx’
ORDER BY Noms.Nom
===
Pour récupérer les données d’un recensement
===
SELECT Sources.Document,Evenements.Subdivision,Sources.Cote,Evenements.TriTypeUCD,Noms.Nom,Individus.Prenoms,Evenements.AgeSurActe,Sources.Titre
FROM Sources
JOIN LiensSources ON Sources.CodeID=LiensSources.XrefSource
JOIN Evenements ON LiensSources.XrefProprietaire=Evenements.CodeID
JOIN Individus ON Individus.CodeID=Evenements.CodeProprietaire
JOIN Noms ON Individus.CodeNom=Noms.CodeID
WHERE Document=’Recensement Chalandray 1901′
ORDER BY Evenements.EventType, Noms.Nom
===
Un dernier conseil, n’utilisez cette possibilité que pour interroger votre fichier, et en aucun cas pour faire une mise à jour massive de votre base de données, vous risqueriez de l’endommager et je pense qu’Heredis ne se sentirait pas responsable de la destruction de vos données.
J’espère avoir donné à certains quelques outils abordables. Soyez indulgent avec moi, je ne suis pas informaticienne, et il y a plus de 10 ans que je n’ai plus rédigé de manuel de procédures …. Si j’ai fait des erreurs, ou si vous avez des améliorations à proposer, n’hésitez pas à intervenir dans les commentaires.
Laisser un commentaire