Gestione campi traducibili
La gestione dei campi traducibili (tipo dato AX1, AX2, AX3, AXX) va riprodotta manualmente quando definiti su una tabella secondaria,
cioè su una tabella che non sia il riferimento principale di un oggetto.
I testi traducibili definiti in una tabella (funzione GESATB) non saranno fisicamente memorizzati in quella tabella, ma nella tabella ATEXTRA.
Per ogni campo di testo traducibile (es. YDESAXX):
- per convenzione termina in AXX
- in genere gli si abbina un campo di sicurezza (es. YDES; in ITMMASTER per es. ci sono ITMDES1-DES1AXX, ITMDES2-DES2AXX…)
- nel tipo dato vanno inseriti i parametri per leggere/scrivere sulla ATEXTRA ovvero:
- TABLE1: nome della tabella contenente il campo specificato tra apici (per esempio “YTABELLA”)
- ZONE: nome del campo di testo traducibile specificato tra apici (per esempio “YDESAXX”)
- CLECUR1: un valore che sia chiave per legare la traduzione alla riga dati corretta (per esempio ITMREF, senza apici poichè è il contenuto del campo ITMREF, non la scritta “ITMREF”)
- Gli stessi parametri vanno impostati anche in videata, facendo attenzione a fare riferimento ai campi della videata corretti.
- Nel sorgente che gestisce l’oggetto vanno inserite queste parti di codice:
$INIMOD Gosub MAJ_AXX_YITMINF Return $INICRE Gosub MAJ_AXX_YITMINF Return $MAJ_AXX_YITMINF # Creazione/modifica di ATEXTRA; la chiave è recuperata dalla tabella ([F]) Call MAJTEXTRA ([M:YI1]YDESAXX,"YTABELLA","YDESAXX",[F:YII]ITMREF,"") From ATEXTRA # Salvataggio di YDES per sicurezza (qualunque sia la lingua) [F:YII]YDES = [M:YI1]YDESAXX Return
Il quarto parametro della chiamata MAJTEXTRA può dover essere inserito,
dipende da come vengono impostati i parametri del campo traducibile.
In pratica rappresenta l’eventuale secondo campo chiave;
in tal caso la seconda chiave va impostata anche nei parametri del tipo dato.
Potrebbe servire anche inserire una parte di codice in LIENS:
$LIENS Gosub LIENS From TABLEAUX Call LECTEXTRA([M:YI1]YDESXXX,"YTABELLA","YDESXXX",[F:YII]ITMREF,"") From ATEXTRA Return