Author Topic: Exporter la table  (Read 7089 times)

0 Members and 1 Guest are viewing this topic.

Offline jmb

  • VIP
  • Sr. Member
  • *
  • Posts: 29
    • View Profile
Exporter la table
« on: September 29, 2012, 10:14:15 »
Pour des raisons de confort, je souhaiterais ouvrir la table des entités avec un tableur ou une base de données afin de pouvoir y appliquer des requêtes.
Est-il possible de l'enregistrer ou exporter dans un format genre .csv ou autre.
Si oui comment faire?
Merci pour toute réponse.

Offline arvernes

  • Administrator
  • Hero Member
  • *****
  • Posts: 684
  • Pep den a dle heuilh e Donkadur
    • View Profile
    • Arvernes web site
Re : Exporter la table
« Reply #1 on: September 30, 2012, 07:10:45 »
Bonjour,
A priori non, je ne connais pas de fonction d'export de la table aujourd'hui. Peut être que ce que tu souhaites serait réalisable par un rapport, ou script. Il me semble cependant que la dissociation du code de la Table a été faite par Daniel dernièrement, donc pour la suite, peut être cela pourrait être une fonction à y rajouter. Déjà plusieurs nouvelles fonctions sont envisagées pour la table, alors si celle que tu demandes ne semble pas trop compliquée, à voir....... Francois
Met ’drokfen ket evit teñzorioù va Frankiz !

Offline JoPol

  • VIP
  • Sr. Member
  • *
  • Posts: 28
    • View Profile
Re: Exporter la table
« Reply #2 on: September 30, 2012, 18:19:43 »
The plugin with SPARQL based reports might be of help. Make a local copy of the XSL and choose XML output. Paste the result into a spreadsheet.

Actually I'm working on a help page to create reports from a command line. It can produce csv output what can be read by many spread sheet tools. Follow the link "more than you want to know" on the help page under construction. Use the option "--help" to learn more about the commands.
« Last Edit: September 30, 2012, 18:43:42 by JoPol »

Offline JoPol

  • VIP
  • Sr. Member
  • *
  • Posts: 28
    • View Profile
Re: Exporter la table
« Reply #3 on: September 30, 2012, 18:37:30 »
You could also write your queries (=requêtes?) directly in SPARQL.

Offline jmb

  • VIP
  • Sr. Member
  • *
  • Posts: 29
    • View Profile
Re:Re : Exporter la table
« Reply #4 on: October 01, 2012, 08:31:31 »
J'ai essayé SPARQL avec ancestris 0.7 et 0.8.
J'ai eu le même message d'erreur:
*** exception caught
java.io.FileNotFoundException:
   at java.io.RandomAccessFile.open(Native Method)
   at java.io.RandomAccessFile.<init>(RandomAccessFile.java:233)
   at java.io.RandomAccessFile.<init>(RandomAccessFile.java:118)
   at genjreports.rdf.ReportRdf.getQuery(ReportRdf.java:296)
   at genjreports.rdf.ReportRdf.start(ReportRdf.java:100)
   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
   at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
   at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
   at java.lang.reflect.Method.invoke(Method.java:601)
   at genj.report.Report.start(Report.java:835)
   at genj.report.Runner.run(Runner.java:68)
   at java.lang.Thread.run(Thread.java:722)


Offline JoPol

  • VIP
  • Sr. Member
  • *
  • Posts: 28
    • View Profile
Re: Exporter la table
« Reply #5 on: October 01, 2012, 10:17:09 »
Please go to the help pages. You need to save the examples of rules and queries and fill in their file names in the options panel.

Offline jmb

  • VIP
  • Sr. Member
  • *
  • Posts: 29
    • View Profile
J'ai réussi à exporter deux tables
« Reply #6 on: October 09, 2012, 16:46:58 »
J'ai utilisé le rapport SPARQL soit avec ancestris 0.7 soit avec 0.8.
Les options figurent dans Options_SPARQL.PNG ci-joint.
Le fichier Regles_jmb.txt est vide car je n'ai rien à ajouter au fichier ged.
Le fichier Requete_jmb.txt dépend de ce que je cherche.

