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

IHM Discussion :

Récupérer les données d'une table pour créer un formulaire ajout dans une autre table [AC-2010]


Sujet :

IHM

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2013
    Messages
    161
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2013
    Messages : 161
    Points : 59
    Points
    59
    Par défaut Récupérer les données d'une table pour créer un formulaire ajout dans une autre table
    Bonjour à tous,

    Une question que je ne sais pas trop comment poser donc les recherches sur internet sont infructueuses.

    Alors je souhaite savoir s'il est possible de créer un formulaire ajout(dans une table), qui récupère les données d'une autre table.

    En fait avec mes données, j'ai une table T_Salarié_Chantier, où je souhaite récupérer les données pour mettre dans le formulaire. Et de là une fois le formulaire remplit, je souhaite que ces données s'enregistrent dans la table T_Pointage.

    PS:Merci de ne pas simplement dire oui ou non mais si cela est possible d'expliciter un peu.

    D'avance merci a tous.

  2. #2
    Rédacteur/Modérateur

    Avatar de User
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    8 360
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2004
    Messages : 8 360
    Points : 19 754
    Points
    19 754
    Billets dans le blog
    65
    Par défaut
    Bonjour,

    Si je me souviens bien de ton projet, tu disposes d'un planning pour le pointage avec à gauche, en en-têtes de lignes les salariés et projets, en en-t^tes de colonnes les jours du mois et enfin en dessous tu saisie les heures travaillées en double-cliquant sur une case.

    Partant de là je pense que tu souhaites faire apparaître les salariés et les projets à gauche même si pour ceux-ci il n'y a pas encore eu d'heures pointées.

    Si c'est le cas, alors il te faut faire des jointures gauches au niveau de la requête source qui alimente la requête croisée.

    Après, une fois ceci fait, tu peux alimenter la table T_Pointage, avec les données de la table T_Salarié_Chantier, car justement elle apparaîtront à gauche sur ton planning. Utilises pour cela ton code sur l'événement double-clic :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    Public Function OuvrirFormSaisie(j As Integer)
    Dim DateJ As Date
     
    DateJ = DateSerial(Forms!Frm_Pointage!An, Forms!Frm_Pointage!Mois, j)
     
    DoCmd.OpenForm "F_Saisie", , , "[LoginSalarié]=" & Nz(Formulaires!Frm_Pointage!LoginSalarie, 0) & " and [Référence Commande]=" & Nz(Formulaires!Frm_Pointage!SF_Pointage!Référence_Commande, 0) & " and ([DatePointage]=" & FDateUs(DateJ) & ")"
    'DoCmd.OpenForm "F_Saisie", , , "[Référénce Commande]=" & Nz(Formulaires!Frm_Pointage!SF_Pointage!Référence_Commande, 0) & " and ([DatePointage]=" & FDateUs(DateJ) & ")"
     
    Forms!F_Saisie!LoginSalarie.Value = Forms!Frm_Pointage!LoginSalarie
    Forms!F_Saisie!Jour.Value = DateJ
    Forms!F_Saisie!Référence_Commande.Value = Forms!Frm_Pointage!SF_Pointage!Référence_Commande
    Forms!F_Saisie!Ref.Value = Forms!Frm_Pointage!SF_Pointage!Ref
     
    End Function
    Mais surtout n'oublie pas de bien faire ces jointures gauches au niveau de ta requête source...

    A+

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2013
    Messages
    161
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2013
    Messages : 161
    Points : 59
    Points
    59
    Par défaut
    Salut User,

    Bon alors j'ai regardé un peu les jointures gauches dont tu parlais mais il y avait bien plus simple ne fait, ou alors c'est parce que ma demande n'était pas assez explicite. En fait j'ai créer un formulaire d'ajout sur la table qui m'interessé et j'ai créé une liste déroulante qui à partir d'une autre table récupère les données souhaitées. Tout cela marche super.

    Merci pour ton aide user.

    A+

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2013
    Messages
    161
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2013
    Messages : 161
    Points : 59
    Points
    59
    Par défaut
    Salut User,

    Bon alors en vérifiant plusieurs fois ce que j'avais fait, cela ne marche pas vraiment. Sa ajoute bien dans la table T_Pointage mais les données changent et se n'est pas normal.
    Je vais donc essayer le principe des jointures même si je ne sais pas trop comment elles fonctionnent car je ne les ai jamais utilisées.

    R_Analyse_Croisée=>R_Récup_Pointage_par_Affaires
    R_Récup_Pointage_par_Affaires est liée a deux requêtes: R_Récup_Pointage=>T_Pointage et R_Affaires_Par_Salarié=>R_Affaires_par_Mois=>R_Récup_Pointage(lié à la table T_Mois)


    Donc si tu peux me dire où je dois mettre la jointure gauche et comment le faire. Merci d'avance

  5. #5
    Rédacteur/Modérateur

    Avatar de User
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    8 360
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2004
    Messages : 8 360
    Points : 19 754
    Points
    19 754
    Billets dans le blog
    65
    Par défaut
    Salut,

    Dans la requête source de la requête analyse croisée, tu cliques sur les liens, puis tu fais un clic droit et choisis propriété de la jointure.

    Et dans la fenêtre qui s'ouvre tu sélectionnes :

    Inclure tous les enregistrements de la table contenant les salariés et seulement ceux de l'autre table pour lesquels les champs joints sont égaux.

    A+

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2013
    Messages
    161
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2013
    Messages : 161
    Points : 59
    Points
    59
    Par défaut
    Salut,

    En fait sans trop le savoir c'est ce que j'avais fait. Donc tout fonctionne.

    Merci encore pour ton aide User et à bientôt.

    @+
    Marg0t

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 0
    Dernier message: 28/07/2013, 17h13
  2. Réponses: 12
    Dernier message: 09/11/2009, 19h56
  3. Réponses: 2
    Dernier message: 07/12/2007, 15h20
  4. [Delphi for PHP] Récupérer les données d'un Datagrid pour une combobox ou listbox
    Par Truebison dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 2
    Dernier message: 27/08/2007, 09h27
  5. Réponses: 3
    Dernier message: 30/04/2007, 12h22

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