IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Access Discussion :

Aide pou requête de sélection


Sujet :

Access

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Cadre
    Inscrit en
    Février 2018
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Cadre

    Informations forums :
    Inscription : Février 2018
    Messages : 1
    Points : 0
    Points
    0
    Par défaut Aide pou requête de sélection
    Bonjour,

    Je me tourne vers vous car je dois traiter professionnellement une tâche et je bloque. Je ne suis pas d'un niveau avancé sur Access, j'ai demandé à mes collègues qui n'ont pas su m'aider ... J'espère que vous le pourrez !

    Je vais essayer d'être le plus clair possible.

    En gros, pour simplifier, j'ai deux tables.

    La première : Appelons la "Dossier médical"

    N° unique patient (peut revenir plusieurs fois)/ N° unique dossier (jamais redondant dans la colonne) / Date ouverture dossier / Date fermeture dossier
    1
    2
    3
    4
    1
    3

    La deuxième : Prise de rendez-vous

    N° unique patient / Date RDV / Statut (annulé ou réalisé grosso modo, ce n'est pas saisi manuellement par la personne, liste à choix multiples)
    1
    1
    1
    2
    3
    3

    Ce que je veux faire, c'est de chercher par le N° unique du patient et par le délai d'ouverture du dossier (qui nous donne le N°dossier car les périodes ne se chevauchent normalement pas pour un même patient), si celui-ci a eu des rdv pendant la période d'ouverture. SAUF que imaginons s'il a 3 rdv annulés pendant la période, c'est ok, je veux qu'il me l'affiche pour qu'il le traite, mais si toutefois, dans les 3 rdv, il y a un seul réalisé, je veux l'exclure de mes résultats (le numéro de dossier qui est l'agrégation du numéro du patient et de date ouverture/fermeture du dossier).
    Mes résultats étaient affichés jusqu'alors comme suit : Numéro unique patient / numéro unique dossier / Date ouverture / Date fermeture / Date RDV / Statut RDV

    Est-ce possible de traiter cela sous access sans passer par plusieurs étapes ? Ca me parait une épreuve logique ... mais je bloque.

    J'ai dans l'espoir d'avoir votre aide.

    Bien à vous !!!!

  2. #2
    Modérateur
    Avatar de bertiny
    Homme Profil pro
    Enseignant
    Inscrit en
    Mars 2013
    Messages
    1 282
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Mars 2013
    Messages : 1 282
    Points : 1 831
    Points
    1 831
    Billets dans le blog
    1
    Par défaut
    Bonjour
    J'ai l'impression de ne t'avoir pas compris.
    Ce que je veux faire, c'est de chercher par le N° unique du patient et par le délai d'ouverture du dossier (qui nous donne le N°dossier car les périodes ne se chevauchent normalement pas pour un même patient)
    Que veux-tu vraiment afficher?
    Le monde évolue et nous avec. La technologie change les idées de ceux qui s'intéressent et pensent qu'il est nécessaire de changer.
    Oh là!! Que c'est bien de trouver la solution à un problème

    Pensons à améliorer nos connaissances en toute humilité car on apprend tous tous les jours !!!

  3. #3
    Membre habitué
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Octobre 2016
    Messages
    136
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France, Drôme (Rhône Alpes)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Santé

    Informations forums :
    Inscription : Octobre 2016
    Messages : 136
    Points : 149
    Points
    149
    Par défaut
    Disons que tu as une première table "t_Patient", avec une clé primaire ID_Patient (NumeroAuto), puis Nom, Prénom, etc.

    Ensuite, tu as une table "t_Dossier", avec une clé primaire ID_Dossier (NumeroAuto), puis Patient_ID (qui contient une des valeurs ID_Patient) Date_Ouv, Date_Clot, etc.

    Enfin, tu as une table "t_Rdv", avec une clé primaire ID_Rdv (NumeroAuto), puis Patient_ID, Date_Rdv et Statut.

    Si tu sais que les dossiers d'un même patient ne se chevauchent jamais dans le temps, cela te permet de remonter d'un patient et d'une date à la référence du dossier couvrant cette date (si toutefois il en existe un), puis à tous les rendez-vous (d'un statut ou d'un autre) situés entre Date_Ouv et Date_Clot du dossier en question. C'est bien ça ta question ?

    Dans ta fenêtre "Création" de ta requête, tu dois avoir au moins les deux tables t_Dossier et t_Rdv et une colonne Expr1: ... qui doit être à vrai.

    Nom : Capture.JPG
