Questo entry point viene chiamato durante la generazione delle videate delle transazioni di budget.
Diventa possibile aggiungere in specifico un campo nella videata modello BUD.
C'è una transazione in corso su [F:AMK2], [F:AMZ2], [F:AMA2] & [F:AMP2]. A priori però sarà interessante la sola tabella AMSKZON [AMZ2].
Non c'è file traccia aperto.
Si scrive in [F:AMZ2] a partire dalla videata modello [F:AMZ].
La variabile MASKREF designa la videata di riferimento, all'occorrenza BUD.
La variabile MASKDES designa la videata di destinazione WMBUD+Codice transazione.
La tabella TABBUDTYP [F:TBU] è aperta, è allora possibile in particolare identificare la categoria di budget (Periodo/Conto/Sezione) utilizzando [F:TBU]BUCAT.
Quando si aggiunge un nuovo campo nella videata BUD, la definizione della posizione Pos (n° di colonna nel riquadro) viene ora presa in considerazione. In compenso, questo nuovo campo verrà necessariamente presentato prima dei campi calcolati definiti nel riquadro della transazione di budget.
Si identifica il nome del nuovo campo desiderato con NOMZ=Nome del nuovo campo e si scrive in AMKZON [AMZ2] affinché sia presente nella videata generata.
La variabile GOK è gestita al ritorno dall'entry point in SUBTBU.src, con un Rollback su GOK=0 e un Rollback+Roll se GOK<1.
Esempio di programma specifico collegato all'entry point per un campo NEWZONE aggiunto nella videata BUD che si vuole far apparire per i budget di categoria 'Conto':
$ACTION
Case ACTION
When "TBUZONSPE" : Gosub TBUZONSPE
When Default
Endcase
Return
$TBUZONSPE
If [F:TBU]BUDCAT = 3 : #Categoria di budget Conto
For NOMZ="NEWZONE"
Read [AMZ]CODE=MASKREF;NOMZ
If !fstat
NUMCOL +=1
[F:AMZ2] = [F:AMZ]
[F:AMZ2]NUMLIG = NUMCOL
[F:AMZ2]CODMSK = MASKDES
Write [AMZ2]
If fstat
GOK=0 : Call FSTA("AMZ2") From GLOCK : Break
Endif
Call COPIE_ACTION(MASKREF,MASKDES,[F:AMZ]CODZON,[F:AMZ2]CODZON,0)
If GOK<1 : break : Endif
Endif
Next
Endif
Return