Messages récents

Pages: [1] 2 3 4 5 6 ... 10
1
Ancestrologie - Utilisation / QUi a une civilité?
« Dernier message par emable le 03 Février 2023 à 08:00:38 »
Bonjour,
Merci pour cette requête, elle fonctionne très bien :)
2
Ancestrologie - Utilisation / QUi a une civilité?
« Dernier message par jfd le 31 Janvier 2023 à 19:21:57 »
Bonsoir

Merci André

J'en apprends un peu chaque jour !

Cordialement
3
Ancestrologie - Utilisation / QUi a une civilité?
« Dernier message par DDdeBerdeux le 31 Janvier 2023 à 18:40:45 »
Bonsoir,

SELECT
  NOM,
  PRENOM,
  CLE_FICHE,
  PREFIXE
FROM
  INDIVIDU
WHERE
  KLE_DOSSIER=(select DLL_DOSSIER from GESTION_DLL) --=dossier si execution dans BOA
  and PREFIXE is not null
ORDER BY
  NOM,PRENOM

fonctionne aussi bien tout en étant bien plus simple.
Lorsqu'une seule table est interrogée dans une requête, il n'y a pas ambiguïté, les champs nommés appartiennent obligatoirement à la table. Il est donc inutile d'en préfixer le nom par le nom de la table ou un nom d'alias.

GROUP BY
  INDIVIDU.NOM,
  INDIVIDU.PRENOM,
  INDIVIDU.CLE_FICHE,
  INDIVIDU.PREFIXE
Dans ce groupe CLE_FICHE étant unique (chaque individu a une CLE_FICHE différente), count(INDIVIDU.PREFIXE) ne peut être que NULL (le champ est NULL) ou valoir 1. Si votre requête fonctionne, c'est parce que dans la clause
HAVING
  (COUNT(INDIVIDU.NOM) = COUNT(INDIVIDU.PREFIXE))
COUNT(INDIVIDU.NOM) a aussi toujours la valeur 1. Cette clause est donc équivalente à un WHERE PREFIXE is not null sur la table.
Lors de l'ouverture du BOA, le numéro du dossier en cours est inscrit dans la table GESTION_DLL. Le lire dans la requête en cours permet de ne pas avoir besoin de le saisir.

André
4
Ancestrologie - Utilisation / QUi a une civilité?
« Dernier message par jfd le 30 Janvier 2023 à 09:16:45 »
Bonjour Emable

Voici une requête qui devrait apporter une réponse à la question :

SELECT
  count(INDIVIDU.PREFIXE) AS NBRE,
  INDIVIDU.NOM,
  INDIVIDU.PRENOM,
  INDIVIDU.CLE_FICHE,
  INDIVIDU.PREFIXE
FROM
  INDIVIDU
WHERE
  (INDIVIDU.KLE_DOSSIER = 6)
GROUP BY
  INDIVIDU.NOM,
  INDIVIDU.PRENOM,
  INDIVIDU.CLE_FICHE,
  INDIVIDU.PREFIXE
HAVING
  (COUNT(INDIVIDU.NOM) = COUNT(INDIVIDU.PREFIXE))
ORDER BY
  INDIVIDU.NOM

Changer 6 par votre numéro de dossier

Je l'ai testé dans le générateur de SQL d'Ancestrologie car cela permet (avec les flèche des entêtes) de restreindre les réponses.

Je vais avoir moi aussi du travail car je ne suis pas très cohérent dans l'orthographe de mes préfixes !!!

Cordialement
5
Ancestrologie - Utilisation / Champ "heure" et champ "Cause"
« Dernier message par DDdeBerdeux le 29 Janvier 2023 à 20:29:40 »
Et pourquoi cette ligne
"select * from individu where kle_dossier=2"
en première position sur votre copie d'écran?
Elle ne fait pas partie de la requête, et si elle a été correctement exécutée, vous avez de la chance parce qu'elle ne fait aucune modification:twisted:
Lorsque vous copiez le texte d'une requête dans le champ SQL, il est important de supprimer le texte qui y figurait avant.

