OVH Cloud OVH Cloud

Base folle...

11 réponses
Avatar
Yves T
Bonjour,
Je deviens fou avec une base HF ! J'ai un fichier PERSONNE qui est
journalisé et crypté 128bits. Et ce problème arrive QUE sur ce fichier !!
Lors de la modification d'un enregistrement ou la création d'un nouveau,
des choses folles se passent ..

Exemple :

lors de la création d'un nouveau : 2 autres enregistrements sont
modifiés (au hasard) avec les valeurs du nouveau qui vient d'être saisi,
et le nouveau est bien enregistré. Je me trouve avec 3 enrengistement
identique.

Voici un exemple de ce que je trouve ensuite dans mon journal :

Valeur des enregistrements :
Avant HLit 372 Client11..toutes les data du client11
Après HModifie 372 Client22..toutes les data du client22


Le client22 est le nouveau !! et en plus il garde le même ID (372), donc
mon client11 a disparut de la base.

Ca arrive une fois tous les 2 mois ... et j'ai jamais réussi à
reproduire le problème !!!!!!

Merci pour vos idées.
Cordialement
yves

10 réponses

1 2
Avatar
nwjb
Le Mon, 17 Jul 2006 15:15:34 +0200, Yves T a
écrit:

Bonjour,
Je deviens fou avec une base HF ! J'ai un fichier PERSONNE qui est
journalisé et crypté 128bits. Et ce problème arrive QUE sur ce fichier !!
Lors de la modification d'un enregistrement ou la création d'un nouveau,
des choses folles se passent ..

Exemple :

lors de la création d'un nouveau : 2 autres enregistrements sont
modifiés (au hasard) avec les valeurs du nouveau qui vient d'être saisi,
et le nouveau est bien enregistré. Je me trouve avec 3 enrengistement
identique.

Voici un exemple de ce que je trouve ensuite dans mon journal :

Valeur des enregistrements :
Avant HLit 372 Client11..toutes les data du client11
Après HModifie 372 Client22..toutes les data du client22


Le client22 est le nouveau !! et en plus il garde le même ID (372), donc
mon client11 a disparut de la base.

Ca arrive une fois tous les 2 mois ... et j'ai jamais réussi à
reproduire le problème !!!!!!

Merci pour vos idées.
Cordialement
yves



Les fichiers HF sont-ils sur un serveur ? Les paramètres de gestion des
locks du serveur sont-ils corrects (voir dans ce forum)....



--
J.Bratières

Enlever paspub pour répondre
Please remove paspub when answering
Avatar
Yves T
nwjb a écrit :
Le Mon, 17 Jul 2006 15:15:34 +0200, Yves T
a écrit:

Bonjour,
Je deviens fou avec une base HF ! J'ai un fichier PERSONNE qui est
journalisé et crypté 128bits. Et ce problème arrive QUE sur ce fichier !!
Lors de la modification d'un enregistrement ou la création d'un
nouveau, des choses folles se passent ..

Exemple :

lors de la création d'un nouveau : 2 autres enregistrements sont
modifiés (au hasard) avec les valeurs du nouveau qui vient d'être
saisi, et le nouveau est bien enregistré. Je me trouve avec 3
enrengistement identique.

Voici un exemple de ce que je trouve ensuite dans mon journal :

Valeur des enregistrements :
Avant HLit 372 Client11..toutes les data du client11
Après HModifie 372 Client22..toutes les data du client22


Le client22 est le nouveau !! et en plus il garde le même ID (372),
donc mon client11 a disparut de la base.

Ca arrive une fois tous les 2 mois ... et j'ai jamais réussi à
reproduire le problème !!!!!!

Merci pour vos idées.
Cordialement
yves



Les fichiers HF sont-ils sur un serveur ? Les paramètres de gestion des
locks du serveur sont-ils corrects (voir dans ce forum)....



--J.Bratières

Enlever paspub pour répondre
Please remove paspub when answering



Oui, sur un server NT4, SP4. Mais pourquoi uniquement ce fichier ?
J'ai supprimer le cryptage pour voir ce que ca donne....
merci.
yves
Avatar
mat
Yves T wrote:
...
Valeur des enregistrements :
Avant HLit 372 Client11..toutes les data du client11
Après HModifie 372 Client22..toutes les data du client22


