Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Access > Modélisation
Modélisation Le forum qui vous aide à résoudre vos questions relatives à la modélisation (tables et relations) de votre base de données sous Access. Pour les états et les formulaires, postez dans le forum IHM.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 19/04/2007, 17h26   #1
Invité de passage
 
Inscription : mars 2004
Messages : 16
Détails du profil
Informations forums :
Inscription : mars 2004
Messages : 16
Points : 1
Points : 1
Par défaut [Conception]Modification directe des enrgistrements

Bonjour,

J'ai un petit soucis assez contraignant concernant la modification d'enregistrement via formulaire.

Mon formulaire est directement lié à une table et toutes modifications entraine une mise à jour de la table.
Il existe également 1 filtre permettant de se positionner sur l'enregistrement voulu. Le filtre est réalisé dans le code via des :
Code :
1
2
3
 
Me.Filter = "Condition"
Me.FilterOn = True
Lorsque dans le filtre, je sélectionne une valeur et l'enregistrement s'affiche dans le formulaire.

Par contre, dès que je veux modifier un champ, j'obtiens le message suivant :
Citation:
Les données ont été modifiées

Un autre utilisateur a modifié cet enregistrement et a sauvegardé ses modifications avant que vous essayiez de sauvegarder les votres.

Remodifiez l'enregistrement.
Le problème, c'est que je travaille sur une base de données Access en locale et je suis le seul à l'utiliser.

Auriez vous une solution ?

Merci d'avance
wismerhill est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/04/2007, 12h10   #2
Invité de passage
 
Inscription : mars 2004
Messages : 16
Détails du profil
Informations forums :
Inscription : mars 2004
Messages : 16
Points : 1
Points : 1
J'ai trouvé la source du problème mais ne sais pas comment le résoudre.

Le but est de pouvoir faire une réplication manuelle et donc gérer un FLAG se trouvant sur la table.

Sur l'évènement "Form_Dirty", je modifie la valeur de la colonne FLAG à U.
En meme temps, sur le formulaire, je modifie une valeur d'un champ ce qui implique un accès concurrent entre la modification via formulaire et la modification SQL.

Sachant qu'il y a plus de 80 champs modifiables sur le formulaire, connaissez vous un moyen de réaliser les 2 modifications sans devoir modifier le FLAG pour tous les champs modifiables ?

Merci
wismerhill est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/04/2007, 12h50   #3
En attente de confirmation mail
 
Inscription : février 2005
Messages : 1 731
Détails du profil
Informations personnelles :
Localisation : France

Informations forums :
Inscription : février 2005
Messages : 1 731
Points : 2 010
Points : 2 010
Bonjour,

Si le champ FLAG est disponible dans ton formulaire (par exemple avec un contrôle caché qui serait lié au champ FLAG) alors tu n'as qu'à le modifier directement (pas de requête SQL), mais plutôt dans la procédure événementielle de l'événement AvantMAJ Form_BeforeUpdate.

Comme ça, tu effectues les modifications sur le même Recordset, sans te poser de question pour savoir quels sont les champs modifiés.
=JBO= est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/04/2007, 16h39   #4
Invité de passage
 
Inscription : mars 2004
Messages : 16
Détails du profil
Informations forums :
Inscription : mars 2004
Messages : 16
Points : 1
Points : 1
Merci, je n'avais pas pensé à cette solution.
Ca fonctionne très bien à première vue.
wismerhill est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 01h41.


 
 
 
 
Partenaires

Hébergement Web