CAH debugVerrou-fr : Différence entre versions
(7 révisions intermédiaires par un utilisateur sont masquées) | |||
Ligne 4 : | Ligne 4 : | ||
Si ce n'est pas le cas la méthode va inscrire dans le log (LockingRecordLog.txt) qui sera créer dans le dossier des logs de la base l'heure et le problème rencontré. | Si ce n'est pas le cas la méthode va inscrire dans le log (LockingRecordLog.txt) qui sera créer dans le dossier des logs de la base l'heure et le problème rencontré. | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | Les commandes suivies sont les suivantes : | |
+ | # Appliquer à sélection | ||
+ | # Stocker enregistrement | ||
+ | # Supprimer enregistrement | ||
+ | # Supprimer sélection | ||
+ | # Tableau vers sélection | ||
+ | # JSON vers sélection | ||
+ | # Vider table | ||
+ | Pour utiliser insertion ou le retrait, vous devez avoir effectué l'analyse de la structure au préalable. | ||
+ | |||
+ | Si vous demandez au composant d'insérer a nouveau le code, il n'ajoutera bien sur le code que pour les nouveaux appels aux commandes.Dans le cas ou vous avez beaucoup modifié votre code, vous pouvez demander une nouvelle insertion, cela mettra les N° de ligne à jour. | ||
+ | |||
+ | Le retrait retire TOUS les appels à la méthode de contôle. | ||
+ | |||
+ | Exemple de log : | ||
+ | 2018-12-15T13:09:05Z : Création du log | ||
+ | 2018-12-15T13:09:05Z : [Société] LockedSet (3 records) - Method : Test_Lock (Line 11) | ||
+ | 2018-12-15T13:09:05Z : [Société] Record Lock - Method : Test_Lock (Line 16) | ||
+ | 2018-12-15T13:09:05Z : [Société] Record Lock - Method : Test_Lock (Line 16) | ||
+ | 2018-12-15T13:09:05Z : [Société] Record Lock - Method : Test_Lock (Line 16) | ||
+ | |||
+ | '''Le code avant les insertions de contrôle''' | ||
+ | TOUT SÉLECTIONNER([Société]) | ||
+ | |||
+ | APPLIQUER À SÉLECTION([Société];[Société]Nom:=[Société]Nom) | ||
+ | |||
+ | DÉBUT SELECTION([Société]) | ||
+ | Tant que (Non(Fin de sélection([Société]))) | ||
+ | [Société]Nom:=[Société]Nom | ||
+ | |||
+ | STOCKER ENREGISTREMENT([Société]) | ||
+ | ENREGISTREMENT SUIVANT([Société]) | ||
+ | Fin tant que | ||
− | Le code après les insertions de contrôle | + | '''Le code après les insertions de contrôle''' |
TOUT SÉLECTIONNER([Société]) | TOUT SÉLECTIONNER([Société]) | ||
APPLIQUER À SÉLECTION([Société];[Société]Nom:=[Société]Nom) | APPLIQUER À SÉLECTION([Société];[Société]Nom:=[Société]Nom) | ||
− | + | ANACAH_DebugLockingRecord ("Selection";"Test_Lock (Line 11)";->[Société]) // insert by CAH 2018-12-04 | |
DÉBUT SELECTION([Société]) | DÉBUT SELECTION([Société]) | ||
Ligne 25 : | Ligne 51 : | ||
STOCKER ENREGISTREMENT([Société]) | STOCKER ENREGISTREMENT([Société]) | ||
− | + | ANACAH_DebugLockingRecord ("record";"Test_Lock (Line 16)";->[Société]) // insert by CAH 2018-12-04 | |
ENREGISTREMENT SUIVANT([Société]) | ENREGISTREMENT SUIVANT([Société]) | ||
Fin tant que | Fin tant que | ||
Ligne 31 : | Ligne 57 : | ||
le CAH vous permet bien sur de retirer tout ce code de contrôle. | le CAH vous permet bien sur de retirer tout ce code de contrôle. | ||
− | Il vous permet également d'obtenir | + | Il vous permet également d'obtenir des statistiques sur les enregistrements dans votre base. |
Version actuelle en date du 20 décembre 2018 à 19:16
L'objectif de cet outil est de vous permettre de déterminé les verrouillages d’enregistrements mal gérés dans une base 4D.
Pour ce faire le CAH va installer avant ou après l'appel de commandes enregistrant des données une méthode qui va contrôler si l'enregistrement c'est bien déroulé. Si ce n'est pas le cas la méthode va inscrire dans le log (LockingRecordLog.txt) qui sera créer dans le dossier des logs de la base l'heure et le problème rencontré.
Les commandes suivies sont les suivantes :
- Appliquer à sélection
- Stocker enregistrement
- Supprimer enregistrement
- Supprimer sélection
- Tableau vers sélection
- JSON vers sélection
- Vider table
Pour utiliser insertion ou le retrait, vous devez avoir effectué l'analyse de la structure au préalable.
Si vous demandez au composant d'insérer a nouveau le code, il n'ajoutera bien sur le code que pour les nouveaux appels aux commandes.Dans le cas ou vous avez beaucoup modifié votre code, vous pouvez demander une nouvelle insertion, cela mettra les N° de ligne à jour.
Le retrait retire TOUS les appels à la méthode de contôle.
Exemple de log :
2018-12-15T13:09:05Z : Création du log 2018-12-15T13:09:05Z : [Société] LockedSet (3 records) - Method : Test_Lock (Line 11) 2018-12-15T13:09:05Z : [Société] Record Lock - Method : Test_Lock (Line 16) 2018-12-15T13:09:05Z : [Société] Record Lock - Method : Test_Lock (Line 16) 2018-12-15T13:09:05Z : [Société] Record Lock - Method : Test_Lock (Line 16)
Le code avant les insertions de contrôle
TOUT SÉLECTIONNER([Société]) APPLIQUER À SÉLECTION([Société];[Société]Nom:=[Société]Nom) DÉBUT SELECTION([Société]) Tant que (Non(Fin de sélection([Société]))) [Société]Nom:=[Société]Nom STOCKER ENREGISTREMENT([Société]) ENREGISTREMENT SUIVANT([Société]) Fin tant que
Le code après les insertions de contrôle
TOUT SÉLECTIONNER([Société]) APPLIQUER À SÉLECTION([Société];[Société]Nom:=[Société]Nom) ANACAH_DebugLockingRecord ("Selection";"Test_Lock (Line 11)";->[Société]) // insert by CAH 2018-12-04 DÉBUT SELECTION([Société]) Tant que (Non(Fin de sélection([Société]))) [Société]Nom:=[Société]Nom STOCKER ENREGISTREMENT([Société]) ANACAH_DebugLockingRecord ("record";"Test_Lock (Line 16)";->[Société]) // insert by CAH 2018-12-04 ENREGISTREMENT SUIVANT([Société]) Fin tant que
le CAH vous permet bien sur de retirer tout ce code de contrôle.
Il vous permet également d'obtenir des statistiques sur les enregistrements dans votre base.