...

Bonjour,

si 372 était l'ID et qu'il y avait à la fin 3 enregistrement avec le
même ID, la première chose à faire serait de spécifier l'ID étant
UNIQUE. Ensuite il faut tester HAjoute, HModifie ce qui devrait régler
le problème. Si ce n'est pas le cas et qu'il y a des hFichierVersEcran,
alors vérifier l'ID après cette commande car nous avons des cas où elle
déplace le curseur dans le fichier sans avoir trouvé de raison (pas trop
difficile de tester l'ID avant et après la commande :-) ). Ceci peut
résulter dans l'effet décrit:

1) création: ID 100, quelques autres donnés de base, ensuite
hFichierVersEcran pour la saisie des données: le curseur peut aller sur
n'importe quel enregistrement, disant l'ID 70.
2) On sauvegarde une partie de l'enregistrement par hEcranVersFichier et
hModifie ce qui modifie le 2e enregistrement.
3) On continue la saisie, ce qui déclenche probablement un autre
hFichierVersEcran, et le curseur se ballade encore dans le fichier et
s'arrête sur un 3e enregistrement, disons le 10, qui va recevoir les
mêmes données par le prochain hEcranVersFichier/hModifie.

Attention, lorsque l'ID n'est pas inclu dans la fenêtre, il n'y aura pas
d'erreur de doublon déclanché, car seul les autres données seront mis à
jour, mais 3 enregistrements risquent avoir les mêmes données.

Par conséquent, vaut mieux vérifier l'ID avant chaque attribution, par
hEcranVersFichier ou autre, suivi par hAjout ou hModifie.

Salutations
Mat
Avatar
nwjb
Le Mon, 17 Jul 2006 16:53:13 +0200, mat a écrit:

Yves T wrote:
...
Valeur des enregistrements :
Avant HLit 372 Client11..toutes les data du client11
Après HModifie 372 Client22..toutes les data du client22


...

Bonjour,

si 372 était l'ID et qu'il y avait à la fin 3 enregistrement avec le
même ID, la première chose à faire serait de spécifier l'ID étant
UNIQUE. Ensuite il faut tester HAjoute, HModifie ce qui devrait régler
le problème. Si ce n'est pas le cas et qu'il y a des hFichierVersEcran,
alors vérifier l'ID après cette commande car nous avons des cas où elle
déplace le curseur dans le fichier sans avoir trouvé de raison (pas trop
difficile de tester l'ID avant et après la commande :-) ). Ceci peut
résulter dans l'effet décrit:

1) création: ID 100, quelques autres donnés de base, ensuite
hFichierVersEcran pour la saisie des données: le curseur peut aller sur
n'importe quel enregistrement, disant l'ID 70.
2) On sauvegarde une partie de l'enregistrement par hEcranVersFichier et
hModifie ce qui modifie le 2e enregistrement.
3) On continue la saisie, ce qui déclenche probablement un autre
hFichierVersEcran, et le curseur se ballade encore dans le fichier et
s'arrête sur un 3e enregistrement, disons le 10, qui va recevoir les
mêmes données par le prochain hEcranVersFichier/hModifie.

Attention, lorsque l'ID n'est pas inclu dans la fenêtre, il n'y aura pas
d'erreur de doublon déclanché, car seul les autres données seront mis à
jour, mais 3 enregistrements risquent avoir les mêmes données.

Par conséquent, vaut mieux vérifier l'ID avant chaque attribution, par
hEcranVersFichier ou autre, suivi par hAjout ou hModifie.

Salutations
Mat



Je supposais qu'il s'agissait d'une application testée.... tes remarques
sont donc
bien utiles...

--
J.Bratières

Enlever paspub pour répondre
Please remove paspub when answering
Avatar
Yves T
nwjb a écrit :
Le Mon, 17 Jul 2006 16:53:13 +0200, mat a écrit:

Yves T wrote:
...
Valeur des enregistrements :
Avant HLit 372 Client11..toutes les data du client11
Après HModifie 372 Client22..toutes les data du client22


...

Bonjour,

