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 :

Permettre l'ajout et la modification des données dans un sous formulaire


Sujet :

IHM

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    434
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Juin 2010
    Messages : 434
    Points : 94
    Points
    94
    Par défaut Permettre l'ajout et la modification des données dans un sous formulaire
    Bonjour à tous,
    Tout d'abord je tenais à féliciter les administrateurs et les membres du site pour le bon travail et l'ambiance qui règne.

    Voici mon problème :

    Je suis en pleine création d'un logiciel facilitant la gestion des projets pour une entreprise.
    J'ai créé un formulaire permettant à l'utilisateur de visualiser sa feuille de temps en cours. La feuille de temps en cours est un sous formulaire ayant pour requête celle ci :

    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    SELECT DISTINCT travail.codeduprojet, tache.nomtâche, tache.descriptiontache
    FROM travail, tache, feuille_de_temps, employe
    WHERE travail.id_feuilledetemps = feuille_de_temps.id_feuilledetemps
    and travail.id_tache = tache.id_tache
    and feuille_de_temps.id_employé = (select id_employé from employe where nome = identifiant())
    and feuille_de_temps.chefdeprojet = false
    and feuille_de_temps.archivef = false;

    J'obtiens le formulaire suivant :





    Cependant j'aimerais qu'une ligne supplémentaire s'ajout au sous formulaire ainsi que l'on puisse modifier les différentes données. Je n'arrive pas à trouver la solution pourtant j'ai permis la modification et l'entrée de données dans les propriétés...

    Merci beaucoup pour votre aide

    Leniouns

  2. #2
    Expert éminent sénior

    Avatar de Tofalu
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Octobre 2004
    Messages
    9 501
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Octobre 2004
    Messages : 9 501
    Points : 32 311
    Points
    32 311
    Par défaut
    Une requête à base de distinct ne donne pas la possibilité d'ajouter ni supprimer ni modifier les données.

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    434
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Juin 2010
    Messages : 434
    Points : 94
    Points
    94
    Par défaut
    Ah bon... le truc c'est que je suis obligé de mettre un distinct. Et il me semble que j'avais tout de même essayé sans le distinct mais que je pouvais toujours pas ajouter ou modifier des informations.

    Il y a-t-il une chose à faire avec les champ père et fils ?

    En tout cas merci de ton aide.

  4. #4
    Rédacteur/Modérateur

    Avatar de User
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    8 261
    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 261
    Points : 19 424
    Points
    19 424
    Billets dans le blog
    63
    Par défaut
    Salut,

    Quelques questions :

    1. Quel est ton champ de type date dans ta requête pour que tu puisses faire la correspondance avec les zones de texte "Du" et "au" du formulaire principal ?

    2. Dans le where de ta requête tu as entre autre :
    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    feuille_de_temps.id_employé = (SELECT id_employé FROM employe WHERE nome = identifiant())

    Quel est cette fonction identifiant() ?
    Peux-tu nous donner son code ?
    Ne pourrais-tu pas remplacer cela par :
    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    (feuille_de_temps.id_employé = employe.id_employé and employe.nome = identifiant())

    A+
    Vous trouverez dans la FAQ, les sources ou les tutoriels, de l'information accessible au plus grand nombre, plein de bonnes choses à consulter sans modération

    Des tutoriels pour apprendre à créer des formulaires de planning dans vos applications Access :
    Gestion sur un planning des présences et des absences des employés
    Gestion des rendez-vous sur un calendrier mensuel


    Importer un fichier JSON dans une base de données Access :
    Import Fichier JSON

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    434
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Juin 2010
    Messages : 434
    Points : 94
    Points
    94
    Par défaut
    Salut,
    tout d'abord merci pour ton aide.

    Dans ma requête je n'ai pas utilisé le champ de type date.
    Ensuite voici le code de identifiant(), il s'agit en fait d'un module tout simple :

    Public Function identifiant()
    identifiant = str_identifiant
    End Function

    Identifiant() récupère en fait le nom de l'utilisateur qui s'identifie, cette fonction marche car je l'ai testé.


    J'ai remplacé par ton bout de code cela marche sans avoir besoin du distinct mais je ne peux toujours pas modifier les données.

    Merci de t'intéresser à mon cas

  6. #6
    Rédacteur/Modérateur

    Avatar de User
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    8 261
    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 261
    Points : 19 424
    Points
    19 424
    Billets dans le blog
    63
    Par défaut
    Re,

    Il faudrait peut-être poser des clés primaire si possible sur:

    feuille_de_temps.id_feuilledetemps
    tache.id_tache
    id_employé.id_employé

    ..

    et créer des jointures à la place des signes "=":
    un peu de lecture...


    Sans conviction...
    Vous trouverez dans la FAQ, les sources ou les tutoriels, de l'information accessible au plus grand nombre, plein de bonnes choses à consulter sans modération

    Des tutoriels pour apprendre à créer des formulaires de planning dans vos applications Access :
    Gestion sur un planning des présences et des absences des employés
    Gestion des rendez-vous sur un calendrier mensuel


    Importer un fichier JSON dans une base de données Access :
    Import Fichier JSON

  7. #7
    Membre régulier
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    434
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Juin 2010
    Messages : 434
    Points : 94
    Points
    94
    Par défaut
    Ce sont tous des clés primaires...

    Merci beaucoup de ton aide

Discussions similaires

  1. Réponses: 10
    Dernier message: 18/06/2010, 17h02
  2. Réponses: 1
    Dernier message: 31/08/2009, 05h17
  3. Réponses: 5
    Dernier message: 07/07/2008, 11h28
  4. afficher des données dans un sous formulaire
    Par issam16 dans le forum Access
    Réponses: 3
    Dernier message: 26/06/2006, 15h36
  5. Réponses: 11
    Dernier message: 16/05/2006, 12h34

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