Page 1 sur 1

Champs multilingues

MessagePublié: 03 Juil 2003 à 08:53
par aer
Je voudrais faire des champs qui s'affichent dans la langue de l'utilisateur. Jusque là pas de problème, je fais un champ calculé: @If(@LanguagePreference([Region]) = "fr";"Chef de projet : ";"Project manager :")Maintenant je voudrais que la base puisse plus tard accepter d'autres langues sans avoir à recoder tous les champs. Donc je pensse passer par une vue qui contient toutes les traductions d'un champ et faire des dblookup avec une clé pour chaque champ.Mon probleme c'est que je ne vois pas de solution pour pouvoir ajouter des langues à mon appli sans retoucher le code des champs.Une autre question: comment faire pour connaitre tous les codes des regions?[%sig%]

Re: Champs multilingues

MessagePublié: 03 Juil 2003 à 09:09
par asx9
je suis un peu dans le même cas que toi car j'ai des champs trilingues français anglais italien et je dois faire en sorte qu'on puisse mettre allemand et espagnol après mon départ (car je suis en stage).voici ce que j'ai fais:j'ai un champ "compo box" que j'ai appelé franglais:Français | FEnglish | AItalien | Iet dans mon manuel de maintenance j'explique qu'il faudra ajouter:Espano l EDeutch | Det dans les champs multilingue j'ai le code: (pour chp3)FIELD chp3:=chp3;@If(franglais="F";@SetField("chp3";"DATE"); franglais="A"; @SetField("chp3";"DATE"); franglais="I"; @SetField("chp3";"DATA"); franglais="E"; @SetField("chp3";"esp"); franglais="D"; @SetField("chp3";"all");"")esp et all seront à remplacer quand la traduction sera prète.je ne sais pas si j'ai répondu à ta question, mais en faisant ça j'ai gagné du temps quand j'ai eu à mettre l'italien!!!!

Re: Champs multilingues

MessagePublié: 03 Juil 2003 à 09:13
par Raziel
Salut aer,toujours sur ton appli multilangue... :-))avant de répondre à ta question, une petite interrogation : tu as codé tes champs de cette manière@If(@LanguagePreference([Region]) = "fr";"Chef de projet : ";"Project manager :")Si oui, alors il me semble difficile de gérer les langues en dynamique.Voici comment je m'y suis pris pour contourner ce pb.J'ai un doc de configuration principal qui contient toute les langues accepé par l'appli. Je rensigne ces langues ds 1 champ textemultival de la minière suivante :Français|FRAnglais|ENEspagnol|ES(pour chaque ntrée je lui donne comme pseudo le code région @LanguagePreference([Region]) )Ensuite, pour chaque libellé, j'ai un document de paramétrage (ce que tu as fais semble t'il). Dans ce document, j'ai la traduction de ce libellé pour chaque langue paramétré dans mon appli. Je suis parti du principe que m'on appli pouvait fonctionné avec 15 langues au max.Mon masque ce présente de cette manière :Un champ Liste de dialogue qui liste toutes les langues paramétrés. A côté de ce champ, un champ texte devant contenir la traduction.Exemple :Français -> Chef de projetAnglais -> Project managerChaqun des champs texte contenant la traduction a un nom répondant à un formalismeFRLibelleANLibelleESLibelleGrace à ce formalisme, en fonction de la langue du client ou du browser, je suis capable de retrouvé le bon champ à affiché : dans mon @dblookup, je pense en paramètre du champ à récupéré un truc du genre Langue+"Libelle" (Langue contenant le code région récupéré par)

Re: Champs multilingues

MessagePublié: 03 Juil 2003 à 09:15
par Raziel
oups, return malheureux...Grace à ce formalisme, en fonction de la langue du client ou du browser, je suis capable de retrouvé le bon champ à affiché : dans mon @dblookup, je pense en paramètre du champ à récupéré un truc du genre Langue+"Libelle" (Langue contenant le code région récupéré par @LanguagePreference([Region]))

Re: Champs multilingues

MessagePublié: 03 Juil 2003 à 09:19
par aer
Merci pour ton aide.En fait je pense utiliser une vue avec en premiere colonne un code et ensuite dans les colonnes qui suivent les traductions (colonne1: français, colonnne2 : anglais...). Les noms des colonnes sont le code de la region (fr,...) et dans chaque champ calculé je fais :@DbLookup("";@DbName;"v_traduction";code_du_champ;@if((@LanguagePreference([Region]) = fr;1.........));Mais je ne trouve toujours pas ce que retourne par exmple @LanguagePreference([Region]) pour l'espagne ou le portugal.[%sig%]

Re: Champs multilingues

MessagePublié: 03 Juil 2003 à 09:23
par Raziel
Pesonnelement, je me suis basé sur ce que me donne IE. Tu vas dans le paramétrage de IE/langues, et tu as, pour chaque langue, le code régionPour la France:FR, Angleterre:AN,Espagne:ES