APRES_CHOI

Description

Cette action est appelée avant l'exécution d'une action ( bouton, menu, liste gauche,... ). Un statut définissant l'action est envoyé par le superviseur dans lavariable REPONSE.

Type d'OBJet

Simple, Tableau, Combiné

Transaction

Non

Utilisation

Il est possible de court-circuiter le traitement normal de votre bouton, menu : Cetteaction permet de lancer son propre traitement à la place du traitement modèle puis deremettre REPONSE à 0.

Les différentes valeurs possibles pour la variable REPONSE sont données par desvariables globales, dont le nom est donné dans le tableau ci-dessous :

Statut

Bouton correspondant

GSTAENREnregistrement
GSTACRECréation
GSTAANUAnnulation
GSTAFINAbandon
GSTACHGChangement de code
GSTASUISuivant
GSTAPREPrécédent
GSTAFIRPremier enregistrement
GSTALASDernier enregistrement
GSTALFTSimple click dans liste gauche
GSTALF2Double click dans liste gauche
GSTALF3Simple click dans liste hiérarchisée
GSTALF4Double click dans liste hiérarchisée
GSTARETEntrée
GSTANEWFichier / nouveau
GSTASELFichier / sélection
GSTACOMFichier / commentaire
GSTAEDIImpression
GSTALISListe
GSTAJOIPièce jointes
GSTAHLPAide
GSTAESCAbandon (par fermeture de la fenêtre)
GSTAOKOK
GSTAPCKSélection picking dans GEODE
GSTADATPropriété
>=GSTABOUBouton spécial défini par un chiffre (lescontrôles sont effectués sur les champs de la page au delà du champ en cours de saisie,et il y a blocage si un contrôle n'est pas satisfait).
>=GSTABOU2Bouton spécial défini par une lettre minuscule(la page n'est pas contrôlée avant le lancement de la fonction).
Exemple : SUBADI   gestion des tables diverses

La gestion des tables diverses est une gestion tableau. Les boutons magnéto ne sontdonc pas pris en charge par ce type de gestion. On a donc programmer des traitementsparticuliers pour ces boutons magnéto pour permettre à l'utilisateur d'afficher la tablesuivante, précédente, la première ou dernière table.

$APRES_CHOI
Case REPONSE
When GSTASUI : Gosub SUIVANT : REPONSE = 0
When GSTAPRE : Gosub PRECEDENT : REPONSE = 0
When GSTAFIR : Gosub PREMIER : REPONSE = 0
When GSTALAS : Gosub DERNIER : REPONSE = 0
Endcase
Return

$SUIVANT
If VERROU : Gosub DEVERROU From GOBJET : Endif
   Read [ADV]CODE > [M]NUMTAB
   If fstat>2
      GMESSAGE = mess(11,100,1) : GERR = 1 : Return
   Else
      [M]NUMTAB = [F:ADV]NUMTAB
      CLE2 = num$([M]NUMTAB
   Gosub RELIT From GOBJSUB
   Endif
Endif
Return