At line 1 added 72 lines |
%%(display:none) |
{{{ |
WikiUp |
}}} |
/% |
[{TableOfContents }]\\ |
!!! Obiettivo\\ |
Costruire una richiesta parametri comandata da uno script di configurazione\\ |
\\ |
!!! Script di configurazione\\ |
Lo script di configurazione risiede nel source denominato SCP_A42 e possiede i seguenti tag:\\ |
\\ |
__DEF.INI__ |Indica il primo passo da eseguire\\ |
__DEF.PAS__ |Definisce la struttura del passo\\ |
__G.SET.INP__ |indica le proprietà dell'input panel di passo, deve essere posto subito sotto la definizione del passo.\\ |
__DEF.END__ |indica la funzione da lanciare dopo l'ultimo passo\\ |
\\ |
Uno script avrà quindi un tag DEF.INI per indicare da quale passo partire, uno o più tag DEF.PAS che definiscono i passi (Layout, Exit, Prossimo passo, autorizzazioni) e se necessario un tag DEF.END che indica la funzione da lanciare dopo l'ultimo passo. L'ultimo passo è quello per il quale non sia indicato il prossimo passo, oppure il cui prossimo passo sia sbiancato dalla exit.\\ |
\\ |
!!! EXIT\\ |
L'exit (per cui è disponibile il prototipo LOA42_ES01) viene richiamata se indicata nel passo con le seguenti funzioni:\\ |
\\ |
__ *LAY__|definisce la struttura di XML iniziale e di SETUP\\ |
__*CTR__|permette di eseguire controlli\\ |
__*EXE__|permette di eseguire passi finali\\ |
\\ |
!! Routine disponibili\\ |
Durante la progettazione della Exit abbiamo a disposizione le seguenti routine:\\ |
\\ |
__£A42_INIIZ__|Inserisce la entry plist, definisce la comunicazione con il costruttore. Richiamarla nella £INIZI\\ |
__£A42_IMP__|Richiamarla all'inizio della exiT, rende disponibili le variabili del costruttore\\ |
__£A42_FIN__|Richiamarla alla fine della exit, informa il costruttore della variazioni apportate\\ |
__£A42_FLD__|Utilizzarla per recuperare il contenuto di una variabile, riceve il campo £A42E_CD e ritorna la struttura £A42FLD\\ |
__£A42_VAR__|Utilizzarla per cambiare il valore di una variabile esistente\\ |
__£A42_ADD__|Utilizzarla per creare e/o modificare la struttura di un campo, comprende la variazione di valore\\ |
\\ |
!! Funzione *LAY\\ |
Tramite questa funzione è possibile apportare variazioni al layout prima che venga emesso l'input panel\\ |
__Esempio di lettura variabile__\\ |
C EVAL £A42E_CD='LP'\\ |
C EXSR £A42_FLD\\ |
C EVAL R£NRDM=£A42F_OV\\ |
\\ |
__Esempio di scrittura variabile__\\ |
C EVAL £A42E_CD='MG'\\ |
C EXSR £A42_FLD\\ |
C EVAL £A42F_OV=££MAGD\\ |
C EXSR £A42_ADD\\ |
\\ |
__Esempio di aggiunta nuovo campo dopo il campo di riferimento già presente__\\ |
C EVAL £A42F_CD='MGNEW'\\ |
C EVAL £A42F_CR='MG'\\ |
C EXSR £A42_ADD\\ |
\\ |
__Esempio di aggiunta nuovo campo dopo dopo ultimo campo del layout__\\ |
C EVAL £A42F_CD='MGNEW'\\ |
C EXSR £A42_ADD\\ |
\\ |
!! Funzione *CTR\\ |
Tramite questa funzione è possibile inserire controlli specifici sui campi del layout\\ |
__Esempio di Gestione dell'errore__\\ |
C EVAL £A42E_CD='MG'\\ |
C EXSR £A42_FLD\\ |
C EVAL £A42F_ET=TXT(01)\\ |
C EXSR £A42_ADD\\ |
\\ |
!! Funzione *EXE\\ |
Viene eseguita in assenza di errori e prima di procedere al passo sucessivo.\\ |
E' possibile cambiare il prossimo passo ed eseguire le procedure di fine passo più opportune\\ |
\\ |
!! Esempio\\ |
E' presente l'esempio LOA42_ES01 nel file sorgenti QSRCGEN.\\ |