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

Requêtes et SQL. Discussion :

Requête analyse croisée et ajout de valeurs comprises dans d'autres champs


Sujet :

Requêtes et SQL.

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Avril 2011
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2011
    Messages : 6
    Points : 5
    Points
    5
    Par défaut Requête analyse croisée et ajout de valeurs comprises dans d'autres champs
    Bonjour,

    N'étant qu'un amateur au niveau d'access, je suis confronté à la difficulté ci-dessous.

    Je travaille sur une base de données qui servira à encoder des consultations et à gérer des fiches patients. Le tout devant réponde à des critères stricts du pouvoir subsidiant.

    Pour chaque consultation, une fois le patient et le prestataire sélectionné dans mon formulaire d'encodage des consultations, j'ai une case qui doit mentionner "ceci est la consultation n° X de ce prestataire avec ce patient". Idéalement, ceci devrait pouvoir se faire automatiquement dans le formulaire (au pire via un bouton)

    Pour épicer le tout, cette numérotation doit être continue avec l'ère pré-informatisation. J'ai donc prévu dans ma table patient des champs permettant lors de l'encodage initial de mentionner les valeur "passif de ce patient avec le prestataire1", "passif de ce patient avec le prestataire2", etc.

    Au final, j'ai donc besoin qu'Access :

    1/ Détermine le nombre de consultations précédemment encodées pour ce patient avec ce prestataire.

    2/ Ajoute à cette valeur mon champ "passif avec ce prestaire"

    3/ Et affiche la somme de tout ça dans mon formulaire. Cerise sur le gateau, cette valeur ne devra pas changer par la suite (si le patient fais l'objet d'une autre consultation le lendemain, ça ne doit pas venir impacter la valeur calculée la veille sinon fatalement, ça foire de partout).

    J'ai tenté quelques trucs via des requêtes croisées patients / prestataires mais sans trouver quelque chose qui fonctionner. Je peux générer des trucs genre "total des consult par patient, par prestataire" mais y ajouter la valeur du passif me bloque. Et je ne parle même pas de la suite du problème.

    Bref, là je suis dépassé et fais donc appel aux experts !

    Merci

  2. #2
    Expert confirmé Avatar de Richard_35
    Homme Profil pro
    Inscrit en
    Juillet 2007
    Messages
    3 121
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Juillet 2007
    Messages : 3 121
    Points : 4 596
    Points
    4 596
    Par défaut
    Bonjour Alias_bel,

    Si j'ai bien compris, tu devrais avoir, à peu de chose près, les tables suivantes (souligné=clé primaire, #=clé étrangère) :
    Patient(IdPatient, Nom, ...) ;
    Prestataire(IdPrestataire, Nom, ...) ;
    Consultation(IdConsultation, #IdPatient, #IdPrestataire, DatePrest, ...) ;
    PassifConsultation(#IdPatient, #IdPrestataire, NombreConsultation, ...).

    Deux choses :
    Citation Envoyé par Alias_bel
    J'ai donc prévu dans ma table patient des champs permettant lors de l'encodage initial de mentionner les valeur "passif de ce patient avec le prestataire1", "passif de ce patient avec le prestataire2", etc.
    ==> improbable dans la table Patient, non ?


    Citation Envoyé par Alias_bel
    Cerise sur le gateau, cette valeur ne devra pas changer par la suite (si le patient fais l'objet d'une autre consultation le lendemain, ça ne doit pas venir impacter la valeur calculée la veille sinon fatalement, ça foire de partout).
    ==> il faut donc stocker le calcul à la création de la consultation. La table consultation doit donc devenir :
    Consultation(IdConsultation, #IdPatient, #IdPrestataire, DatePrest, NombePrestPatientPrestataire, ...)


    Ensuite :
    • une requête sur Consultation, groupée par IdPatient/IdPrestataire, avec Count(*) te donne le nombre de consultation "informatisées" ;
    • une requête sur PassifConsultation te donne le nombre de consultation "non-informatisées".

    ==> la somme des deux te donnant la valeur de NombePrestPatientPrestataire[/B].


    Enfin, créer le formulaire en conséquence (je ne connais pas VBA, je ne pourrai donc t'aider dans la phase de développement pure).

Discussions similaires

  1. [AC-2003] requête analyse croisée avec plusieurs valeurs.
    Par issane dans le forum Requêtes et SQL.
    Réponses: 2
    Dernier message: 26/05/2011, 18h20
  2. [AC-2007] Combinaison requêtes analyse croisée/ajout
    Par Nadiine dans le forum Requêtes et SQL.
    Réponses: 2
    Dernier message: 20/04/2010, 10h44
  3. [AC-2003] Requête analyse croisée avec 2 valeurs !?
    Par damsmut dans le forum Requêtes et SQL.
    Réponses: 4
    Dernier message: 02/07/2009, 17h05
  4. [A-03] Requête avec WHERE " ce qui a été choisi dans un autre champs"
    Par panpulilu dans le forum Requêtes et SQL.
    Réponses: 1
    Dernier message: 19/03/2009, 13h55
  5. [Requête Analyse croisée] valeurs discrètes
    Par fylip22 dans le forum Requêtes et SQL.
    Réponses: 3
    Dernier message: 27/08/2007, 16h44

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