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 :

Verrouiller un formulaire aprés enregistrement [AC-2003]


Sujet :

IHM

  1. #1
    Membre à l'essai
    Homme Profil pro
    Apprenti Management Unité de Production
    Inscrit en
    Décembre 2012
    Messages
    32
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Apprenti Management Unité de Production

    Informations forums :
    Inscription : Décembre 2012
    Messages : 32
    Points : 11
    Points
    11
    Par défaut Verrouiller un formulaire aprés enregistrement
    Bonjour à tous !!!

    Je suis actuellement en train de développer un petit soft sur Access afin de gérer toute ma maintenance.

    Je viens vers vous pour quelles que petites questions que je poserais , je pense , au fur et à mesure de mon avancement.

    Donc comme l'indique le titre, j'ai petit soucis de sécurité sur mes formulaires.

    Je souhaiterais , s'il vous plait , que :

    Après que l'opérateur ait remplit le formulaire, et qu'il ait cliqué sur le bouton : "Ajouter".
    La page suivante s'affiche vierge.
    Jusque la j'y suis arriver !! ( heureusement )

    Après avoir fait cela, si mon opérateur décide de retourner en arrière pour voir ce qu'il a écrit : Alors le formulaire qui venait d'être enregistré est en lecture seul et nécessite d'appuyer sur le bouton " Modifier " pour ne plus être en lecture seul et pouvoir modifier sa page.

    C'est sur la partie bleu qu'un coup de main serait le bienvenue.

    En vous remercient d'avance pour l'intérêt que vous allez porter à ma demande.

  2. #2
    Membre expérimenté
    Avatar de minot83
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Mars 2006
    Messages
    972
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Mars 2006
    Messages : 972
    Points : 1 430
    Points
    1 430
    Par défaut
    Salut,
    tu peux utiliser la commande avec les conditions qui vont bien (avec l'enregistrement correspondant, en modification, en édition...)

  3. #3
    Membre à l'essai
    Homme Profil pro
    Apprenti Management Unité de Production
    Inscrit en
    Décembre 2012
    Messages
    32
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Apprenti Management Unité de Production

    Informations forums :
    Inscription : Décembre 2012
    Messages : 32
    Points : 11
    Points
    11
    Par défaut
    Comment dire ......... le code et moi .... sa fait 2.

    Je vais arriver à pondre un petit truc sur Excel mais là , pour moi , ce que tu me dit :


  4. #4
    Membre expérimenté Avatar de RobiPMS
    Homme Profil pro
    Conseiller psycho-pédagogique
    Inscrit en
    Octobre 2007
    Messages
    827
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Conseiller psycho-pédagogique
    Secteur : Enseignement

    Informations forums :
    Inscription : Octobre 2007
    Messages : 827
    Points : 1 506
    Points
    1 506
    Par défaut
    Bonjour.

    Voici une solution:
    1. Pour pouvoir utiliser le formulaire, tu crées un bouton que tu nommes, par exemple "Libérer". Dans l'événement "Sur clic", tu mets le code suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Private Sub Libérer_Click()
    If Forms![Elèves].Form.AllowEdits = False Then  'vérification de l'état (verrouillé ou déverrouillé) du formulaire
    Me.AllowEdits = True  'permet l'encodage
    Libérer.ForeColor = RGB(0, 200, 0)     'couleur verte du texte du bouton
    Else
    Me.AllowEdits = False  'empêche l'encodage
    Libérer.ForeColor = RGB(255, 0, 0)     'couleur rouge du texte du bouton
    End If
    DoCmd.RunCommand acCmdRefresh
    End Sub
    Cela aura pour effet que quand tu cliques, si le formulaire est verrouillé, il se déverrouille, et s'il est déverrouillé, il se verrouille. Et la couleur du texte du bouton change en fonction de l'état du formulaire.
    2. Tu ouvres ce formulaire en mode création. Tu affiches ses propriétés.
    Dans l'onglet "Evénement", propriété "Sur activation" tu mets [Procédure événementielle].
    Tu ouvres la procédure événementielle (le petit bouton avec ... à droite) et là tu mets :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Me.AllowEdits = False
    Libérer.ForeColor = RGB(255, 0, 0)
    Cela aura pour conséquence que chaque fois qu'il est activé, le formulaire est verrouillé, et que le texte du bouton "Libérer" sera de couleur rouge.

    Cordialement

  5. #5
    Membre à l'essai
    Homme Profil pro
    Apprenti Management Unité de Production
    Inscrit en
    Décembre 2012
    Messages
    32
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Apprenti Management Unité de Production

    Informations forums :
    Inscription : Décembre 2012
    Messages : 32
    Points : 11
    Points
    11
    Par défaut
    La grande classe , ça marche nikel

    Un grand merci !!!!!!

    Je me permet d'abuser avec une deuxième question plus simple :

    Comment faire, s'il vous plait, pour que :

    Quand je lance mon formulaire, alors ce soit toujours une fiche vierge qui apparaisse.

    C'est à dire la fiche vierge qui est après tout mes enregistrements, afin que l'opérateur n'ait plus qu'a remplir sa fiche sans tomber ou devoir passer sur les précédents.


    Et ce sera tout pour aujourd'hui je pense pourvoir me débrouiller sur mes autres problèmes.

    PS : J'ai dit "pour aujourd'hui"

  6. #6
    Membre expérimenté Avatar de RobiPMS
    Homme Profil pro
    Conseiller psycho-pédagogique
    Inscrit en
    Octobre 2007
    Messages
    827
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Conseiller psycho-pédagogique
    Secteur : Enseignement

    Informations forums :
    Inscription : Octobre 2007
    Messages : 827
    Points : 1 506
    Points
    1 506
    Par défaut
    Deux possibilités classiques :
    - Si tu l'ouvres à l'aide d'une macro : à la ligne "Mode données" tu mets Ajout
    - Si tu l'ouvres à l'aide d'une procédure événementielle (du code VBA derrière le bouton) tu mets :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    DoCmd.OpenForm "ton_form", ,[filtre éventuel] ,[Condition Where] , acFormAdd
    Dans ton cas, puisque tu veux l'ouvrir en mode ajout, tu mets juste les ,,,, entre le nom du formulaire et le acFormAdd. (J'ai mis [filtre éventuel] et [Condition Where] pour que tu saches ce qui peut être mis là... s'il n'y a pas de filtre et de condition, tu ne mets rien!!!)
    Dans les deux cas, tu ouvres le formulaire vierge prêt à faire un nouvel encodage, mais les enregistrements déjà effectués ne sont pas affichés.
    Si tu veux ouvrir tout et aller à un enregistrement vierge, tu remplaces le code ci-dessus par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    DoCmd.OpenForm "ton_form", ,[filtre éventuel] ,[Condition Where]
    DoCmd.GoToRecord , , acNewRec
    A+

  7. #7
    Membre à l'essai
    Homme Profil pro
    Apprenti Management Unité de Production
    Inscrit en
    Décembre 2012
    Messages
    32
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Apprenti Management Unité de Production

    Informations forums :
    Inscription : Décembre 2012
    Messages : 32
    Points : 11
    Points
    11
    Par défaut
    Bonjour,

    Pour la premiére question, je le redis, vraiment nikel ! Je l'utilise partout dans ma base. J'ai même apporter des petites modifs ^^

    Par contre la pour ces deux lignes de code je ne comprendre pas , mais ça ne marche pas.

    Je suis dans un formulaire ou j'appuie sur un bouton et le bouton me renvois dans un formulaire dans lequel je dois tomber sur la dernière page ( vierge ).

    J'ai essayé en mettant le bout de code dans mon bouton avec l'activation sur clic sa ne marche pas, sur activation en sortie non plus.
    Et sur mon formulaire je n'ai pas la possibilité de mettre le bout de code pour qu'il s'active des qu'il s'ouvre.

  8. #8
    Membre expérimenté
    Avatar de minot83
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Mars 2006
    Messages
    972
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Mars 2006
    Messages : 972
    Points : 1 430
    Points
    1 430
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    DoCmd.OpenForm "Ton_Formulaire", acNormal, , , acFormAdd

  9. #9
    Membre à l'essai
    Homme Profil pro
    Apprenti Management Unité de Production
    Inscrit en
    Décembre 2012
    Messages
    32
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Apprenti Management Unité de Production

    Informations forums :
    Inscription : Décembre 2012
    Messages : 32
    Points : 11
    Points
    11
    Par défaut
    DoCmd.OpenForm "CURATIF"
    DoCmd.GoToRecord , , acNewRec

    Voila le petit bout de code qui à marché.

    UN GRAND MERCI à Minot 83 et RobiPMS pour leur aide !!!!

  10. #10
    Membre à l'essai
    Homme Profil pro
    Apprenti Management Unité de Production
    Inscrit en
    Décembre 2012
    Messages
    32
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Apprenti Management Unité de Production

    Informations forums :
    Inscription : Décembre 2012
    Messages : 32
    Points : 11
    Points
    11
    Par défaut
    Bonjour,

    Une petite question qui , je pense , sera résolu vite fait :

    J'ai un formulaire avec plusieurs champs dont un champs : Date.
    Comment faire pour qu'a l'ouverture de mon formulaire curatif ( qui menvois directement sur une fiche vierge) alors toute mes fiches soit trier par date?

    J'ai essayer avec une requête avec la sélection du champs trier par odre croissant etc mais pas de résultat.

    Merci d'avance.

  11. #11
    Membre expérimenté Avatar de RobiPMS
    Homme Profil pro
    Conseiller psycho-pédagogique
    Inscrit en
    Octobre 2007
    Messages
    827
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Conseiller psycho-pédagogique
    Secteur : Enseignement

    Informations forums :
    Inscription : Octobre 2007
    Messages : 827
    Points : 1 506
    Points
    1 506
    Par défaut
    Re-bonjour Max.

    Comme ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    DoCmd.OpenForm "CURATIF"
    Forms![CURATIF].OrderBy = "[Le_champ_concerné] Desc"
    Forms![CURATIF].OrderByOn = True
    DoCmd.GoToRecord , , acNewRec
    Pour l'ordre ascendant, tu mets Asc.

    A+

  12. #12
    Membre à l'essai
    Homme Profil pro
    Apprenti Management Unité de Production
    Inscrit en
    Décembre 2012
    Messages
    32
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Apprenti Management Unité de Production

    Informations forums :
    Inscription : Décembre 2012
    Messages : 32
    Points : 11
    Points
    11
    Par défaut
    OLALALA Standing Ovation !!

    Impeccable ça marche super rien à redire.

    Mes formulaires sont correctement fait, les petites sécurités de ce type font la différence et rende ma GMAO plus simple et plus sûr.

    Je me lance maintenant dans la conception de requêtes pour faire mes analyses des données rentrées par les opérateurs.

    Je vais essayer de faire ça nikel pour sortir de beau petit rapport sur toute ma maintenance.

    En passant si ça intéresse quelqu'un une fois que ça sera fini , ne pas hésiter à me contacter par MP !!!

    Encore un grand MERCI à toi Robi !!!!

  13. #13
    Membre à l'essai
    Homme Profil pro
    Apprenti Management Unité de Production
    Inscrit en
    Décembre 2012
    Messages
    32
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Apprenti Management Unité de Production

    Informations forums :
    Inscription : Décembre 2012
    Messages : 32
    Points : 11
    Points
    11
    Par défaut
    Re-bonjour !!

    " Oh non putin encore l'autre relou !! "

    Et oui c'est moi !!

    Question à dix milles :

    J'ai trois menu déroulant :

    1er Machine
    2éme Station
    3éme Action

    Je choisi la machine et en fonction de la machine choisi je peu choisir telle ou telle station.
    Jusque là tout va bien.
    Le troisième doit ce remplir en fonction de la machine choisit et de la station choisie.
    Et là ça bloque, soit j'ai l'un soit l'autre soit rien mais jamais l'affinement souhaiter.
    Je passe par une requête ou je choisis les champs :

    Code action (clef primaire) Action Machine Station

    Et dans les critères je mets
    : [Formulaires]![ACTION PREVENTIVE]![ACT_Machine]

    Ce qui me permet de le choisir en fonction de la machine.

    Si je fait pareille pour station alors Access en privilégie 1 sur 2.

    Des idées ??


    Encore une fois un grand merci d'avance.

  14. #14
    Membre expérimenté Avatar de RobiPMS
    Homme Profil pro
    Conseiller psycho-pédagogique
    Inscrit en
    Octobre 2007
    Messages
    827
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Conseiller psycho-pédagogique
    Secteur : Enseignement

    Informations forums :
    Inscription : Octobre 2007
    Messages : 827
    Points : 1 506
    Points
    1 506
    Par défaut
    Re-bonjour Max.
    Peux-tu poster les SQL des requêtes de tes listes déroulantes ( en particulier celle qui doit dépendre du choix fait dans les deux autres). Et je suppose que tu as bien mis un Requery des listes sur l'événement Après mise à jour (ou Sur Changement) des deux premières.

    PS : Plutôt que de continuer pour un autre problème une discussion qui a trouvé une solution (tes questions résolues antérieures...), prends l'habitude d'ouvrir une nouvelle discussion, et de mettre le tag sur celle qui est solutionnée. Ça rend service à tout le monde.

  15. #15
    Membre à l'essai
    Homme Profil pro
    Apprenti Management Unité de Production
    Inscrit en
    Décembre 2012
    Messages
    32
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Apprenti Management Unité de Production

    Informations forums :
    Inscription : Décembre 2012
    Messages : 32
    Points : 11
    Points
    11
    Par défaut
    OK je vais créer une nouvelle discussion pour cette question.

    Je voulais juste ne pas spamer le forum avec des petites questions.

    Mais c'est vrai que pour ceux qui arrivent et cherche un sujet pour une question il sera plus facile de trouver directement la réponse sur un post correctement créé.

    Merci et à tout de suite sur le new post.

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 07/03/2008, 17h02
  2. Réponses: 1
    Dernier message: 19/01/2008, 13h55
  3. Fermer un formulaire après enregistrement
    Par ade94 dans le forum IHM
    Réponses: 3
    Dernier message: 14/06/2007, 22h47
  4. Réponses: 2
    Dernier message: 22/03/2007, 23h55
  5. Réponses: 8
    Dernier message: 01/06/2006, 11h21

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