Gestione delle traduzioni dei vari elementi di Sage X3
Orientarsi nel sistema di traduzioni di Sage X3 non è facile all’inizio,
soprattutto se le informazioni che ti vengono date sono frammentarie e confuse.
Provo qui a delineare la linea guida base per raccapezzarsi in questo sistema, senza la pretesa di essere esaustivo.
Le tre tabelle APLSTD, ATEXTE, ATEXTRA
Ci sono tre tabelle principale in cui vengono memorizzate le traduzioni dei vari testi presenti in Sage X3:
- APLSTD per i Menù locali (funzione TXT)
- ATEXTE per i testi identificati da un numero (tra cui i campi di tipo ATX presenti nelle tabelle)
- ATEXTRA per i testi traducibili; sono i campi in cui si può inserire una traduzione con il tasto destro del mouse nella V6
o con il tastino a destra del campo nella V7;
tra questi ci sono anche i campi di tipo AXX, AX1, AX2 e AX3 presenti nelle tabelle
(per esempio il campo descrizione DES1AXX della tabella degli articoli ITMMASTER)
Ci sono molte funzioni disponibili per inserire o modificare le varie traduzioni,
ma per non farsi venire mal di testa la prima cosa da fare
è avere bene in mente proprio l’elenco che abbiamo appena fatto.
Infatti in linea di massima sono tre i tipi di traduzione che possiamo fare,
e ve li ripeto, perché una volta chiarito questo tutto il resto fila liscio:
- tradurre un menu locale – messaggio
- tradurre un testo identificato da un numero
- tradurre un testo traducibile, cioè quei testi che possono essere tradotti dall’utente finale attraverso l’interfaccia del gestionale
La prima cosa da fare quindi è capire con che tipo di testo abbiamo a che fare.
Fatto questo diventerà immediato capire come andare a tradurlo.
Infatti useremo:
- la funzione ALOCTRAD per le traduzioni dei Menù locali: sono le voci salvate nella tabella APLSTD
- la funzione GESATR per tradurre i testi identicati da un numero: sono quelli contenuti nella tabella ATEXTE
- per i testi traducibili (contenuti nella tabella ATEXTRA) avremo due modi principale:
- trovare il punto in cui si può tradurre come utente finale
- o usare la funzione FUNTRAAXX (in tal caso bisogna conoscere la tabella a cui la voce da tradurre appartiene)
Ci sono molte altre funzioni disponibili accessorie,
tutte o quasi si trovano al menu Traduzione → Software.
Vediamone velocemente alcune suddivise per tipologia (o tabella di riferimento, che è lo stesso).
Funzioni disponibili per le traduzioni contenute nella tabella APLSTD (Menu locali – messaggi)
- Traduzione menù locali – funzione ALOCTRAD, appena citata sopra
Sull’utilizzo di questa funzione abbiamo già trattato nell’articolo “Messaggi traducibili e parametrizzabili” . - Testi-Aplstd non tradotti – funzione ATXNOTRANS: ricerca quali testi mancano di qualche traduzione,
permette anche di cercare solo tra quelli utilizzati nelle parametrizzazioni (ovviamente non può sapere se sono usati da programma) - Ricerca testo – funzione ARECTXTTRD: per ricercare i testi, impostanto il flag “Messaggi”
Funzioni disponibili per le traduzioni contenute nella tabella ATEXTE (testi identificati da un numero)
- Traduzione testi – funzione GESATR: per tradurre i testi identificati da un numero
(per esempio il 36854 → “Caricamento patch”) - Testi da tradurre – funzione ATXTTRAD: come il precedente ma permette di ricercare i testi con modalità diverse;
- per esempio si può filtrare il numero testo con “>104000”,
- si può seguire il punto di domanda (?) per capire dove vengono usati i testi.
- Ricerca testo – funzione ARECTXTTRD: è la stessa vista per i menù per ricercare i testi, in questo caso va impostato il flag “Testi”
- Traduzione videata – funzione GESAMD:
facilita la traduzione delle descrizioni dei campi di una videata - Traduzione tabelle – funzione GESATT:
traduzione delle descrizioni dei campi delle tabelle;
qui bisogna porre attenzione: affinchè le traduzioni vengano generate (vedi dopo “Generazione traduzioni”)
bisogna attivare il flag “generazione testi traducibili”
presente nel riquadro “Gestione tabella” della scheda “Generale” della corrispondente tabella.
Funzioni disponibili per le traduzioni contenute nella tabella ATEXTRA (testi traducibili dall’utente)
- Traduzione descrizioni – funzione FUNTRATXI
La stessa funzione si trova anche sotto il menu parametrizzazione alla voce Parametrizzazione → Traduzione testi (funzione FUNTRAAXX).
Esistono anche le funzioni FUNTRAAXP (Acquisti) e FUNTRAAXS (Vendite): tutte queste 4 voci di menu richiamano in realtà sempre la stessa azione.
Validazione dopo la traduzione
Nel caso la traduzione coinvolga un elemento strutturale contenuto in una finestra, bisogna ricordarsi di validare gli oggetti coinvolti dalla modifica:
- il menu, nel caso si sia tradotto il testo di un menu: la validazione si esegue con la funzione VALMENU
- la videata nel caso venga tradotto qualche suo testo
- la finestra nel caso l’elemento tradotto sia legato direttamente ad essa (così facendo vengono validate anche tutte le videate contenute)
- se ci sono transazioni va validata anche ogni singola transazione: per esempio, nel caso si modificano dei testi di una transazione dei listini, andare in Parametrizzazione → Vendite → Listini → Parametrizzazione.
- per validare tutte le transazioni o un sottoinsieme c’è la possibilità di usare anche la funzione GENMSKTR
- Se ci sono troppi punti in cui sono state fatte traduzioni, e sapete bene cosa state facendo(!),
o siete in un dossier di test, si può rivalidare il dossier tramite la funzione VALDICO,
in cui va spuntato in genere “Validazione Finestre” e “Finestre generate” per coinvolgere tutte le finestre generate dalle transazioni.
Da questa funzione si può rivalidare anche solo il singolo codice attività.
Generazione traduzioni per Crystal Report
Per dirla in modo un po’ sbrigativo, Crystal Report recupera le traduzioni da alcuni file.
Affinché venga creato il file corrispondente alla traduzione che abbiamo fatto, è necessario “generare” la traduzione.
Questa generazione dei testi, che crea i file contenenti tutte le traduzioni nelle varie lingue in cui sono state inserite,
serve solo per le stampe di Crystal Report.
Dopo aver modificato una traduzione bisogna generarla; in base al tipo di traduzione va usata una delle seguenti funzioni:
- GENMENULOC – Aggiornamento menù locali: genera le traduzioni dei menù locali
- GENTXTTRA – Aggiornamento testi traducibili (si trova nel menu del modulo Sviluppo): genera i file con i testi presenti in ATEXTRA
Questa generazione non dipende dalla validazione di alcunché.
Per Crystal Report è sufficiente questa generazione per poter usare le traduzioni nelle stampe.
Abbiamo già visto come si fa a recuperare le traduzioni da Crystal report nell’articolo Traduzioni per Crystal Report.
Recupero traduzioni da programma
Ovviamente anche recuperare le traduzioni da codice adonix avrà metodi diversi in base al tipo di traduzione.
Abbiamo già visto come fare nei vari casi nell’articolo Come recuperare le traduzioni da codice in Sage X3.
Abbiamo anche già affrontato come ottenere delle traduzioni di messaggi con dei segnaposto dove andare a sostituire dei valori a runtime:
per approfondire vai al l’articolo dove parliamo dei Messaggi traducibili e parametrizzabili.
Riassunto
Quindi:
- i tipi di testi traducibili sono tre
- Menu locali – messaggi
- testi identificati con un numero
- testi detti proprio “testi traducibili”
- le traduzioni sono contenute nelle tre corrispondenti tabelle
- APLSTD
- ATEXTE
- ATEXTRA
- ci sono tre funzioni corrispondenti sufficienti per praticamente tutte le traduzioni:
- ALOCTRAD
- GESATR
- FUNTRAAXX
- Dopo l’inserimento delle traduzioni
- bisogna effettuare la validazione opportuna se i testi sono nell’interfaccia
- bisogna effettuare la generazione dei testi se vengono usati nelle stampe di Crystal Report
Ci sono ancora tante cose da dire sulle traduzioni, ma per adesso ci fermiamo qui.
Alla prossima!