Affichages : 124
Taille : 66,8 Ko

    L'exécution de la requête ci-dessus te demandera [Num_Patient] et [Date_Cible] et te produira le nom et prénom du patient ainsi que la liste des rendez-vous non réalisés qui se trouveront dans le créneau définit par le dossier (qui n'apparaît pas dans le résultat de la requête).

    Cordialement,

  4. #4
    Modérateur
    Avatar de bertiny
    Homme Profil pro
    Enseignant
    Inscrit en
    Mars 2013
    Messages
    1 282
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Mars 2013
    Messages : 1 282
    Points : 1 831
    Points
    1 831
    Billets dans le blog
    1
    Par défaut
    La requête ci-dessus te produit quel résultat après exécution?
    Un peu curieux ta relation t_Dossier et t_Rdv avec la mise en commun du champ Patient_ID.
    Le monde évolue et nous avec. La technologie change les idées de ceux qui s'intéressent et pensent qu'il est nécessaire de changer.
    Oh là!! Que c'est bien de trouver la solution à un problème

    Pensons à améliorer nos connaissances en toute humilité car on apprend tous tous les jours !!!

  5. #5
    Membre habitué
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Octobre 2016
    Messages
    136
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France, Drôme (Rhône Alpes)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Santé

    Informations forums :
    Inscription : Octobre 2016
    Messages : 136
    Points : 149
    Points
    149
    Par défaut
    Citation Envoyé par bertiny Voir le message
    La requête ci-dessus te produit quel résultat après exécution?
    Un peu curieux ta relation t_Dossier et t_Rdv avec la mise en commun du champ Patient_ID.
    Ah bon ? Je m'intéresse d'entrée uniquement aux dossiers et aux rendez-vous concernant un certain patient cible. Sur un test rapide, il m'a semblé que ça fonctionnait.

  6. #6
    Membre éprouvé
    Femme Profil pro
    Service informatique presque à moi seule (TPE), ex-architecte fonctionnel
    Inscrit en
    Août 2017
    Messages
    358
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 56
    Localisation : France, Gard (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Service informatique presque à moi seule (TPE), ex-architecte fonctionnel
    Secteur : Finance

    Informations forums :
    Inscription : Août 2017
    Messages : 358
    Points : 931
    Points
    931
    Par défaut Bonjour à tous,
    Citation Envoyé par bertiny Voir le message
    Un peu curieux ta relation t_Dossier et t_Rdv avec la mise en commun du champ Patient_ID.
    Bonjour Bertiny,

    Ce n'est pas du tout une modélisation (relation), seulement une requête paramétrée.

    Olra72 et Sashkka,

    Je pense qu'il faut ajouter le cas où la date de clôture n'est pas renseignée (dossier en cours), donc remplacer
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Expr1: [Date_Ouv] <= [Date_Cible] Et [Date_Clot] >= [Date_Cible]
    par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Expr1: [Date_Ouv] <= [Date_Cible] Et ([Date_Clot] >= [Date_Cible] Ou [Date_Clot] Est Null)
    Que l'on peut aussi coder
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Expr1:  ([Date_Cible] Entre [Date_Ouv] Et [Date_Clot]) Ou ([Date_Ouv] <= [Date_Cible] Et [Date_Clot] Est Null )
    Cordialement,
    Paraffine.
    Les problèmes sont des opportunités en vêtements de travail. Henry H. Kaiser
    Il n'est pas de problème dont une absence de solution ne finisse par venir à bout. Henri Queuille

Discussions similaires

  1. [AC-2007] Aide sur requête de sélection avec condition
    Par Braiice dans le forum Requêtes et SQL.
    Réponses: 1
    Dernier message: 19/01/2017, 16h43
  2. Besoin d'aide pour requête de sélection
    Par cerede2000 dans le forum Langage SQL
    Réponses: 18
    Dernier message: 26/02/2015, 15h03
  3. [MySQL] Aide requête MySQL : sélection aléatoire d'un enregistrement avec critère
    Par iwf-fr dans le forum PHP & Base de données
    Réponses: 6
    Dernier message: 07/05/2007, 09h01
  4. [Oracle 9i] Aide sur une requête de sélection
    Par Requin15 dans le forum Langage SQL
    Réponses: 2
    Dernier message: 22/02/2007, 09h58
  5. Réponses: 1
    Dernier message: 03/08/2005, 11h41

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo