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 :

Problématique quelle requete faire pour obtenir mon résultat


Sujet :

Requêtes et SQL.

  1. #21
    Membre à l'essai
    Homme Profil pro
    Technicien réseaux et télécoms
    Inscrit en
    Avril 2015
    Messages
    66
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Technicien réseaux et télécoms

    Informations forums :
    Inscription : Avril 2015
    Messages : 66
    Points : 10
    Points
    10
    Par défaut
    donc ma requete d'origine je la modifie et j essaie d'y rajouter le fait d'afficher pour un salarié et un employeur donnés tous les postes affectés au salarié non liés à l'entreprise de l'employeur

  2. #22
    Membre éclairé Avatar de dumas.blr
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Juin 2010
    Messages
    598
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Conseil

    Informations forums :
    Inscription : Juin 2010
    Messages : 598
    Points : 879
    Points
    879
    Par défaut
    exactement

    Si cette requête est la source du sous-formulaire, modifie la au niveau de la source du sous-formulaire. sinon modifie la requête preincipale
    S'il n'y a pas de solution, c'est qu'il n'y a pas de problème !!!
    si tout est OK, n'oubliez pas de cliquer sur

  3. #23
    Membre à l'essai
    Homme Profil pro
    Technicien réseaux et télécoms
    Inscrit en
    Avril 2015
    Messages
    66
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Technicien réseaux et télécoms

    Informations forums :
    Inscription : Avril 2015
    Messages : 66
    Points : 10
    Points
    10
    Par défaut
    je viens de m’apercevoir que j'ai un soucis avec mon filtre dans le module d'envoi des pièce jointes aux entreprise.

    j'ai applique le même code que pour le module d'envoi de mail aux salariés:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    ' Parcourir toute la liste
        While Not rst.EOF
            ' Le nom du fichier varie en fonction de la personne
            strFichierPDF = StringFormat(strFichier, _
                Format(rst("NUM"), "000"), _
                rst("EnsNom"), _
                rst("EnsPrénom"))
     
            ' Construire le filtre
            strFiltre = "[EnsCode] = " & rst("EnsCode")
    Lorsqu'un salarié est nommé sur 3 entreprises le pdf généré et envoyé a chaque entreprise ( exemple entreprise A ) contient 3 pages au lieu d'une, les 2 autres pages sont évidemment les info des deux autres entreprises (Exemple B et C).

    Cela rejoint mon problème précédent je pense quelle filtre ou tri appliqué je suis perdu

    EDIT:

    j'ai essayé de faire cela mais j'ai une erreur 13 incompatibilité de type :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    strFiltre = "[EnsCode] = " & rst("EnsCode") And "[num] = " & rst("num")

  4. #24
    Membre éclairé Avatar de dumas.blr
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Juin 2010
    Messages
    598
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Conseil

    Informations forums :
    Inscription : Juin 2010
    Messages : 598
    Points : 879
    Points
    879
    Par défaut
    Reprend le problème à partir de ton état.

    Il faut que, dans ton état (avant filtrage), apparaissent les informations exactes que tu veux faire apparaître.

    Tu t'occuperas du problème dans le module d'envoi après, car il risque de disparaître si ta requête est correcte.
    S'il n'y a pas de solution, c'est qu'il n'y a pas de problème !!!
    si tout est OK, n'oubliez pas de cliquer sur

  5. #25
    Membre à l'essai
    Homme Profil pro
    Technicien réseaux et télécoms
    Inscrit en
    Avril 2015
    Messages
    66
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Technicien réseaux et télécoms

    Informations forums :
    Inscription : Avril 2015
    Messages : 66
    Points : 10
    Points
    10
    Par défaut
    Oui c est ce que je me dit mais là je n' y arrive plus et cela doit être prêt lundi.

    Il reste des petit détail mais ils sont bloquant pour la suite.

    je n'arrive pas a voir comment faire dans ma requête pour trier en fonction de l entreprise et du salarié et surtout j'ai peur que cela modifie l'etat salarié qui lui est très bien et s'appuie sur la même requête.

  6. #26
    Membre éclairé Avatar de dumas.blr
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Juin 2010
    Messages
    598
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Conseil

    Informations forums :
    Inscription : Juin 2010
    Messages : 598
    Points : 879
    Points
    879
    Par défaut
    Peux-tu nous communiquer le SQL de ta requête ?
    S'il n'y a pas de solution, c'est qu'il n'y a pas de problème !!!
    si tout est OK, n'oubliez pas de cliquer sur

  7. #27
    Membre à l'essai
    Homme Profil pro
    Technicien réseaux et télécoms
    Inscrit en
    Avril 2015
    Messages
    66
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Technicien réseaux et télécoms

    Informations forums :
    Inscription : Avril 2015
    Messages : 66
    Points : 10
    Points
    10
    Par défaut
    Actuellement c est une requete simple qui selectionne des champ issue de 3 tables avec 2 jointures:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    SELECT Salaries.EnsCode, Salaries.ID, Salaries.EnsNom, Salaries.EnsPrénom, Salaries.PrioritéCode, Salaries.EnsDiscContrat, Salaries.EnsDisc1, Salaries.EnsEtabl1, Salaries.MailEtabl1, Salaries.EnsDisc2, Salaries.EnsEtabl2, Salaries.MailEtabl2, Salaries.EnsDisc3, Salaries.EnsEtabl3, Salaries.MailEtabl3, Salaries.EnsDisc4, Salaries.EnsEtabl4, Salaries.EnsTel1, Salaries.EnsTel2, CDE12maitest.DISC1, CDE12maitest.NUM, CDE12maitest.HOR1, CDE12maitest.ETAB, CDE12maitest.OBSERVATIONS, Etablissements.EtablTitrLongDir, Etablissements.EtablNomPrenDir, Etablissements.EtablMail
    FROM (Salaries INNER JOIN CDE12maitest ON Salaries.ID = CDE12maitest.[NOM PROPOSE]) INNER JOIN Etablissements ON CDE12maitest.ETAB = Etablissements.Etab;
    Ensuite avec cette requête je génère 2 états et un sous états

    Etat Salarié regrouper sur ID avec une mise en page et disposition des champs sur un document qui fait une page A4

    Etat Entreprise non regroupé avec une mise en page et disposition des champs sur un document qui fait une page A4

    sous état basique qui ressemble à l'état salarié regrouper sur ID avec 0 mise en page juste de l info brut et il est appeler dans une zone l'état entreprise afin de rappelle a l entreprise A que le salarié e st affecté également à B et C

    EDIT :

    La solution est dans le regroupement dans la requête ? j explore cette piste

  8. #28
    Membre éclairé Avatar de dumas.blr
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Juin 2010
    Messages
    598
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Conseil

    Informations forums :
    Inscription : Juin 2010
    Messages : 598
    Points : 879
    Points
    879
    Par défaut
    Donc en fait, tu affiche pour chaque salariés toutes les entreprises pour qui il travaille (j'imagine que c'est le champ EnsEtabl1).

    Pour un salarié, c'est effectivement le plus simple, car, pour un salarié donné, tu affiche l'ensemble des entreprises auxquels il est rattaché

    Par contre pour une entreprise, il faut sélectionner l'ensemble des salariés qui travaillent pour elle, mais en affichant uniquement les autres entreprises pour lesquelles ces salariés travaillent.

    Je pense que le plus simple serait de rajouter un filtre dans le sous-état pour ne sélectionner que les enregistrements dont l'entreprise est différente de celle figurant dans l'en-tête
    S'il n'y a pas de solution, c'est qu'il n'y a pas de problème !!!
    si tout est OK, n'oubliez pas de cliquer sur

  9. #29
    Membre à l'essai
    Homme Profil pro
    Technicien réseaux et télécoms
    Inscrit en
    Avril 2015
    Messages
    66
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Technicien réseaux et télécoms

    Informations forums :
    Inscription : Avril 2015
    Messages : 66
    Points : 10
    Points
    10
    Par défaut
    En fait c est un peu plus complexe, il y a 3 tables une salarie et une entreprise et une de commission

    Lors de la commission qui est la table cde12maitest un emploi qui est défini par un numéro unique (cde12maitest.num), est proposé par une entreprise (cde12maitest.ETAB) à un salarié (cde12maitest.NOM PROPOSE)

    La première jointure se fait sur Salarie.ID et nom proposé cde12maitest.NOM PROPOSE afin de récupérer toutes les coordonnés du salarié.

    La seconde se fait sur (cde12maitest.ETAB) et Etablisement.Etab afin de récupérer toutes les infos des entreprises.


    A la fin de cette commission d'attribution une fois que nous avons entrer dans le champ (cde12maitest.NOM PROPOSE) les salariés la requete rassemble tout cela afin d'envoyer 2 documents:

    Un document au salarié lui stipulant son ou ses nouveau postes le tout envoyer par mail.

    Un document a l'entreprise lui stipulant que pour son poste identifié par son numéro (cde12maitest.num) un salarié lui à été affecté, avec dans ce document une variable si le salarié a d'autres postes il seront affiché.
    Le tout envoyé par mail également.

    Il reste un bug majeure lors de la génération du PDF pour l'envoi du document entreprise pour un salarié qui par exemple 3 postes, l'entreprise A reçoit un Pdf de 3 pages dont les pages destinées aux entreprises B et C.

    Il reste une amélioration même si j'ai réussi par une bidouille a parvenir à mes fin. Faire en sorte que dans le document entreprise, toujours dans le cas ou le salarié à 3 postes, afficher dans le sous états qui rappel l’ensemble des postes uniquement les deux autres postes.
    Actuellement les 3 sont affichés et par une bidouille de mise en forme conditionnelle je fait écrire en blanc sur fond blanc le poste évoquer dans l'état principal ce qui fait que sur le document au final on ne le voit pas

    Pour reprendre ton message

    Donc en fait, tu affiche pour chaque salariés toutes les entreprises pour qui il travaille (j'imagine que c'est le champ EnsEtabl1).

    Pour un salarié, c'est effectivement le plus simple, car, pour un salarié donné, tu affiche l'ensemble des entreprises auxquels il est rattaché

    Par contre pour une entreprise, il faut sélectionner l'ensemble des salariés qui travaillent pour elle, mais en affichant uniquement les autres entreprises pour lesquelles ces salariés travaillent.

    Je pense que le plus simple serait de rajouter un filtre dans le sous-état pour ne sélectionner que les enregistrements dont l'entreprise est différente de celle figurant dans l'en-tête
    ma requête affiche donc le résultat de la commission et mes états sont construit a partir de cette requête, comme je n'ai pas été claire dès le début cela ne permet pas de m'aider au mieux, en fait je génère des états en fonction d' un mouvement une sorte de mercato footballistique


    JE sait c est un peu tordu est ce que vous comprenez mieux la problématique ?

    EDIT: Pour mon bug majeur puis je contourner le pb en disant d'imprimer que la 1ère page ? comment je peut mettre cela dans mon code VBA ?

  10. #30
    Membre à l'essai
    Homme Profil pro
    Technicien réseaux et télécoms
    Inscrit en
    Avril 2015
    Messages
    66
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Technicien réseaux et télécoms

    Informations forums :
    Inscription : Avril 2015
    Messages : 66
    Points : 10
    Points
    10
    Par défaut
    C'est bon j'ai réussi a résoudre mon dernier bug majeur.

    Dans mon code VBA qui envoi les PDF aux entreprises j'ai filtrer sur un autre champs unique à chaque enregistrement et cela permet bien de créer un pdf d'une page pour chaque entreprise.

  11. #31
    Membre éclairé Avatar de dumas.blr
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Juin 2010
    Messages
    598
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Conseil

    Informations forums :
    Inscription : Juin 2010
    Messages : 598
    Points : 879
    Points
    879
    Par défaut
    Bonjour Gulian12,

    Je viens de découvrir sur le site un tutoriel récent très bien fait qui traite en partie la gestion de publipostage et envois mails, ainsi que d'autres aspect important pour la mise en place de solutions professionnelles sous access. Voila, c'est ICI.
    S'il n'y a pas de solution, c'est qu'il n'y a pas de problème !!!
    si tout est OK, n'oubliez pas de cliquer sur

  12. #32
    Membre à l'essai
    Homme Profil pro
    Technicien réseaux et télécoms
    Inscrit en
    Avril 2015
    Messages
    66
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Technicien réseaux et télécoms

    Informations forums :
    Inscription : Avril 2015
    Messages : 66
    Points : 10
    Points
    10
    Par défaut
    Merci beucoup dumas.blr pour toute ton aide

    Grâce à toi j'ai pu améliorer la base de donnée existante que l'on m'avait transmit afin de faire gagner du temps à la personne s'occupant d'envoyer les documents. Cela a parfaitement fonctionner Mardi, nous avons découvert d'autres fonctionnalité intéressant à ajouter maic cela couvre 90-95 % de nos besoin pour le moment

Discussions similaires

  1. Réponses: 2
    Dernier message: 16/02/2014, 19h04
  2. Quelle requête SQL pour obtenir mon résultat ?
    Par nicolas.pied dans le forum Requêtes
    Réponses: 2
    Dernier message: 03/02/2007, 09h58
  3. Réponses: 3
    Dernier message: 29/09/2006, 09h48

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