si 372 était l'ID et qu'il y avait à la fin 3 enregistrement avec le
même ID, la première chose à faire serait de spécifier l'ID étant
UNIQUE. Ensuite il faut tester HAjoute, HModifie ce qui devrait régler
le problème. Si ce n'est pas le cas et qu'il y a des
hFichierVersEcran, alors vérifier l'ID après cette commande car nous
avons des cas où elle déplace le curseur dans le fichier sans avoir
trouvé de raison (pas trop difficile de tester l'ID avant et après la
commande :-) ). Ceci peut résulter dans l'effet décrit:

1) création: ID 100, quelques autres donnés de base, ensuite
hFichierVersEcran pour la saisie des données: le curseur peut aller
sur n'importe quel enregistrement, disant l'ID 70.
2) On sauvegarde une partie de l'enregistrement par hEcranVersFichier
et hModifie ce qui modifie le 2e enregistrement.
3) On continue la saisie, ce qui déclenche probablement un autre
hFichierVersEcran, et le curseur se ballade encore dans le fichier et
s'arrête sur un 3e enregistrement, disons le 10, qui va recevoir les
mêmes données par le prochain hEcranVersFichier/hModifie.

Attention, lorsque l'ID n'est pas inclu dans la fenêtre, il n'y aura
pas d'erreur de doublon déclanché, car seul les autres données seront
mis à jour, mais 3 enregistrements risquent avoir les mêmes données.

Par conséquent, vaut mieux vérifier l'ID avant chaque attribution, par
hEcranVersFichier ou autre, suivi par hAjout ou hModifie.

Salutations
Mat



Je supposais qu'il s'agissait d'une application testée.... tes remarques
sont donc
bien utiles...

--J.Bratières

Enlever paspub pour répondre
Please remove paspub when answering



Testée ! elle fonctionne depuis 3 ans .. ! les ID sont tous uniques, il
n'y a jamais 3 enregistrements identiques avec le même ID, mais il y a
comme le dit mat une sorte de déplacement au hasard du curseur qui
écrase des données existantes. Jamais vu ca ! Mais comme ca fait des
heures/des jours que je cherche et je trouve pas à reproduire le
problème, c'est pas évident !
Ca pourrait être un problème d'index ?!
Avatar
nwjb
Le Mon, 17 Jul 2006 17:40:28 +0200, Yves T a
écrit:

nwjb a écrit :
Le Mon, 17 Jul 2006 16:53:13 +0200, mat a écrit:

Yves T wrote:
...
Valeur des enregistrements :
Avant HLit 372 Client11..toutes les data du client11
Après HModifie 372 Client22..toutes les data du client22


...






[...]
hEcranVersFichier ou autre, suivi par hAjout ou hModifie.

Salutations
Mat


Je supposais qu'il s'agissait d'une application testée.... tes
remarques sont donc
bien utiles...
--J.Bratières
Enlever paspub pour répondre
Please remove paspub when answering



Testée ! elle fonctionne depuis 3 ans .. ! les ID sont tous uniques, il
n'y a jamais 3 enregistrements identiques avec le même ID, mais il y a
comme le dit mat une sorte de déplacement au hasard du curseur qui
écrase des données existantes. Jamais vu ca ! Mais comme ca fait des
heures/des jours que je cherche et je trouve pas à reproduire le
problème, c'est pas évident !
Ca pourrait être un problème d'index ?!


Qu'y a t-il de changé depuis que cela marchait?


--
J.Bratières

Enlever paspub pour répondre
Please remove paspub when answering
Avatar
mat
Yves T wrote:
Testée ! elle fonctionne depuis 3 ans .. ! les ID sont tous uniques, il
n'y a jamais 3 enregistrements identiques avec le même ID, mais il y a
comme le dit mat une sorte de déplacement au hasard du curseur qui
écrase des données existantes. Jamais vu ca ! Mais comme ca fait des
heures/des jours que je cherche et je trouve pas à reproduire le
problème, c'est pas évident !
Ca pourrait être un problème d'index ?!