André
6
Ancestrologie - Utilisation / QUi a une civilité?
« Dernier message par emable le 29 Janvier 2023 à 12:11:48 »
Bonjour,
J'ai trouvé cette requête qui compte les civiltés :
SELECT
  count(INDIVIDU.PREFIXE) AS Nbre,
  INDIVIDU.PREFIXE
FROM
  INDIVIDU
WHERE
  (INDIVIDU.KLE_DOSSIER = 17)
GROUP BY
  INDIVIDU.PREFIXE
 

est-il possible d'y ajouter les noms et NIP?
J'ai des civilité farfelues et aimerait y remédier
Merci de votre aide
J-François
7
Ancestrologie - Utilisation / Champ "heure" et champ "Cause"
« Dernier message par emable le 29 Janvier 2023 à 11:01:37 »
Désolé, je n'avais pas exécuté la procédure!!
Cela fonctionne mieux lorsque l'on suit les instructions !!

Cordialement et merci
J-François
8
Ancestrologie - Utilisation / Champ "heure" et champ "Cause"
« Dernier message par emable le 29 Janvier 2023 à 10:55:33 »
Bonjour et merci pour ces requêtes.
Par contre, pour la suppression des 00:00 des unions, SQL me renvoie une erreur sur la ligne 4, ai-je loupé quelque chose ?
Cordialement
9
Ancestrologie - Utilisation / Champ "heure" et champ "Cause"
« Dernier message par DDdeBerdeux le 26 Janvier 2023 à 17:58:07 »
Bonjour,

Ci-joint le fichier contenant les 5 requêtes à exécuter séparément dans le BOA, après avoir sauvegardé votre base au cas où...
Le n° du dossier étant mis à jour dans la table GESTION_DLL avant l'ouverture du BOA, il est lu par la requête pour vous dispenser d'avoir à le saisir.
Pour supprimer l'affichage de l'heure, il faut affecter la valeur NULL au champ HEURE.
Mais il n'y a peut-être pas autant de champs HEURE avec la valeur 00:00 que vous le pensez: lorsqu'un champ HEURE est sélectionné dans une fiche, 00:00 est systématiquement affiché. Ancestrologie présente aussi une anomalie car il semble que lorsqu'un champ HEURE a effectivement la valeur 00:00, si on sélectionne un autre événement, cette même valeur continue de s'afficher alors qu'aucune heure n'a été saisie.
Deux requêtes permettent de mettre à NULL les champs HEURE lorsqu'ils contiennent la valeur 00:00. Je pense que vous pouvez utiliser sans risque celle concernant les événements familiaux, je n'ai jamais vu de mariage à minuit...
La même opération sur les événements individuels peut poser un problème, des déclarations de naissances et décès à minuit sont possibles (et posent d'ailleurs un autre problème; comment enregistrer l'événement le jour X à minuit autrement que le jour X+1 à 00:00 ? ). C'est pourquoi j'ai exclu ces types d'événements de la mise à jour. A vous de voir si vous pouvez supprimer cette exclusion.
Les requêtes UPDATE doivent être exécutées en cliquant sur "Exécuter procédure" dans le BOA car elles ne retournent pas de résultats.

André
10
Ancestrologie - Utilisation / Champ "heure" et champ "Cause"
« Dernier message par jfd le 26 Janvier 2023 à 16:25:47 »
Rebonjour

Voila la requête qui donne pour les évènements individuels ceux dont la zone heure est remplie.

Cordialement

SELECT
  EVENEMENTS_IND.EV_IND_HEURE,
  INDIVIDU.NOM,
  INDIVIDU.PRENOM
FROM
  INDIVIDU
  INNER JOIN EVENEMENTS_IND ON (INDIVIDU.KLE_DOSSIER = EVENEMENTS_IND.EV_IND_KLE_DOSSIER)
  AND (INDIVIDU.CLE_FICHE = EVENEMENTS_IND.EV_IND_KLE_FICHE)
WHERE
  (EVENEMENTS_IND.EV_IND_KLE_DOSSIER = 6) AND
  (EVENEMENTS_IND.EV_IND_HEURE IS NOT NULL)
ORDER BY
  INDIVIDU.NOM,
  INDIVIDU.PRENOM
Pages: [1] 2 3 4 5 6 ... 10