Auteur Sujet: Option Conserver uniquement la branche de l'individu courant  (Lu 3523 fois)

plus minus reset

0 Membres et 1 Invité sur ce sujet

Hors ligne DDdeBerdeux

J'ai quelques doûtes sur la "portée" de la branche sélectionnée par cette option. Sur ma généalogie personnelle, elle ne garde que 2296 individus, alors que "Suppression complète d'une branche" (ou plutôt son inverse) en garde 2489 sans les témoins. La différence de 193 semble être dans des descendants d'ascendants ou de leurs conjoints, mais est difficile à cerner. J'ai en tout cas constaté que les individus manquants avaient bien un lien de parenté avec mes ascendants.

Quelqu'un d'autre a-t-il fait la comparaison?

A+

André
Une application pleinement satisfaisante est toujours complétée par une mise à jour buggée. (Loi des Mises à Jour)
 

Hors ligne Lau

  • Modérateur
  • AncestroSenior
  • *****
  • Messages: 1 651
    • http://laro.chez-alice.fr
Option Conserver uniquement la branche de l'individu courant
« Réponse #1 le: 21 Mai 2006 à 11:34:56 »
Cela fait longtemps que j'ai programmé cela, mais il me semble que les 2 choix ne représentent pas la même chose :

"Ne conserver les individus de patronyme..." ramènera tous les individus qui ont le patronyme choisi, qu'ils soient de la même branche ou non.

Conserver uniquement la branche de l'individu courant conservera des individus d'autre patronyme, mais lié à cet individu.
 

Hors ligne DDdeBerdeux

Option Conserver uniquement la branche de l'individu courant
« Réponse #2 le: 21 Mai 2006 à 14:11:24 »
Bonjour,

Je ne parle pas de la sélection utilisant le patronyme, mais de la comparaison entre la méthode que tu as incorporée dans le BOA sous l'option "Conserver uniquement la branche de l'individu courant" et celle introduite par l'option "Suppression complète d'une branche" du menu Outils.

Cette dernière option est l'interface de la PROC_GROUPE. Avec

Mode= Complète

Initialisation=Oui

Témoins=Non

Stricte indifférent

Effet="Suppression des individus absents du groupe"

Les 2 méthodes devraient donner le même résultat. Mais ce n'est pas le cas, ta méthode semble oublier quelques individus.

Sans te demander de te replonger trop loin dans ton programme, pourrais-tu dire qu'elle est la prcédure stockée utilisée?

A+

André
Une application pleinement satisfaisante est toujours complétée par une mise à jour buggée. (Loi des Mises à Jour)
 

Hors ligne Lau

  • Modérateur
  • AncestroSenior
  • *****
  • Messages: 1 651
    • http://laro.chez-alice.fr
Option Conserver uniquement la branche de l'individu courant
« Réponse #3 le: 24 Mai 2006 à 21:02:49 »
De mémoire, c'était PROC_LR_SEL_GROUPE et PROC_LR_MIX_GROUPES.

Pour l'élagage : garder seulement les personnes de nom..., j'utilisais PROC_LR_ELAGAGE_DOSSIER
 

Hors ligne DDdeBerdeux

Option Conserver uniquement la branche de l'individu courant
« Réponse #4 le: 25 Mai 2006 à 14:11:16 »
Bonjour Laurent,

C'est bien parce que le temps incite à rester chez soi faire de la généalogie ou du sql...

Le problème vient de PROC_LR_SEL_GROUPE.

A l'intérieur de la boucle

while ((O_NB_GENERATIONS < I_NB_GENERATIONS) and (continuer=1) do

tu vas chercher successivement les ascendants puis les descendants, en forçant "continuer" à 1 ou 0 en fonction du nombre d'individus sélectionnés à la fin de chacune des phases (ascendance puis descendance). Mais s'il n'y a plus de descendance, continuer est remis à 0, même s'il y avait une ascendance (continuer=1), arrêtant de ce fait la recherche des ascendants.

Je proposerai les modifs suivantes:

Après le WHILE initialiser continuer=0

Après chaque phase de recherche des ascendants et descendants, inverser le test en mettant:

if (NOMBRE>0) then continuer=1;

au lieu de

if (NOMBRE<=0) then continuer=0;

Es-tu OK pour que je fasse cette modif dans une prochaine maj de la base?

A+

André
Une application pleinement satisfaisante est toujours complétée par une mise à jour buggée. (Loi des Mises à Jour)
 

Hors ligne Lau

  • Modérateur
  • AncestroSenior
  • *****
  • Messages: 1 651
    • http://laro.chez-alice.fr
Option Conserver uniquement la branche de l'individu courant
« Réponse #5 le: 26 Mai 2006 à 14:51:49 »
Je n'ai pas vérifié, mais no problemo, André ! Tu peux faire la modif.