Salut Yves,
On ne peut jamais exclure à priori mais je ne crois pas. Nous avons une
gestion d'ajout et de modification d'enregistrements par 2 méthodes de
classes pour tous nos fichiers et le problème décrit avec
hFichierVersEcran n'existait que pour certains fichiers. Jamais trouvé
la raison, mais à l'époque il n'y avait plus rien qui m'étonnait avec
HF, donc je contournais tout simplement avec
SI monFichier.ID <> monIDActuel ALORS hLitRecherchePremier...
avant chaque référence au fichier, p.ex. hEcranVersFichier.
C'est facile à mettre en place et tester...
Salutations
Mat
Avatar
claude tele2
bonjour
j'ai un pb analogue sur une base qui fonctionne depuis plus d'un an et qui
nous a donné des coups de calgon de ce genre (mélange de données entre
enregistrements, remplacement d'un enregistrement par un autre en début de
fichier en usurpant l'index du précédent, ...). Il s'agissait d'un seul
fichier, le même.

J'ai jamais vraiment trouvé ce qui n'allait pas sinon qu'il semble bien
qu'il y ait un mélange d'index au cours de procédures à l'intérieur d'une
fenêtre : le problème a été (temporairement ???) résolu en fixant l'index à
l'intérieur d'une variable (au lieu de la gestion automatique par le RAD) et
en fermant la fenêtre en fin de procédure (on avait des fenêtre en cascade).
une piste intéressante m'a été donnée dans ce forum : celle des champs de
saisie assistée qui pourraient se mélanger les pinceaux dans les index.
Une autre pourrait être le contexte hyperfile des fenêtres (qui devrait être
défini à "indépendant")
Je reste aussi à l'écoute des suggestions ...
:-)
claude



"Yves T" a écrit dans le message de news:
44bb8d76$
Bonjour,
Je deviens fou avec une base HF ! J'ai un fichier PERSONNE qui est
journalisé et crypté 128bits. Et ce problème arrive QUE sur ce fichier !!
Lors de la modification d'un enregistrement ou la création d'un nouveau,
des choses folles se passent ..

Exemple :

lors de la création d'un nouveau : 2 autres enregistrements sont modifiés
(au hasard) avec les valeurs du nouveau qui vient d'être saisi, et le
nouveau est bien enregistré. Je me trouve avec 3 enrengistement identique.

Voici un exemple de ce que je trouve ensuite dans mon journal :

Valeur des enregistrements :
Avant HLit 372 Client11..toutes les data du client11
Après HModifie 372 Client22..toutes les data du client22


Le client22 est le nouveau !! et en plus il garde le même ID (372), donc
mon client11 a disparut de la base.

Ca arrive une fois tous les 2 mois ... et j'ai jamais réussi à reproduire
le problème !!!!!!

Merci pour vos idées.
Cordialement
yves


Avatar
Yves T
> Qu'y a t-il de changé depuis que cela marchait?


--J.Bratières

Enlever paspub pour répondre
Please remove paspub when answering



Bon, je suis pas sûr à 100%, car le temps passe vite .. mais j'ai
développé cette application en Windev 7, ce problème est arrivé une fois
ou l'autre, ensuite migré en Windev 8 ... puis pendant 18 mois env. pas
de problèmes (en tout cas rien d'annoncé par le client), puis j'ai migré
en Windev 10 et depuis, ca arrive une fois toutes les 6 semaines environ.
Avatar
Yves T
mat a écrit :
Yves T wrote:
Testée ! elle fonctionne depuis 3 ans .. ! les ID sont tous uniques,
il n'y a jamais 3 enregistrements identiques avec le même ID, mais il
y a comme le dit mat une sorte de déplacement au hasard du curseur qui
écrase des données existantes. Jamais vu ca ! Mais comme ca fait des
heures/des jours que je cherche et je trouve pas à reproduire le
problème, c'est pas évident !
Ca pourrait être un problème d'index ?!




Salut Yves,
On ne peut jamais exclure à priori mais je ne crois pas. Nous avons une
gestion d'ajout et de modification d'enregistrements par 2 méthodes de
classes pour tous nos fichiers et le problème décrit avec
hFichierVersEcran n'existait que pour certains fichiers. Jamais trouvé
la raison, mais à l'époque il n'y avait plus rien qui m'étonnait avec
HF, donc je contournais tout simplement avec
SI monFichier.ID <> monIDActuel ALORS hLitRecherchePremier...
avant chaque référence au fichier, p.ex. hEcranVersFichier.
C'est facile à mettre en place et tester...
Salutations
Mat



et si je recréais mon fichier (.fic) à neuf ...et ensuite j'importe les
données, est-ce que ca pourrait pas régler le problème ?!
yves
1 2