Numeratore
Da menu Parametrizzazione → Parametri generali → Contatori → Strutture (da F7 GESANM) si possono creare e modificare i contatori.
Se a livello di definizione c'è la società, tale campo sarà poi obbligatorio inserirlo tra i componenti (vedi YSOH come esempio).
Il tipo di sequenza in genere è "Normale", il riquadro "Reset" serve per indicare quando il contatore riparte da 0; il "Reset" nel riquadro "Diversi" serve per indicare se il contatore va resettato in caso di reset del dossier.
Il complemento è un pezzo del contatore che in genere viene associato da programma.
Esempio di programmazione per la generazione di un codice da numeratore:
$INICRE # Generazione codice dell'ordine Local Integer YSTAT # |Contat.| Sito | Data |Complemento | Cod.generato | Errore Call NUMERO("YO0",[M:YO01]YFCY,[M:YO01]YORDDAT,"" ,[M:YO00]YORDNUM ,YSTAT) From SUBANM If GOK<0 Return Elsif GOK<1 | YSTAT<>0 GOK=0 : GERR=1 : GMESSAGE="YO0"-mess(60,199,1) Return Endif [F:YH0]YORDNUM = [M:YO00]YORDNUM Affzo [M:YO00]YORDNUM Return
E' sconsigliato andare a modificare da programma il comportamento di contatori predefiniti di Sage; in caso di import l'eventuale chiave importata inserirla in un campo secondario.
C'è un entry point NUMERO del programma SUBANM che permette di intervenire (per esempio per modificare il complemento) in base alle necessità. Utile anche in fase di debug. Il programma di questo entry point sarà nella forma tipo
#################################################################### $ACTION Case ACTION When "NUMERO" Gosub NUMERO When Default Endcase Return #################################################################### $NUMERO ... Return ####################################################################