VIII. Les fichiers évènements (*.evt) des applications de l'ERP Silog - U2

Dans l’ERP, il existe la possibilité d’exécuter des actions à des moments précis lors d’une navigation dans l’ERP. Cela s’effectue à l’aide de fichiers texte avec « evt » comme extension, et des préfixes définis.

Ou se trouvent ces fichiers ?
Les évènements sont obligatoirement stockés dans le dossier "PARAMETRAGES\EVENEMENTS\TOUTESBASES". Ils sont ensuite classés par code application (exemple : « ARTICLE5 » pour l’application « Articles ».
Leur nombre n’est pas limité, mais un nombre important peut occasionner des ralentissements.

Remarque : Pour les évènements du menu de l’ERP, il faut créer un dossier « SILOG ». s’il n’existe pas

image-20240110-112725.png

Comment nommer ces fichiers ?

Le nom du fichier est donc composé d’un préfixe, d’une partie descriptive puis de son extension.


Exemples :
TRCREATE-ControlesSaisie.evt.

Remarque : Si le préfixe déclenche plusieurs fichiers, l’ordonnancement suivra l’ordre alphabétique du nom de fichier.

 

Construction du nom du fichier :
Certains fichiers peuvent être construits suivant une règle suivante  :
SEQUENCE + MODE + UNITE

SEQUENCE

MODE (Sauf CHECK)

CLES (pour CREAT)

UNITE

Avec Décalage

Description

EXEMPLE

SEQUENCE

MODE (Sauf CHECK)

CLES (pour CREAT)

UNITE

Avec Décalage

Description

EXEMPLE

AVANT

LECT

CREAT

MODIF

SUPPR

ANNUL

 

E OU C

Entête ou Corps

“_”

“-” + Description Libre

AVANTLECTE-XXX.evt

AVANTLECTC-XXX.evt

TM

CREAT

MODIF

SUPPR

CLES

E OU C

Entête ou Corps

“_”

“-” + Description Libre

TMCREATCLESE-XXX.evt

TMCREATCLESC-XXX.evt

TR

CREAT

MODIF

SUPPR

 

E OU C

Entête ou Corps

“_”

“-” + Description Libre

TRMODIFE-XXX.evt

TRMODIFC-XXX.evt

APRES

LECT

CREAT

MODIF

SUPPR

ANNUL

 

E OU C

Entête ou Corps

“_”

“-” + Description Libre

APRESSUPPRE-XXX.evt

APRESSUPPRC-XXX.evt

CHECK

 

 

E OU C

Entête ou Corps

 

“-” + Description Libre

CHECKE-XXX.evt

CHECKC-XXX.evt

Les séquences :

  • AVANT : se déclenche avant le lancement du mode, pour LECT c’est avant la recherche des informations, pour les autres, c’est au clic sur le bouton correspondant (création, modification, suppression ou annulation).

  • TM : se déclenche après le TR. et le traitement facultativement lancé automatiquement suite à une validation. Exemple : avant la liste des fournisseurs suite à la validation d’une création d’un article de nature « Acheté ».

Exemple : TMCREATE-XXX.evt

Remarque : on ne peut plus stopper la validation en générant une erreur (g_err%=1).

  • TR : se déclenche après le traitement potentiel lancé automatiquement suite à une validation. Exemple : avant la liste des fournisseurs suite à la validation d’une création d’un article de nature « Acheté ».

Exemple : TRCREATE_XXX.evt

  • APRES : se déclenche après la validation/lecture.

  • CHECK : se déclenche après tabulation d’une zone de saisie

Exemple : Dans l’application “Clients”, le contenu du fichier ci-dessous teste la valeur du nom du client, pour interdire qu’il soit vide.

S’il est blanchi, alors il reprend sa valeur d’avant, c’est ce que contient la variable m_CLI.NomClient.

si la valeur d’avant est vide, alors la variable g_err% est alimentée avec la valeur 1 pour interdire la validation.

image-20240111-144946.png

 

Les modes :

  • LECT : Lecture

  • CREAT : Création

  • MODIF : Modification

  • SUPPR : Suppression

  • ANNUL : Annulation


Les unités :

  • E : En-tête

  • C : Corps

Avec décalage

En ajoutant un « _ » à la fin du préfixe, on obtient un évènement qui se déclenche légèrement plus tard.

Les autres évènements

  • FIRSTPOINT : se déclenche à l’ouverture de l’application

  • LASTPOINT : se déclenche à la fermeture de l’application

  • DEBUTCORPS : se déclenche au passage dans le corps

  • FINCORPS : se déclenche au passage en en-tête

  • CANLOADAPPLICATION : pour bloquer le chargement d'une application. Il faut utiliser la variable "g_err%" pour indiquer à l'application si elle peut se charger ou non. Les variables g_mess1$ et g_mess2$ sont utilisées pour afficher un message.

Exemple de contenu du fichier :

Au chargement on obtient le message suivant :

  • CANQUITAPPLICATION : pour interdire de quitter une application. Il faut utiliser la variable "g_err%" pour indiquer à l'application si elle peut se fermer ou non. Les variables g_mess1$ et g_mess2$ sont utilisés pour afficher un message.

En quittant l’application on obtient le message suivant :

  • CanAlwaysCreate_E, CanAlwaysDuplicate_E, CanAlwaysModify_E et CanAlwaysDelete_E, CanAlwaysCreate_C, CanAlwaysDuplicate_C, CanAlwaysModify_C et CanAlwaysDelete_C : Ces évènements permettent respectivement de donner la possibilité de paramétrer ou non l'affichage des boutons "Création", "Duplication", "Modification" et "Suppression" pour les unités "Entête" (..._E) et/ou "Corps" (..._C). Ces évènements sont exécutés à l'ouverture de l'application concernée pour interdire l'action en fonction de conditions spécifiques ou non..
    Il faut utiliser la variable globale "g_err%" et lui assigner la valeur 1 ou 0 :

    • 1 : Action interdite.

    • 0 : Action autorisée.

Par exemple, dans le fichier "CanAlwaysCreate_E.evt" de l'application client, le fait d'écrire "g_err%=1" supprime le bouton "Création" et "Duplication" (car c'est une création) de l'application client lors de l'ouverture de l'application.

 

Donnez votre avis sur la Base de connaissance Silog ici ou contactez-nous directement par mail sur confluence@silog.fr