Ma base est fractionnée: une partie contient les données et une autre
l'outil en lui mème.
Il était prévu que la Base de données se situe sur un serveur et l'outil sur
les postes clients.
Cependant actuellement , la partie outil est située aussi sur le serveur.
La partie outil modifie par Macro VBA des requétes existantes de cette
facon.
Set db = DBEngine.Workspaces(0).Databases(0)
Set Qry = db.QueryDefs("qryTest3")
If Exist Then
db.QueryDefs.Delete "qryTest3"
End If
Set Qry = db.CreateQueryDef("qryTest3", SQLText)
Qry.Close
db.Close
ou SQLText est fabriqué précedemment.
Cependant, le fonctionnement s'est bien déroulé pendant plus d'une année
mais depuyis la mise en place d'une nouvelle base pour l'année 2003-2004,
les utilisteurs n'arréte pas de rencontrer des problème sur l'outil saisie.
Les problème sont multiples, il se passent sur les formulaires qui utilise
qryTest3 (il y'a 6 query de ce type)
Pour les plus courant: on a les message d'erreur suivants:
- L'enregistrement est supprimé (OK) en bnoucle lors de l'apparition des
graphes utilisant les requétes précédente.
- Plantage d'ACCESS avec Dr WATSON: violzation d'accés (0xc0000005). Adresse
: 0x0405cde3
- suite à une maintenance sur la base outil : une erreur de type -601 si je
me rappelle bien .
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Xavier HUE
Bonjour Denis,
Plusieurs remarques:
1) Pourquoi détruire puis recréer ta requête? Tu peux modifier directement la chaine SQL: Set db = DBEngine.Workspaces(0).Databases(0) Set Qry = db.QueryDefs("qryTest3") If Exist Then Qry.SourceSQL = SQL Else Set Qry = db.CreateQueryDef("qryTest3", SQLText) End If Qry.Close db.Close
2) L'outils étant partagé, qu'est-ce qui arrive si 2 utilisateurs lance la même opération (utilisation simultanée de QryTest3)?!
3) As-tu essayé de réparer la base Outils?
Cordialement.
Bonjour Denis,
Plusieurs remarques:
1) Pourquoi détruire puis recréer ta requête?
Tu peux modifier directement la chaine SQL:
Set db = DBEngine.Workspaces(0).Databases(0)
Set Qry = db.QueryDefs("qryTest3")
If Exist Then
Qry.SourceSQL = SQL
Else
Set Qry = db.CreateQueryDef("qryTest3",
SQLText)
End If
Qry.Close
db.Close
2) L'outils étant partagé, qu'est-ce qui arrive si 2
utilisateurs lance la même opération (utilisation
simultanée de QryTest3)?!
1) Pourquoi détruire puis recréer ta requête? Tu peux modifier directement la chaine SQL: Set db = DBEngine.Workspaces(0).Databases(0) Set Qry = db.QueryDefs("qryTest3") If Exist Then Qry.SourceSQL = SQL Else Set Qry = db.CreateQueryDef("qryTest3", SQLText) End If Qry.Close db.Close
2) L'outils étant partagé, qu'est-ce qui arrive si 2 utilisateurs lance la même opération (utilisation simultanée de QryTest3)?!
3) As-tu essayé de réparer la base Outils?
Cordialement.
D.Chenu
Merci Xavier, je vais modifié les macros pour les futures version,
Pour la question 2: c'est je pense, ce qui améne le problème, J'ai effectué le test avec plusieurs utilisateur de connecté, ca passe sans problème dans un premier temps, cependant comme la base est souvent buguée, cela peut étre du à un problème multi-utilisateur.
Malheureusement c'est chez un client dont le SI ne veut pas trop compliquer les procédures de déploiement.
J'ai effectué la réparation de la base outil. Suite à cette réparation le message d'erreur change: c'est une erreur -601 ou qqchoise comme ca : sur support.microsoft: pour cette erreur , ils indique un problème de ta ble de fichier incrrecte: seule solution, reconstruire la base > comme j'ai mes requéte en doublon sur l'outil: je supprime mes requéte et je reprend les requéte de sauvegarde, ou je remplace directement l'outil.
Encore merci.
De : "Xavier HUE" Groupes : microsoft.public.fr.access Date : Fri, 10 Oct 2003 01:46:08 -0700 Objet : Problème sur une base en reseaux
Bonjour Denis,
Plusieurs remarques:
1) Pourquoi détruire puis recréer ta requête? Tu peux modifier directement la chaine SQL: Set db = DBEngine.Workspaces(0).Databases(0) Set Qry = db.QueryDefs("qryTest3") If Exist Then Qry.SourceSQL = SQL Else Set Qry = db.CreateQueryDef("qryTest3", SQLText) End If Qry.Close db.Close
2) L'outils étant partagé, qu'est-ce qui arrive si 2 utilisateurs lance la même opération (utilisation simultanée de QryTest3)?!
3) As-tu essayé de réparer la base Outils?
Cordialement.
Merci Xavier, je vais modifié les macros pour les futures version,
Pour la question 2: c'est je pense, ce qui améne le problème,
J'ai effectué le test avec plusieurs utilisateur de connecté, ca passe sans
problème dans un premier temps, cependant comme la base est souvent buguée,
cela peut étre du à un problème multi-utilisateur.
Malheureusement c'est chez un client dont le SI ne veut pas trop compliquer
les procédures de déploiement.
J'ai effectué la réparation de la base outil.
Suite à cette réparation le message d'erreur change: c'est une erreur -601
ou qqchoise comme ca : sur support.microsoft: pour cette erreur , ils
indique un problème de ta
ble de fichier incrrecte: seule solution, reconstruire la base > comme j'ai
mes requéte en doublon sur l'outil: je supprime mes requéte et je reprend
les requéte de sauvegarde, ou je remplace directement l'outil.
Encore merci.
De : "Xavier HUE" <xavier.hueno@pubsysteme-u.fr>
Groupes : microsoft.public.fr.access
Date : Fri, 10 Oct 2003 01:46:08 -0700
Objet : Problème sur une base en reseaux
Bonjour Denis,
Plusieurs remarques:
1) Pourquoi détruire puis recréer ta requête?
Tu peux modifier directement la chaine SQL:
Set db = DBEngine.Workspaces(0).Databases(0)
Set Qry = db.QueryDefs("qryTest3")
If Exist Then
Qry.SourceSQL = SQL
Else
Set Qry = db.CreateQueryDef("qryTest3",
SQLText)
End If
Qry.Close
db.Close
2) L'outils étant partagé, qu'est-ce qui arrive si 2
utilisateurs lance la même opération (utilisation
simultanée de QryTest3)?!
Merci Xavier, je vais modifié les macros pour les futures version,
Pour la question 2: c'est je pense, ce qui améne le problème, J'ai effectué le test avec plusieurs utilisateur de connecté, ca passe sans problème dans un premier temps, cependant comme la base est souvent buguée, cela peut étre du à un problème multi-utilisateur.
Malheureusement c'est chez un client dont le SI ne veut pas trop compliquer les procédures de déploiement.
J'ai effectué la réparation de la base outil. Suite à cette réparation le message d'erreur change: c'est une erreur -601 ou qqchoise comme ca : sur support.microsoft: pour cette erreur , ils indique un problème de ta ble de fichier incrrecte: seule solution, reconstruire la base > comme j'ai mes requéte en doublon sur l'outil: je supprime mes requéte et je reprend les requéte de sauvegarde, ou je remplace directement l'outil.
Encore merci.
De : "Xavier HUE" Groupes : microsoft.public.fr.access Date : Fri, 10 Oct 2003 01:46:08 -0700 Objet : Problème sur une base en reseaux
Bonjour Denis,
Plusieurs remarques:
1) Pourquoi détruire puis recréer ta requête? Tu peux modifier directement la chaine SQL: Set db = DBEngine.Workspaces(0).Databases(0) Set Qry = db.QueryDefs("qryTest3") If Exist Then Qry.SourceSQL = SQL Else Set Qry = db.CreateQueryDef("qryTest3", SQLText) End If Qry.Close db.Close
2) L'outils étant partagé, qu'est-ce qui arrive si 2 utilisateurs lance la même opération (utilisation simultanée de QryTest3)?!