Pour l'inventaire des Individus, j'utilise :
SELECT
  (str(?id) as ?ID)
  ?nom
  ?prenom
  ?s
  ?Date_Nais
  ?Lieu_Nais
  ?Date_Deces
  ?Lieu_Deces
 
 WHERE
{
  ?a   p:id   ?id.
  ?a    p:SEX [rdfs:label ?s].
OPTIONAL     {?a   p:NAME [p:SURN [rdfs:label ?nom]]}
OPTIONAL   {?a p:NAME [p:GIVN [rdfs:label ?prenom]]}
OPTIONAL   {?a p:BIRT [p:DATE [rdfs:label ?Date_Nais]]}
OPTIONAL   {?a p:BIRT [p:PLAC [rdfs:label ?Lieu_Nais]]}      
OPTIONAL   {?a p:DEAT [p:DATE [rdfs:label ?Date_Deces]]}
OPTIONAL   {?a p:DEAT [p:PLAC [rdfs:label ?Lieu_Deces]]}
}
ORDER BY ?nom ?prenom

Comme seuls les individus ont un sexe, seules les fiches indi sont explorées.
La commande OPTIONAL est indispensable lorsque le nom (par exemple) est vide.

Pour l'inventaire des Familles, j'utilise :
SELECT
 (str(?id) as ?ID)
 ?dateMariage
 ?n_mari
 ?p_mari
 ?n_femme
 ?p_femme
 ?Lieu_Mariage
 
 WHERE
{
  ?a   p:id   ?id.
OPTIONAL    {?a p:MARR  [p:PLAC [rdfs:label ?Lieu_Mariage]]}   
OPTIONAL   {?a p:MARR   [p:DATE [rdfs:label ?dateMariage]]}
OPTIONAL   {?a p:HUSB   [p:NAME [p:SURN [rdfs:label ?n_mari]]]}
OPTIONAL   {?a p:HUSB   [p:NAME [p:GIVN [rdfs:label ?p_mari]]]}
OPTIONAL   {?a p:WIFE   [p:NAME [p:SURN [rdfs:label ?n_femme]]]}
OPTIONAL   {?a p:WIFE   [p:NAME [p:GIVN [rdfs:label ?p_femme]]]}
FILTER (fn:contains(?id,'F'))
}
ORDER BY ?n_mari ?n_femme

La commande FILTER reconnait les familles.

Ensuite je récupère le fichier report.txt dans un éditeur de texte et j'utilise la commande remplacer pour nettoyer les dates qui ne sortent pas de façon homogène:
remplacer @#DFRENCH R@ par rien pour le calendrier révolutionnaire,
remplacer T..:..:..Z"^^<http://www.w3.org/2001/XMLSchema#dateTime> par rien pour les autres (avec Notepad ++)(. est un joker).
Ensuite j'enregistre report.txt et l'ouvre avec Calc de LibreOffice : voir Options_Calc.PNG

Durée de la manipulation 5 mn pour les 2 feuilles mais mon fichier ged ne fait que 400Ko pour 640 Familles et 1600 Individus.
On peut gagner du temps en ne créant qu'une fois gedcom.n3, la 2ème fois il suffit de cocher la case : lire une conversion précédemment sauvegardée de Options_SPARQL

Merci à JoPol, même si j'ai un peu de mal avec l'anglais, c'est essentiellement à partir de ses documents et exemples que j'ai réussi.

Offline JoPol

  • VIP
  • Sr. Member
  • *
  • Posts: 28
    • View Profile
Re: Exporter la table
« Reply #7 on: October 09, 2012, 18:08:20 »
Glad to be of service.

Hints:

WHERE {?a a t:INDI; p:id ?id.
WHERE {?a a t:FAM; p:id ?id.

then you don't need the filter or sex.

Dates could be improved by implementing the TODO's in
http://anonymous:password@arvernes.dyndns.org/fgenj/trunk/AncestrisExtensions/report.rdf/src/genjreports/rdf/SemanticGedcomUtil.java
But I no longer have a proper development environment. So if anyone else feels up to that task...