Ciao a tutti,
ho la seguente problematica e non ho idea su come poter fare a risolverla:

Un software che stò realizzando sarà multi lingua. Per fare questo, oltre alle lable anche i campi di lookup (ad esempio il sesso sull'anagrafica clienti devono essere tali "MASCHIO"; "MALE"; ecc...) sono multi lingua. PEr fare questo ho memorizzato le traduzioni su una tabella apposita con struttura tipo questa

codice:
tabella: anag_sex
Id
desc_it
desc_en
desc_fr
Sulla tabella anagrafica vado a memorizzare il campo ID

La problematica stà sulla query per estrarre i dati. Per il momento ho usato questa soluzione

codice:
SELECT
  nome,
  case LANGUAGE:
    when 'IT' then anag_sex.desc_it
    when 'EN' then anag_sex.desc_en
    when 'FR' then anag_sex.desc_fr
  end as sesso;
FROM 
  anag_cli
  INNER JOIN anag_sex ON anag_cli.id_sex=anag_sex.id
Dato però che i campi di lookup sono parecchi ho la problematica che se un domani si voglia aggiungere una lingua devo modificare tutte le query a mano.

Pensavo, se la cosa potesse essere risolta con una stored procedure o un function in cui gli passo come parametro la lingua e la parte inziale del campo (ad. esempio anag_sex.desc_) e lui mi restituisce il campo (non il valore).

Qulacuno mi sa dire se è possibile e come ?

Grazie a tutti
Alessandro