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 :

Ajout de lignes automatiques


Sujet :

Access

  1. #1
    Futur Membre du Club
    Inscrit en
    Décembre 2005
    Messages
    11
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 11
    Points : 5
    Points
    5
    Par défaut Ajout de lignes automatiques
    Salut,


    Je suis un peu bloqué et j'aimerais que vous me donniez quelques pistes qui m'aideront à continuer.

    D'abord le contexte de l'application: c'est une gestion des temps de prestations d'ingénieurs sur des chantiers. J'ai donc une forme principale où je spécifie l'ingénieur, le chantier et un numéro de semaine (représenté par date début semaine et date fin semaine) pour lesquels je veux spécifier des prestations. ces prestations se trouvent dans un subform. Pour l'instant je suis arrivé à modifier le recordsource de ma subform pour lui faire retrouver les prestations existantes pour les informations Ingénieur/Chantier/Semaine.

    C'est ici que cela se corse, car le but est d'aider les utilisateurs à entrer plus rapidement les nouvelles prestations. Pour cela, dans le cas où les prestations n'existent pas encore, je voudrais ajouter des lignes automatiquement (jusqu'à 7) dans ma subform pour que l'ingénieur n'aie plus qu'à encoder le nombre d'heures en regard des 7 jours de la semaine. De plus pour les nouvelles prestations, je voudrais qu'elles s'intercalent au bon endroit dans la semaine.

    Ex: Si j'ai déjà les prestations pour le jour 2 et 4 de la semaine sélectionnée, je voudrais intercaler les prestations automatiques aux bons endroits dans la semaine. C'est à dire jour 1 (auto), jour 2(table), jour 3 (auto) , etc.. jusqu'au jour 7.

    En résumé comment dois-je faire pour ajouter mes lignes automatiquement et aux bons endroits dans ma subform ?

    Merci d'avance.

    Fab.

  2. #2
    Modérateur

    Homme Profil pro
    Inscrit en
    Octobre 2005
    Messages
    15 332
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2005
    Messages : 15 332
    Points : 23 787
    Points
    23 787
    Par défaut
    Le plus simple est de décomposer :

    a) trouver ce qui manque
    b) l'ajouter
    c) l'affiicher

    a) trouver
    Pour ajouter des lignes automatiquement donc il faut déterminer celle qui manque.

    Je supose que tu as le jour de la semaine pour tes données de prestation.

    Je créerai une table qui contient les 7 jour de la semaine (JourSemaine)

    Je créerai une requète sur mes prestation avec comme critère le numéro de semaine. (ReqSemainePrestation) incluant le jour.

    Ensuite je ferai une requète rReqJoursManquants qui lie ReqSemainePrestation et JourSemaine sur le numéro de jour de la semaine qui prend tous les jours et afiche les prestations correspondnantes

    JourSemaine -> reqPrestationSemaine avec comme critère : reqPrestationSemaine.CodeJourSemaine is null.

    Comme cela, tu peux savoir quels sont les jours où tu n'as pas de presation.

    b) Ajouter

    Après

    - soit tu ouvre reqJoursManquants avec un VBA qui ajoute pour tous les enr de JourManquant le code semaine et le code jour.

    - soit tu fais une requète de Append qui ajoute les enr manquants à table des prestations. Attention je ne suis pas sur que cette méthode crée pas des bloquage d'écriture.

    c) Afficher

    Ensuite à l'affichage dans ton form de saisie, tu présente tes enr dans l'ordre : Semaine, Jour et si tu as des manques ils se placeront automatiquement au bon endrois.
    Vous voulez une réponse rapide et efficace à vos questions téchniques ?
    Ne les posez pas en message privé mais dans le forum, vous bénéficiez ainsi de la compétence et de la disponibilité de tous les contributeurs.
    Et aussi regardez dans la FAQ Access et les Tutoriaux Access. C'est plein de bonnes choses.

  3. #3
    Futur Membre du Club
    Inscrit en
    Décembre 2005
    Messages
    11
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 11
    Points : 5
    Points
    5
    Par défaut
    Je trouve l'idée générale bonne et j'aimerais la revoir avec toi:

    a) trouver ce qui manque:

    "Je supose que tu as le jour de la semaine ": oui j'ai bien le jour de la semaine dans les prestations; il s'appelle JourPrestation

    "Je créerai une table qui contient les 7 jour de la semaine (JourSemaine)...": tu veux dire créer une table temporaire qui contiendrai les éléments de ma forme principale: Ingénieur, Chantier + les 7 jours de la semaine ??? Cette table serait réinitialisée à chaque fois que je change une de ces valeurs ??

    "Ensuite je ferai une requète..." : Donc une jointure qui lie les 2 tables pour afficher le résultat dans la subform pour les présenter dans le bon ordre (je solutionne donc le point c) en même temps). en fait les jours qui n'ont pas de prestation ont un nombre d'heures à zéro c'est cette manière qui permet de les identifier.

    b) Ajouter

    Ici j'ai + de difficultés à comprendre: j'ai garni dans ma subform les 7 jours de la semaine en suivant le raisonnement de a) trouver. D'accord ??

    Ce que je pense faire alors pour faire simple, au moment du sauvetage dans la table, c'est de faire un deleteall pour tous les enregistrements existants pour lingénieur/Chantier/jous existants de la semaine et ensuite je fais un append dans ma table Prestations à partir des enregistrements qui se trouvent dans ma subform.



    Salut.

  4. #4
    Modérateur

    Homme Profil pro
    Inscrit en
    Octobre 2005
    Messages
    15 332
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2005
    Messages : 15 332
    Points : 23 787
    Points
    23 787
    Par défaut
    Citation Envoyé par fgaiga
    Je trouve l'idée générale bonne et j'aimerais la revoir avec toi:

    a) trouver ce qui manque:

    "Je supose que tu as le jour de la semaine ": oui j'ai bien le jour de la semaine dans les prestations; il s'appelle JourPrestation

    "Je créerai une table qui contient les 7 jour de la semaine (JourSemaine)...": tu veux dire créer une table temporaire qui contiendrai les éléments de ma forme principale: Ingénieur, Chantier + les 7 jours de la semaine ??? Cette table serait réinitialisée à chaque fois que je change une de ces valeurs ??
    Non je voulais dire une table qui contient 1, lundi, 2, mardi, ... 7, dimanche.

    "Ensuite je ferai une requète..." : Donc une jointure qui lie les 2 tables pour afficher le résultat dans la subform pour les présenter dans le bon ordre (je solutionne donc le point c) en même temps). en fait les jours qui n'ont pas de prestation ont un nombre d'heures à zéro c'est cette manière qui permet de les identifier.

    b) Ajouter

    Ici j'ai + de difficultés à comprendre: j'ai garni dans ma subform les 7 jours de la semaine en suivant le raisonnement de a) trouver. D'accord ??

    Ce que je pense faire alors pour faire simple, au moment du sauvetage dans la table, c'est de faire un deleteall pour tous les enregistrements existants pour lingénieur/Chantier/jous existants de la semaine et ensuite je fais un append dans ma table Prestations à partir des enregistrements qui se trouvent dans ma subform.

    Salut.
    A vu de nez ta solution va marcher aussi.

    Personnellement je préfère les requètes aux tables temporaires car tu es certain que tes données sont à date.
    Vous voulez une réponse rapide et efficace à vos questions téchniques ?
    Ne les posez pas en message privé mais dans le forum, vous bénéficiez ainsi de la compétence et de la disponibilité de tous les contributeurs.
    Et aussi regardez dans la FAQ Access et les Tutoriaux Access. C'est plein de bonnes choses.

Discussions similaires

  1. MSFlexgrid avec ajout de lignes automatique
    Par hugoclo dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 09/10/2008, 20h52
  2. Ajout de ligne automatiquement
    Par batetdo dans le forum Access
    Réponses: 5
    Dernier message: 14/03/2007, 13h12
  3. Réponses: 4
    Dernier message: 21/09/2006, 08h25
  4. [VBA-E] ajout de ligne automatique en fin de tableau
    Par zoumzoum59 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 11/06/2006, 21h13
  5. [VBA-E]ajout de ligne automatique
    Par deathsurfer dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 14/01/2006, 13h22

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