Bonjour,
Extraits de la procédure:O_LIBELLE='Evénement familial pointant sur une union inexistante';
  O_TABLE='EVENEMENTS_FAM';
  for select a.EV_FAM_CLEF, a.EV_FAM_KLE_FAMILLE from EVENEMENTS_FAM a
  where  a.EV_FAM_KLE_DOSSIER = :i_kle_dossier
  and    not exists (
    select * from T_UNION b
    where  b.KLE_DOSSIER = :i_kle_dossier
    and    b.UNION_CLEF = a.EV_FAM_KLE_FAMILLE
  )
  into :o_cle_table, :o_cle_ficheDonc:
O_CLE_TABLE c'est EV_FAM_CLEF
O_CLE_FICHE c'est EV_FAM_KLE_FAMILLE
et la procédure a détecté que cet EV_FAM_KLE_FAMILLE n'avait pas de correspondance dans UNION_CLEF de la table T_UNION (où doivent être référencées toutes les unions)
En faisant comme Roger te dit, et si ta mémoire ne te fait pas défaut, tu pourras peu-être identifier par le type de l'évènement (MARR?), sa date et son lieu, à quelle union il aurait dû être rattaché. Ensuite le mieux est encore de supprimer cet évènement (mode=1 de la procédure PROC_INCOHERENCES ou le BOA qui sert d'interface à cette procédure), et de le recréer normalement dans ancestrologie (si tu sais à qui le rattacher).
A+
André