Auteur Sujet: [Résolu] Export Ancestrologie vers Nimegue  (Lu 3917 fois)

plus minus reset

0 Membres et 1 Invité sur ce sujet

Hors ligne Momovero

  • Expert
  • ****
  • Messages: 112
    • Généalogie BROTHELANDE
  • Programme: 2015.1996.3.2
  • Base: 5.131
  • Système: Windows 10 + Firefox 89 (64 bits) + Edge
[Résolu] Export Ancestrologie vers Nimegue
« le: 06 Avril 2007 à 20:32:31 »
bonsoir,
j'aimerais avoir la possibilité d'exporter un fichier de données saisies à partir d'Ancestrologie vers NIMEGUE, dans le format texte imposé par celui-ci (voir fichiers joint).
J'essaie à partir du réqueleurs SQL en adaptant les modèles trouvés dans les différents fils de discussion, mais je galère.
Si vous pouviez vous intéresser à mon problème, je vous en remercie d'avance.
Bon week-end et jouyeuses Pâques à tous !
Christian

[Fichier joint supprimé par l'administrateur]
« Modifié: 09 Avril 2007 à 23:40:26 par Momovero »
v2015.1995.2.6 - base 5.130
Win10
 

Hors ligne Pierrot

  • AncestrArbres -Test
  • AncestroSenior
  • *****
  • Messages: 1 044
  • Remercié: 1 fois
  • Programme: V.1360
  • Base: 5.130
Export Ancestrologie vers Nimegue
« Réponse #1 le: 06 Avril 2007 à 22:49:37 »
Faire un export Gedcom, le reprendre dans Visuged, puis l'exporter vers Nimègue

Pierrot


Windows XP Pro SP 3 - 2048 Mo - Affichage 1024x768
 

Hors ligne Momovero

  • Expert
  • ****
  • Messages: 112
    • Généalogie BROTHELANDE
  • Programme: 2015.1996.3.2
  • Base: 5.131
  • Système: Windows 10 + Firefox 89 (64 bits) + Edge
Export Ancestrologie vers Nimegue
« Réponse #2 le: 06 Avril 2007 à 23:26:25 »
J'ai effectué cette manipulation, mais l'export de visuged vers nimegue ne prend pas en compte les données sur les témoins colonnes 41 à 53 du fichier joint (structure nimegue-v2.zip) dans mon 1er post.
Pour cela j'aimerai pouvoir exécuter une requête qui extrait les données correspondantes aux témoins de chaque type d'acte (N - M - D) pour chaque commune à dépouiller, afin de l'enregistrer dans un format (csv) importable directement dans Nimegue.
cordialement
christian
v2015.1995.2.6 - base 5.130
Win10
 

Hors ligne DDdeBerdeux

Export Ancestrologie vers Nimegue
« Réponse #3 le: 07 Avril 2007 à 15:31:15 »
Bonjour,
Pour faire apparaître les témoins dans vos requêtes, il faut assurer la jointure entre la table evenements_ind (ou _fam)  et la table T_ASSOCIATIONS.
Dans la clause FROM où sont déclarées les tables utilisées et leurs jointures, vous devriez avoir quelque chose comme çà dans le cas des événements familiaux:

from evenements_fam e
inner join t_union u on u.union_clef=e.ev_fam_kle_famille --jointure avec l'union
inner join individu m on m.cle_cle_fiche=u.union_mari  --jointure avec l'individu mari
inner join individu f on f.cle_cle_fiche=u.union_femme  --jointure avec l'individu femme
left join t_association a on a.assoc_kle_ind=e.ev_fam_clef
                                     and a.ASSOC_TABLE = 'U' --jointure avec la table des associations
left join individu t on t.cle_fiche=a.assoc_kle_associe  --jointure avec l'individu témoin
Where ev_fam_type='MARR' --partie filtre

Mais vous voyez déjà un problème: la structure Nimègue n'est pas celle une base de données correcte, elle met les témoins en colonnes, (ce qui fait qu'elle est limitée à 3 témoins) au lieu de les mettre en lignes.

Autre problème de cette structure, les longueurs des champs sont en général plus faible que ce qui est autorisé dans ancestrologie. Il faudra donc les tronquer lors de l'extraction dans la clause select. Exemple:
select substring(t.nom from 1 for 25) as NOMTEMOIN.

Pour l'extraction des notes ou commentaires vous rencontrerez également des difficultés car ce sont des champs BLOB et non des chaînes de caractères. (Pour le rendre possible il faudrait intégrer des fonctions UDF traitant les champs BLOB comme celles de FreeAdhocUDF).
A+
André
Une application pleinement satisfaisante est toujours complétée par une mise à jour buggée. (Loi des Mises à Jour)
 

Hors ligne Momovero

  • Expert
  • ****
  • Messages: 112
    • Généalogie BROTHELANDE
  • Programme: 2015.1996.3.2
  • Base: 5.131
  • Système: Windows 10 + Firefox 89 (64 bits) + Edge
