Posible solución:
Define un archivo de constantes (.h) donde cada palabra a traducir tenga una constante
* que las constantes palabras se asocian a un número para acceder luego en un array
#DEFINE UNAPALABRA 1
#DEFINE OTRAPALABRA 2
...
#DEFINE N_PALABRA 9999
#DEFINE CASTELLANO 1
#DEFINE INGLES 2
#DEFINE MALASPALABRAS 3
Luego en un txt, defines por línea, cada palabra y sus distintas traducciones
unapalabra,oneword,##$$&
otrapalabra,otherword,?=$$&
...
n_palabra,n_word,&&%$#
Al comienzo del programa
lcPalabras = FILETOSTR("palabras.txt") && o recuperas como CSV y luego al arreglo
PUBLIC ARRAY gaPalabras[2,2]
Pasas lcPalabras al array gaPalabras (alines y mline)
Luego, cuando quieres usar las palabras traducidas
liIdioma = CASTELLANO && o INGLES o lo que sea
cUna_Palabra = gaPalabras[UNAPALABRA, liIdioma)
cOtra_Palabra = gaPalabras[OTRAPALABRA, liIdioma)
y usas en tus reportes, interfaces, etc. cUna_Palabra.
De esa manera, cambias el subindice del idioma y tienes cambiado el idioma.
Las palabras pueden ser palabras, frases o equivalentes
Saludos: Miguel, La Pampa (RA)
Larga Vida y Prosperidad
Que la Fuerza los acompañe y no los deje sin palabras