Bonjour à tous,
Je développe ma première application utilisant HyperFileSQL et je suis un peu désorienté pour faire des choses "simples".
En gros, j'ai un fichier qui contient plusieurs informations dont une rubrique qui est crypté. (Crypté à l'aide de la fonction Crypte de WinDev)
Pour ce faire, à l'ajout d'une ligne dans le fichier, je fais un crypte sur cette valeur.
Et pour afficher une table de ce fichier, je le lie à l'aide d'une requête à la table (car j'ai besoin d'info de plusieurs fichier) et dans le code d'affichage d'une ligne,
j'affecte a une colonne la valeur du fichier décrypter (à l'aide de Décrypte).
Jusque là pas de problème.
La table s'affiche correctement, je peux modifier mes valeurs directement dans la table et ça met à jour le fichier sans code ! (magique pour moi qui d'habitude fait tout avec les fonctions SQL* )
Mon seul problème est pour cette colonne crypté !
Il faut que quand je saisisse la valeur, il intercepte la sorti du champ et crypte la valeur avant la modification de la ligne du fichier...
Dans le code A chaque modification de COL_X :
Dans le code Sortie de COL_X :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 // Ca me permet de pas executer le code de l'affichage d'une ligne gbXModif = Vrai
Le problème, c'est que quand il exécute après la sortie de la colonne le code Affichage d'une ligne de TABLE_Bla, Ligne.X n'a pas la valeur enregistré, mais la valeur de COL_X, pourtant, en exécution pas à pas, je vois bien que Ligne.X est modifié et que HModifie à bien modifié l'enregistrement...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 Ligne.X = Crypte(COL_X, gsCrypte, crypteSécurisé) HModifie(Ligne) gbXModif = Faux
Bref, je sais plus comment arrivé à les fins...
Si je n'ai rien compris au mécanisme de liaison table <-> fichier, merci de m'expliquer
Merci de votre aide
Partager