Export Ancestrologie vers Nimegue
« Réponse #4 le: 07 Avril 2007 à 20:38:40 »
Bonsoir André,
et merci pour votre réponse.
Je vous joins le bout de code que j'ai essayé de construire pour récupérer les données des témoins en m'inspirant de la requête d'extraction des témoins. Cela me donne 4 lignes par mariage. J'ai compris le principe pour ajouter les colonnes, mais je n'arrive pas à me dépatouiller avec vos explications.
Sinon je crois que je vais me résoudre à saisir dans Nimègue, mais cela me prendra un peu plus de temps.
Encore merci !
cordialement
christian
SELECT
  I1.NOM AS NOM_MARI,
  I1.PRENOM AS PRENOM_MARI,
  I2.NOM AS NOM_FEMME,
  I2.PRENOM AS PRENOM_FEMME,
  I.NOM AS NOM_TEMOIN,
  I.PRENOM AS PRENOM_TEMOIN,
  I3.NOM AS NOM_TEMOIN,
  I3.PRENOM AS PRENOM_TEMOIN,
  I4.NOM AS NOM_TEMOIN,
  I4.PRENOM AS PRENOM_TEMOIN,
  I5.NOM AS NOM_TEMOIN,
  I5.PRENOM AS PRENOM_TEMOIN,
  R1.REF_RELA_LIBELLE AS RELATION,
  R.REF_EVE_LIB_LONG AS EVENEMENT,
  E.EV_FAM_DATE_WRITEN AS DATES,
  E.EV_FAM_VILLE AS LIEU
FROM
  INDIVIDU I1,
  INDIVIDU I2,
  INDIVIDU I,
  INDIVIDU I3,
  INDIVIDU I4,
  INDIVIDU I5,
  REF_RELA_TEMOINS R1,
  REF_EVENEMENTS R,
  EVENEMENTS_FAM E,
  T_ASSOCIATIONS T,
  T_UNION T1
WHERE
  (T.ASSOC_KLE_DOSSIER = 2) AND
  (T.ASSOC_TABLE = 'U') AND
  (E.EV_FAM_CLEF = T.ASSOC_EVENEMENT) AND
  (E.EV_FAM_KLE_DOSSIER = T.ASSOC_KLE_DOSSIER) AND
  (T1.UNION_CLEF = E.EV_FAM_KLE_FAMILLE) AND
  (I.CLE_FICHE = T.ASSOC_KLE_ASSOCIE) AND
  (I3.CLE_FICHE = T.ASSOC_KLE_ASSOCIE) AND
  (I4.CLE_FICHE = T.ASSOC_KLE_ASSOCIE) AND
  (I5.CLE_FICHE = T.ASSOC_KLE_ASSOCIE) AND
  (I1.CLE_FICHE = T1.UNION_MARI) AND
  (I2.CLE_FICHE = T1.UNION_FEMME) AND
  (R.REF_EVE_LIB_COURT = E.EV_FAM_TYPE) AND
  (R1.REF_RELA_CODE = T.ASSOC_TYPE)
ORDER BY
  I1.NOM,
  I1.PRENOM
v2015.1995.2.6 - base 5.130
Win10
 

Hors ligne DDdeBerdeux

Export Ancestrologie vers Nimegue
« Réponse #5 le: 08 Avril 2007 à 00:21:00 »
Bonsoir,
Quelques remarques:
Dans les colonnes sélectionnées, le nom qui suit AS est le nom que vous voulez donner au champ (ou colonne) de sortie. Ils doivent donc être tous différents. (pas 4 fois nom_temoin, prenom_temoin etc).
Tel que vous l'écrivez, dans les tables INDIVIDU d'alias I, I3, I4 et I5, ce sera le même enregistrement, donc le même individu qui sera noté en temoin1,temoin2, 3 et 4.
Et celà n'empêchera pas que s'il y a 3 témoins, il y a aura 3 lignes en sortie, chacune avec un témoin différent mais figurant chaque fois dans les 4 positions. C'est l'incompatibilité de structure que je vous signalais. Elle ne pourrait être résolue que par de la programmation hors SQL.
Par les égalités figurant dans la clause WHERE, vous n'avez défini que des jointures internes. Celà signifie qu'il n'y aura émission d'une enregistrement (ou ligne) en sortie, que s'il y a un enregistrement correspondant dans toutes les tables. Dans votre cas NOM_MARI, NOM_FEMME etc.. ne sortiront pas s'il n'y a pas de témoin au mariage.
J'ai commencé comme vous, en trouvant plus facile de mettre dans la clause FROM toute la liste des tables dont on a besoin, et dans la clause WHERE, toutes les égalités qui permettent de les relier.
Maintenant je trouve plus clair (et c'est je crois actuellement la méthode "officielle", mais je ne suis pas enseignant), de bien séparer dans la clause FROM les tables et la façon dont elles doivent être jointes. Celà permet en particulier de spécifier le type de la jointure.
Ainsi la jointure dite gauche:
FROM TableA A
     LEFT JOIN TableB B ON "égalité qui permet la jointure entre TableA et TableB"
WHERE "condition filtre sur A"
permet d'émettre un enregistrement des champs de A satisfaisant à la condition dans WHERE, même s'il n'y a pas de correspondance dans B, alors qu'une jointure INNER JOIN l'aurait interdit.
A+
André
Une application pleinement satisfaisante est toujours complétée par une mise à jour buggée. (Loi des Mises à Jour)
 

Hors ligne Momovero

  • Expert
  • ****
  • Messages: 112
    • Généalogie BROTHELANDE
  • Programme: 2015.1996.3.2
  • Base: 5.131
  • Système: Windows 10 + Firefox 89 (64 bits) + Edge
[Résolu] Export Ancestrologie vers Nimegue
« Réponse #6 le: 08 Avril 2007 à 08:03:07 »
Merci André pour cette réponse tardive.
Je vais donc me résoudre à saisir directement dans Nimègue. En me familiarisant avec ce logiciel, je pense que cela ira plus vite qu'en essayant de faire une requête qui va me prendre du temps car je n'y connais pas grand chose dans ce langage SQL. Et comme vous le dites s'il faut faire de la programmation SQL pour arriver à ce que j'aurais besoin pour l'export, c'est définitivement pas possible. Je comprend mieux pourquoi à partir de Visuged l'export est également incomplet.
Merci de vous êtes intéressé à mon cas et pour vos explications.
Cordialement
christian
v2015.1995.2.6 - base 5.130
Win10