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

Modélisation Discussion :

Archiver / réactiver un enregistrement


Sujet :

Modélisation

  1. #1
    Débutant  
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    887
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 887
    Points : 206
    Points
    206
    Par défaut Archiver / réactiver un enregistrement
    Bonjour,

    Violente question pour moi ! Il m'a été demandé qqch sur une de mes nombreuses bases en cours : est-il possible d'archiver une fiche (un enregistrement) qui irait directement dans un dossier archive que l'on pourrait consulter, et réactiver cet enregistrement de façon à ce qu'il retourne dans le formulaire de consultation d'où il a été enlevé ...

    Si oui, vous serez sympa (et patients) de bien vouloir m'expliquer la manip.

    Si non, bah... merci de m'avoir écoutée (lue)

  2. #2
    Rédacteur/Modérateur

    Avatar de Jean-Philippe André
    Homme Profil pro
    Développeur VBA/C#/VB.Net/Power Platform
    Inscrit en
    Juillet 2007
    Messages
    14 596
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur VBA/C#/VB.Net/Power Platform
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 14 596
    Points : 34 279
    Points
    34 279
    Par défaut
    bonjour,
    2 idées à te proposer,
    - ajouter un champ "archive" dans ta table, de type oui/non, que tu coches/décoches à loisir
    - créer une table archive avec les champs que tu souhaites, en ajoutant un champ "table_origine"

    bien sûr la première méthode est la plus simple à mettre en oeuvre.
    Cycle de vie d'un bon programme :
    1/ ça fonctionne 2/ ça s'optimise 3/ ça se refactorise

    Pas de question technique par MP, je ne réponds pas

    Mes ouvrages :
    Apprendre à programmer avec Access 2016, Access 2019 et 2021

    Apprendre à programmer avec VBA Excel
    Prise en main de Dynamics 365 Business Central

    Pensez à consulter la FAQ Excel et la FAQ Access

    Derniers tutos
    Excel et les paramètres régionaux
    Les fichiers Excel binaires : xlsb,

    Autres tutos

  3. #3
    Débutant  
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    887
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 887
    Points : 206
    Points
    206
    Par défaut
    Merci jp,

    Le truc c'est que je voudrais que les enregistrements que j'archiverai soient parachutés ailleurs. Ainsi, j'aurai un form ARCHIVES que je pourrai consulter. Ce form ARCHIVES serait composé de demandes abandonnées (possibilité de les réactiver) et de demandes satisfaites que j'aurais loisir de supprimer ou garder au cas où (et ça arrive), pour une raison x ou y elles ne soient plus satisfaites et qu'elles doivent être réactivées.

    Alors, j'ai pensé créer une table "STATUT" avec les champs
    - ID
    - Satisfaite
    - Abandonnée
    - En cours

    La propriété des 2 premiers champs serait de type OUI / NON.
    Je pourrais requêter sur cette table (liste des demandes abandonnées, etc...), les consulter et les réactiver ou supprimer ....

    Vois-tu ?

  4. #4
    Rédacteur/Modérateur

    Avatar de Jean-Philippe André
    Homme Profil pro
    Développeur VBA/C#/VB.Net/Power Platform
    Inscrit en
    Juillet 2007
    Messages
    14 596
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur VBA/C#/VB.Net/Power Platform
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 14 596
    Points : 34 279
    Points
    34 279
    Par défaut
    salut,
    effectivement, tu peux créer une table annexe au lieu de l'intégrer dans la table directement.
    De mon côté, c'est intéressant, mais attention à ne pas trop multiplier les champs oui/non, plutôt privilégier un seul champ numérique par exemple, qui fait appel à une simple table Statut_Liste
    Cycle de vie d'un bon programme :
    1/ ça fonctionne 2/ ça s'optimise 3/ ça se refactorise

    Pas de question technique par MP, je ne réponds pas

    Mes ouvrages :
    Apprendre à programmer avec Access 2016, Access 2019 et 2021

    Apprendre à programmer avec VBA Excel
    Prise en main de Dynamics 365 Business Central

    Pensez à consulter la FAQ Excel et la FAQ Access

    Derniers tutos
    Excel et les paramètres régionaux
    Les fichiers Excel binaires : xlsb,

    Autres tutos

  5. #5
    Expert éminent
    Avatar de Lou Pitchoun
    Profil pro
    Inscrit en
    Février 2005
    Messages
    5 038
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Février 2005
    Messages : 5 038
    Points : 8 268
    Points
    8 268
    Par défaut
    Salut,

    Pourquoi les "parachuter" ailleurs ??
    L'idée de la case à cocher est le plus simple.
    La case est cochée ? c'est une archive.
    Il te suffit simplement de baser la source de données de ton formulaire sur ces seuls enregistrements cochés.
    Pour ton autre formulaire, tu fais l'inverse.
    Tes données s'afficheront soit dans l'un soit dans l'autre formulaire.
    Je ne pense pas qu'il soit utile de créer une table Statut.
    Tu crées un champ Statut avec tes 3 valeurs possibles en liste déroulante.


    Citation Envoyé par Nessie37 Voir le message
    Merci jp,

    Le truc c'est que je voudrais que les enregistrements que j'archiverais soient parachutés ailleurs. ainsi, j'aurais un form ARCHIVES que je pourrais consulter. Ce form ARCHIVES serait composé de demandes abandonnées (possibilité de les réactiver) et de demandes satisfaites que j'aurais loisir de supprimer ou garder au cas où (et ça arrive), pour une raison x ou y elles ne soient plus satisfaites et qu'elles doivent être réactivées.

    Alors, j'ai pensé créer une table "STATUT" avec les champs
    - ID
    - Satisfaite
    - Abandonnée
    - En cours

    La propriété des 2 premiers champs serait de type OUI / NON.
    Je pourrais requêter sur cette table (liste des demandes abandonnées, etc...), les consulter et les réactiver ou supprimer ....

    Vois-tu ?

  6. #6
    Débutant  
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    887
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 887
    Points : 206
    Points
    206
    Par défaut
    Merci à vous deux pour vos réponses.
    Je vais maintenant, après première lecture, essayer de décoder en deuxième lecture ce que vous essayer de me dire :


    Citation Envoyé par Lou Pitchoun Voir le message
    Salut,

    Il te suffit simplement de baser la source de données de ton formulaire sur ces seuls enregistrements cochés.
    Pour ton autre formulaire, tu fais l'inverse.
    Tes données s'afficheront soit dans l'un soit dans l'autre formulaire.
    Je ne pense pas qu'il soit utile de créer une table Statut.
    Tu crées un champ Statut avec tes 3 valeurs possibles en liste déroulante.
    Lou Pitchoun, si je suis ce raisonnement, qui va dans le sens de JP, cela voudrait dire qu'en consultant le form, ces enregistrements apparaîtraient quand même (en grisé peut-être).
    Et qu'entends-tu par "baser la source, etc..."

    Merci

  7. #7
    Expert éminent
    Avatar de Lou Pitchoun
    Profil pro
    Inscrit en
    Février 2005
    Messages
    5 038
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Février 2005
    Messages : 5 038
    Points : 8 268
    Points
    8 268
    Par défaut


    Les enregistrements ne seront pas grisés. Ils n'apparaitront pas.

    Le formulaire qui te sert à afficher tes fiches en cours : tu y mets en source de données (propriétés du formulaire -> Onglet Données -> propriété Source) une requête du style :
    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT * FROM Fiches WHERE Archives = 0
    Et tu fais l'inverse pour le formulaire qui te sert à afficher les fiches archivées.

  8. #8
    Débutant  
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    887
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 887
    Points : 206
    Points
    206
    Par défaut
    Je vois un peu mieux de quoi il peut s'agir
    Pour le faire c'est autre chose, je vais tester sur un brouillon. mais je ne sais pas par où commencer. Voyons comment je raisonne :

    1- je dois ajouter dans ma table qui est la base de mes différents forms, un champ "statut" en liste déroulante par exemple...
    2- ensuite, je dois créer un form ARCHIVES (qui serait un copier-coller du form CONSULT). Dans ce form ARCHVIVES apparaîtront donc tous les enregistrements que j'aurais mis en "archivés" dans le CONSULT, grâce à l'inverse de la formule savante magique que tu viens de me donner.
    3- donc dans le CONSULT, je devrai mettre le code que tu m'as donné...

    Je suis pas trop mal là ? Non ?


    Ok, les enregistrements n'apparaitront plus mais ne disparaitront pas de suite une fois la case cochée (exemple, je coche + petit msgbox de demande de confirmation => OK, et hop enregistrement disparu pour n'apparaître que dans le form d'ARCHIVE ! ). Ne serait-ce pas un truc du genre Me.Refresh pour ça ?

  9. #9
    Débutant  
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    887
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 887
    Points : 206
    Points
    206
    Par défaut
    Bon.... je progresse !
    ça fonctionne ! la suite au prochain épisode !
    toutes mes interrogations ne sont pas encore satisfaites.....

    merci pour les idées que je suis en train de tester.

    Petite question :
    Je voudrais que par défaut, le statut dans le form consult soit "En cours".
    J'ai mis ce code sur openform
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Me.Statut.DefaultValue = En_cours
    et ça ne marche pas ! Hi Hi ! Où est mon erreur ?

  10. #10
    Expert éminent
    Avatar de Lou Pitchoun
    Profil pro
    Inscrit en
    Février 2005
    Messages
    5 038
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Février 2005
    Messages : 5 038
    Points : 8 268
    Points
    8 268
    Par défaut
    Salut,
    Citation Envoyé par Nessie37 Voir le message
    Bon.... je progresse !
    ça fonctionne ! la suite au prochain épisode !
    toutes mes interrogations ne sont pas encore satisfaites.....

    merci pour les idées que je suis en train de tester.

    Petite question :
    Je voudrais que par défaut, le statut dans le form consult soit "En cours".
    J'ai mis ce code sur openform
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Me.Statut.DefaultValue = En_cours
    et ça ne marche pas ! Hi Hi ! Où est mon erreur ?
    Que veux tu dire par statut du form consult ???

  11. #11
    Débutant  
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    887
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 887
    Points : 206
    Points
    206
    Par défaut
    Mon champs "statut". J'ai ajouté un champs "Statut dans ma table qui est ss forme de liste déroulante (avec 3 valeurs dont une qui est "en cours").
    Je voudrais que à l'ouverture de mon form, le statut soit par défaut " en cours"

  12. #12
    Expert éminent
    Avatar de Lou Pitchoun
    Profil pro
    Inscrit en
    Février 2005
    Messages
    5 038
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Février 2005
    Messages : 5 038
    Points : 8 268
    Points
    8 268
    Par défaut
    Désolé je n'avais pas remis la discussion

    En fait, tu dois spécifier la valeur par défaut dans ta table. Propriété valeur par défaut.
    Ainsi pour les nouveaux enregistrements tu auras 'En cours'. Ensuite dès que tu modifies tu auras la modification.

    Tu n'as pas à spécifier ça sur le chargement du formulaire.


  13. #13
    Débutant  
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    887
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 887
    Points : 206
    Points
    206
    Par défaut
    Euh...pas trop compris. C'est la valeur du champ "statut" que je veux par défaut "en cours" quand j'ouvre mon form de consult....
    Sorry...

  14. #14
    Expert éminent
    Avatar de Lou Pitchoun
    Profil pro
    Inscrit en
    Février 2005
    Messages
    5 038
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Février 2005
    Messages : 5 038
    Points : 8 268
    Points
    8 268
    Par défaut
    Citation Envoyé par Nessie37 Voir le message
    Euh...pas trop compris. C'est la valeur du champ "statut" que je veux par défaut "en cours" quand j'ouvre mon form de consult....
    Sorry...
    Oui, jusqu'à ce que le statut change non ??

  15. #15
    Débutant  
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    887
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 887
    Points : 206
    Points
    206
    Par défaut
    Exact. Jusqu'à ce que l'utilisateur change le statut.
    Je saisis un enregistrement, puis quand je vais dans le form de consult, son statut doit être "en cours" par défaut

  16. #16
    Expert éminent
    Avatar de Lou Pitchoun
    Profil pro
    Inscrit en
    Février 2005
    Messages
    5 038
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Février 2005
    Messages : 5 038
    Points : 8 268
    Points
    8 268
    Par défaut
    Ben oui.
    Tu fais un essai ?

  17. #17
    Débutant  
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    887
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 887
    Points : 206
    Points
    206
    Par défaut
    Ayé ! Je suis allée dans la table DETAIL qui est, je le répète, la base de tous mes form et il y en a 3 (form de saisie, form de consult et form d'archives), et valeur par défaut.... bah...propose pas

  18. #18
    Expert éminent
    Avatar de Lou Pitchoun
    Profil pro
    Inscrit en
    Février 2005
    Messages
    5 038
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Février 2005
    Messages : 5 038
    Points : 8 268
    Points
    8 268
    Par défaut
    Quand tu es en mode création de ta table, tu te places sur le champ Statut.
    En bas de la fenêtre, tu as un onglet Général avec une propriété : Valeur par défaut.

  19. #19
    Débutant  
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    887
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 887
    Points : 206
    Points
    206
    Par défaut
    Oui, je sais où le trouver et c'est ce que j'ai fait. Je me suis placé sur le champ statut, puis dans les propriétés, je suis allée sur valeur par défaut et j'ai cliqué sur le carré gris avec les 3 petits points et tu connais la suite.
    Alors en désespoir de cause, j'ai carrément entrée "En cours"
    Mais toujours rien.

  20. #20
    Expert éminent
    Avatar de Lou Pitchoun
    Profil pro
    Inscrit en
    Février 2005
    Messages
    5 038
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Février 2005
    Messages : 5 038
    Points : 8 268
    Points
    8 268
    Par défaut
    Le soucis est ailleurs alors.
    Mais où...

Discussions similaires

  1. Supression enregistrement sans affecter les archives logs
    Par dmeignen dans le forum Administration
    Réponses: 2
    Dernier message: 27/07/2010, 16h57
  2. supprimer un enregistrement.. mais en garder une archive..
    Par Jedi49 dans le forum MS SQL Server
    Réponses: 5
    Dernier message: 13/11/2009, 11h24
  3. [AC-2003] Transfert enregistrement vers table archive
    Par rberniga dans le forum VBA Access
    Réponses: 1
    Dernier message: 12/08/2009, 14h41
  4. archiver un enregistrement automatiquement
    Par MCarole dans le forum Access
    Réponses: 3
    Dernier message: 17/07/2006, 13h30
  5. enregistrer dans un fichier avec une appli mdi
    Par ferrari dans le forum C++Builder
    Réponses: 4
    Dernier message: 05/05/2002, 15h17

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