APRES_CHOI

Descrizione

Questa azione è chiamata prima dell'esecuzione di un'azione (bottone, menù, lista di selezione, ... ). Uno stato che definisce l'azione viene inviato dal supervisore nella variabile REPONSE.

Tipo di oggetto

Semplice, Riquadro, Combinato

Transazione

No

Utilizzo

E' possibile bypassare il programma normale del proprio bottone o menù: Questa azione permette di lanciare il proprio programma al posto del programma modello per poi rimettere REPONSE a 0.

I diversi valori possibili per la variabile REPONSE sono forniti da variabili globali il cui nome è dato nel riquadro qui in basso:

Stato

Bottone corrispondente

GSTAENRRegistra
GSTACRECrea
GSTAANUAnnulla
GSTAFINEsci
GSTACHGCambio codice
GSTASUISuccessivo
GSTAPREPrecedente
GSTAFIRPrimo record
GSTALASUltimo record
GSTALFTSemplice clic nella lista di selezione
GSTALF2Doppio clic nella lista di selezione
GSTALF3Semplice clic nella lista gerarchizzata
GSTALF4Doppio clic nella lista gerarchizzata
GSTARETEntrata
GSTANEWFile / nuovo
GSTASELFile / selezione
GSTACOMFile / commento
GSTAEDIStampa
GSTALISElenco
GSTAJOIDocumento allegato
GSTAHLPHelp
GSTAESCAnnulla (con chiusura della finestra)
GSTAOKOK
GSTAPCKSelezione picking in GEODE
GSTADATProprietà
>=GSTABOUBottone speciale definito da una cifra (i controlli sono effettuati sui campi della pagina oltre il campo in fase di inserimento e si verifica un blocco se un controllo non è soddisfacente).
>=GSTABOU2Bottone speciale definito da una lettera minuscola (la pagina non è controllata prima del lancio della funzione).
Esempio: SUBADI   gestione delle tabelle diverse

La gestione delle tabelle diverse è una gestione riquadro. I bottoni di spostamento quindi non sono presi in carico da questo tipo di gestione. Occorre allora programmare dei programmi particolari per questi bottoni di spostamento per permettere all'utente di visualizzare la tabella successiva, precedente, la prima o ultima.

$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