|
SAGE SQL 100 - Conflis lors de lecture/ecriture |
Débuté par s.sgagme, 16 fév. 2006 07:05 - 2 réponses |
| |
| | | |
|
| |
Posté le 16 février 2006 - 07:05 |
Bonjour,
Lors d'un traitement, je fait des lectures, des ajouts, des modifications et des suppressions sur des fichiers d'une GesCom SAGE SQL 100, par l'intermédiaire d'une connexion OLEDB. J'ai mis ARITHABORT à ON, ainsi que ses autres copains. Je désactive les TRIGGER sur le fichier avant opération (sauf lecture) puis je les réactive.
N'étant pas seul a accéder à ces fichiers, je me retrouve avec des conflis majeurs. Mon application plante alors qu'elle n'en a pas le droit !
J'ai bien vu les procédures stockées, mais je n'ai pas vu le moyen ni comment les utiliser avec WD9.
Comment faire pour verrouiller/dévérouiller les enregistrements ou les fichiers lors de ces opérations sur les fichiers ? Comment faire pour notifier, par message(s), au(x) bloqueur(s) de l'accès aux données qu'il est temps de rendre la main ? Y-a-t-il moyen de forcer ces opérations sur les fichiers, ou déconnecter les bloqueurs, pour ne pas rentrer dans des temps d'attente de libération qui ne seraient pas raisonnables ?
Merci pour vos conseils et idées. |
| |
| |
| | | |
|
| | |
| |
Posté le 16 février 2006 - 17:27 |
PROCEDURE IsRecordLock(Fichier,cbMarq) Requete est chaîne = "USE MADATABASE DECLARE @Res int EXECUTE CB_IsRecordLock '"+Fichier+"',"+cbMarq+",@Res OUTPUT SELECT @Res as block" ValRetour est entier = 0
SI PAS SQLExec(Requete,"BLOCK") ALORS SQLInfoGene("BLOCK") Info(SQL.MesErreur+RC+requete) RENVOYER 1 FIN SI SQLAvance("BLOCK")=0 ValRetour = SQLLitCol("BLOCK",1) FIN
SQLFerme("BLOCK")
RENVOYER ValRetour
Courlis a utilisé son clavier pour écrire :
Bonjour,
Lors d'un traitement, je fait des lectures, des ajouts, des modifications et des suppressions sur des fichiers d'une GesCom SAGE SQL 100, par l'intermédiaire d'une connexion OLEDB. J'ai mis ARITHABORT à ON, ainsi que ses autres copains. Je désactive les TRIGGER sur le fichier avant opération (sauf lecture) puis je les réactive.
N'étant pas seul a accéder à ces fichiers, je me retrouve avec des conflis majeurs. Mon application plante alors qu'elle n'en a pas le droit !
J'ai bien vu les procédures stockées, mais je n'ai pas vu le moyen ni comment les utiliser avec WD9.
Comment faire pour verrouiller/dévérouiller les enregistrements ou les fichiers lors de ces opérations sur les fichiers ? Comment faire pour notifier, par message(s), au(x) bloqueur(s) de l'accès aux données qu'il est temps de rendre la main ? Y-a-t-il moyen de forcer ces opérations sur les fichiers, ou déconnecter les bloqueurs, pour ne pas rentrer dans des temps d'attente de libération qui ne seraient pas raisonnables ?
Merci pour vos conseils et idées.
-- Pierre BOUSQUET
" Ne me dites pas que ce problème est difficile. S'il n'était pas difficile, ce ne serait pas un problème. " |
| |
| |
| | | |
|
| | |
| |
Posté le 16 février 2006 - 17:29 |
PROCEDURE IsRecordLock(Fichier,cbMarq) Requete est chaîne = "USE MADATABASE DECLARE @Res int EXECUTE CB_IsRecordLock '"+Fichier+"',"+cbMarq+",@Res OUTPUT SELECT @Res as block" ValRetour est entier = 0
SI PAS SQLExec(Requete,"BLOCK") ALORS SQLInfoGene("BLOCK") Info(SQL.MesErreur+RC+requete) RENVOYER 1 FIN SI SQLAvance("BLOCK")=0 ValRetour = SQLLitCol("BLOCK",1) FIN
SQLFerme("BLOCK")
RENVOYER ValRetour
Il se trouve que Courlis a formulé :
Bonjour,
Lors d'un traitement, je fait des lectures, des ajouts, des modifications et des suppressions sur des fichiers d'une GesCom SAGE SQL 100, par l'intermédiaire d'une connexion OLEDB. J'ai mis ARITHABORT à ON, ainsi que ses autres copains. Je désactive les TRIGGER sur le fichier avant opération (sauf lecture) puis je les réactive.
N'étant pas seul a accéder à ces fichiers, je me retrouve avec des conflis majeurs. Mon application plante alors qu'elle n'en a pas le droit !
J'ai bien vu les procédures stockées, mais je n'ai pas vu le moyen ni comment les utiliser avec WD9.
Comment faire pour verrouiller/dévérouiller les enregistrements ou les fichiers lors de ces opérations sur les fichiers ? Comment faire pour notifier, par message(s), au(x) bloqueur(s) de l'accès aux données qu'il est temps de rendre la main ? Y-a-t-il moyen de forcer ces opérations sur les fichiers, ou déconnecter les bloqueurs, pour ne pas rentrer dans des temps d'attente de libération qui ne seraient pas raisonnables ?
Merci pour vos conseils et idées.
-- Pierre BOUSQUET
" Ne me dites pas que ce problème est difficile. S'il n'était pas difficile, ce ne serait pas un problème. " |
| |
| |
| | | |
|
| | | | |
| | |
|