Index Forum Généamania
Tout sur Généamania et monSSG
Faq  -   Se connecter  -   S'enregistrer  -   Liste des membres   -  Rechercher  



Vous ne pouvez pas poster de nouveaux sujets dans ce forum Vous ne pouvez pas poster de réponses
6.7 - export Gedcom, mariages
Auteur Message
mbuono



Autorisation : Membre
Nb de messages : 14
Inscrit le : Lun 17 Oct 2016, 15:07
Posté le : Mar 13 Déc 2016, 10:38    

Bonjour,
Encore un problème que je détecte mais que j'ai un peu de mal à analyser...

Contexte :
J'essaye différents outils permettant de tracer des arbres à partir d'un fichier ged, donc j'exporte (en gedcom complet).

A la lecture du fichier ged au moyen de l'outil "WinAncetre", je reçois "pas mal" de messages d'erreur indiquant :
"uneTelle ne fait pas référence au mariage @F0_186@ dont elle est l'épouse"
ou
"unTel ne fait pas référence au mariage @F10_32@ dont il est l'époux"

Dans tous les cas, il s'agit d'individus ayant contracté plusieurs mariages ou ayant eu des enfants hors union.

J'ai cherché à vérifier lequel des 2 logiciels était en cause :
avec VisuGed (qui ne voit aucune erreur sur les mariages), j'ai importé mon fichier ged (provenant donc de Généamania) puis je l'ai exporté au même format.

Cette fois, avec le fichier provenant de VisuGed, WinAncêtre ne détecte aucune erreur.

En conclusion :
Ça ne veut pas dire à 100% qu'il y ait un problème dans Généamania puisque VisuGed ne voit rien d'anormal... On peut donc conclure
- soit que la sortie ged de Généamania peut être améliorée
- soit que la lecture ged de VisuGed n'est pas assez tolérante ou est imparfaite...

Je ne peux rien dire de plus précis pour l'instant.

suite :
dans Geneamania, je viens de faire un test en exportant en ged un seul individu marié plusieurs fois (donc par exp_Gedcom_Personne.php) ; dans ce cas, ses 3 mariages apparaissent dans le fichier ged.
Dans le fichier produit par exp_Gedcom.php, un seul de ses mariages est présent.

Si l'on compare le traitement des unions dans les 2 fichiers php, on voit - dans exp_Gedcom.php - que la requête sql contient 'limit 1' (ce qui n'existe pas dans exp_Gedcom_Personne.php)...
J'ignore pour quelle raison ce 'limit 1' est utilisé, mais si on le supprime, les mariages multiples figurent bien dans le fichier ged ; mais je ne sais pas s'il y a des effets induits néfastes...
En revanche, les naissances hors mariage ne sont pas affectées et continuent à être ignorées par WinAncetre.

 Adresse email Haut de page Bas de page 
 
jlsviro



Autorisation : Administrateur
Nb de messages : 1663
Inscrit le : Dim 23 Avr 2006, 16:17
Posté le : Mar 13 Déc 2016, 22:15    

Bonsoir,

Le 'limit 1' n'a effectivement pas de sens car une personne peut avoir plusieurs conjoint dans le temps.

Bien vu goutte.gif Je rectifie dans la prochaine version.

Jean-Luc

 Adresse email Haut de page Bas de page 
 
jlsviro



Autorisation : Administrateur
Nb de messages : 1663
Inscrit le : Dim 23 Avr 2006, 16:17
Posté le : Mar 13 Déc 2016, 22:35    

D'un autre côté, le 'limit 1' n'empêche pas d'avoir toutes les unions dans le fichier Gedcom. En effet, les unions manquantes du côté d'un conjoint seront présente de l'autre. Donc un export / import Gedcom fonctionne et les unions multiples ne sont malgré tout pas perdues...

A creuser, donc... crazy.gif

 Adresse email Haut de page Bas de page 
 
mbuono



Autorisation : Membre
Nb de messages : 14
Inscrit le : Lun 17 Oct 2016, 15:07
Posté le : Mer 14 Déc 2016, 7:42    

Bonjour,
C'est pour cela que je me demandais si le problème ne venait pas d'une lecture trop restrictive dans WinAncetre...
leur message d'erreur apparaît quand une union est définie et qu'elle n'est pas utilisée dans les données d'un des deux partenaires.
C'est aussi vrai dans le cas des enfants "hors union" :
le fichier ged contient bien une union avec un parent "normal" plus un parent "0" ; WinAncetre proteste car il attend que le parent "normal" utilise l'union.

Je ne m'y connais pas assez en format des fichiers ged pour savoir quel est le comportement adéquat... peut-être n'y a-t-il pas lieu d'intervenir dans généamania !

 Adresse email Haut de page Bas de page 
 
mbuono



Autorisation : Membre
Nb de messages : 14
Inscrit le : Lun 17 Oct 2016, 15:07
Posté le : Mer 21 Déc 2016, 10:47    

Bonjour - et bonnes fêtes de fin d'année !

Voilà, bug ou pas, j'ai résolu mon problème avec WinAncetre de la façon suivante :

dans exp_Gedcom, juste avant "ecriture de la ligne parents", j'ai ajouté une recherche des enfants ayant le père (ou la mère) absent et j'ai écrit une ligne du style "1 FAMS n°pere 0" (ou "1 FAMS 0 n°mere).

Ça satisfait WinAncetre, VisuGed ne proteste pas et j'ignore s'il y a des effets indésirables ailleurs...

Voilà le code ajouté (environ à ligne 72):

// mbuono definition famille avec enfant hors union
$sql = 'select Enfant from '.$n_filiations.' where ';
$Pere = 0; $Mere = 0;
switch ($enreg[3]) {
case 'm' : $Pere = $Refer; break;
case 'f' : $Mere = $Refer; break;
}
$sql = $sql.'Pere = '.$Pere.' and Mere = '.$Mere;
if ($resXX = lect_sql($sql)) {
if ($resXX->rowCount() ) fwrite($fp,'1 FAMS @F'.$Pere.'_'.$Mere.'@'.$cr);
}

// Ecriture de la ligne parents

 Adresse email Haut de page Bas de page 
 
jlsviro



Autorisation : Administrateur
Nb de messages : 1663
Inscrit le : Dim 23 Avr 2006, 16:17
Posté le : Sam 24 Déc 2016, 17:27    

A voir...

Je regarde plus en détail pendant les vacances.

Merci pour vos efforts goutte.gif

jean-Luc

 Adresse email Haut de page Bas de page 
 
Vous ne pouvez pas poster de nouveaux sujets dans ce forum Vous ne pouvez pas poster de réponses






  Powered by Fire-Soft-Board v1.0.10 © 2004 - 2017 Groupe FSB
Page générée en 9 requêtes