begin process at 2010 07 29 21:11:24
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Foxpro

 > 

Divers

 > 

Débutant(e)

 > 

Evaluer une variable string contenant le nom d'une constante


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Evaluer une variable string contenant le nom d'une constante

jeudi 13 août 2009 à 19:04:26 | Evaluer une variable string contenant le nom d'une constante

louBF

Bonjour,
je débute avec Foxpro. Je développe une petite application qui génère une feuille excel. L'application doit être disponible en anglais et en français, j'ai mis les labels dans un fichier .h
Je voulais inclure un fichier def_FR.h ou def_EN.h selon une variable de langue mais VFP semble charger les deux.
J'ai donc créé un seul fichier def.h avec des labels FRLB_monlabel et ENLB_monlabel. J'ai fait une petite procédure qui avec en entrée LB_monlabel et la langue renvoie FRLB_monlabel ou ENLB_monlabel (selon la langue). Mon problème c'est que je n'arrive pas à utiliser la valeur de ma constante de cette façon.

J'explique tout ça parce que ma méthode n'est peut être pas très ingénieuse.
Merci pour vos réponses

vendredi 14 août 2009 à 16:13:44 | Re : Evaluer une variable string contenant le nom d'une constante

MichelAtoutFox

Membre Club

Bonjour,

à première vue ton approche est correcte (1 fichier h de localisation), c'est celle qui est d'ailleurs utilisée le plus souvent.

Les labels dont tu parles, ce sont des labels sur des forms? et leur caption est défini en plusieurs langues dans le fichier h?

Si tu veux qu'on t'aide, il fut nous donner des exemples précis. Donne-nous donc ici un exemple d'un label, ta procédure, la façon dont tu l'appelles.

Une 1ère piste de travail: tous les objets sont définis AVANT l'init de leur conteneur. Ce qui veut dire que quand tu arrives à l'init du form, tous les labels ont été créés, et que tu peux affecter à leurs propriétés les valeurs de ton choix. Et comme l'init du form est joué avant le show, tout celà est invisible pour l'utilisateur.

vendredi 14 août 2009 à 19:15:48 | Re : Evaluer une variable string contenant le nom d'une constante

louBF

Bonsoir,
merci de votre réponse je vais essayer d'être plus précise.

Dans mon fichier EDMDEF.h on trouve par exemple
#DEFINE FRLB_SAVINGS Epargne
#DEFINE ENLB_SAVINGS Savings

Dans mon programme GenerateExcelReport, je souhaite utiliser ces labels selon une constante REPORT_LANG (1 français 0 anglais)
J'ai créé une procédure LangLabel
PROCEDURE LangLabel(LabelToFind,LangToUse)
IF LangToUse = 1
RetVal = "FR"+ALLTRIM(LabelToFind)
ELSE
RetVal = "EN"+ALLTRIM(LabelToFind)
ENDIF
RETURN TRANSFORM(RetVal)
ENDPROC

que je voudrais utiliser comme suit:
oSheet.Cells(lnRow,lnColT).Value = ALLTRIM(LangLabel('LB_SAVINGS',[REPORT_LANG]))


J'espère que c'est assez précis comme ça. Encore une fois la méthode n'est peut être pas bonne, si il y a une façon de faire plus élégante, je suis preneuse ;)
D'avance merci
Alice

samedi 15 août 2009 à 15:26:44 | Re : Evaluer une variable string contenant le nom d'une constante

MichelAtoutFox

Membre Club

Bonjour,

je pense que c'est un simple problème de visibilité (de portée des constantes définies dans le h).

à quel endroit as-tu inclus ton fichier h? d'où appelles-tu ce 'oSheet.Cells...'

au déboguage, quel est le résultat de ce LangLabel('LB_SAVINGS',...)?

dimanche 16 août 2009 à 13:32:22 | Re : Evaluer une variable string contenant le nom d'une constante

mike_vk

J'ai déjà passé pas mal de temps à chercher ça aussi, exactement le titre du sujet de la discussion.
Même si cette fonction calcul le bon nom de constante, on ne peut pas écrire RETURN &cRetVal, car Foxpro ne recherchera que les variables. Je pense que c'est logique car les constantes sont évaluées à la compil et non à l'exéc.

A mon avis il faut parvenir à inclure le bon fichier h, et fournir dans les deux fichiers les bons noms de constantes. Cela ne devrait pas être compliqué normalement !?

jeudi 1 octobre 2009 à 18:00:52 | Re : Evaluer une variable string contenant le nom d'une constante

AbaqueInside


La meilleure solution est AMHA une table lexique incluse dans le projet

Communauté Francophone des Professionnels FoxPro
news://news.AtoutFox.org/AtoutFox.association
www.AtoutFox.org


Cette discussion est classée dans : fichier, variable, constante, def, monlabel


Répondre à ce message

Sujets en rapport avec ce message

re-selection d'enregistrement [ par brunaux ] dans le 1er fichier il y a donc 75 variables,les 4 premieres sont de longueur differentes et toutes de type caractere, et les 71 autres dont toutes de Export d'une requête en xls [ par crampe666 ] Salut à tous,Je cherche (et même j'arrive) à exporter les résultats d'une requête dans un fichier excel.Voici mon bout de code :   select mon_champ fr j'ai besoin de votre aide dans une chose importante dans foxpro [ par jbenzakour ] je suis programmeur de vb et je ne connait rien dans le foxpro mais dans la société ou je travail se trouve un programme de la paie avec fox pro. et j copier ver excel [ par brunaux ] Bonjour à tousComment faire lorsque l'on à un fichier de 30 0000 (ou plus) enregistrements et que l'on veut le copier en excel et avoir l'integralite importation txt --> fox pro [ par gregorian ] Bonjour, à tous, J'aurais voulu savoir si il existait une fonction permettant de lancer la commande d'importation d'un fichier txt en dbf (un peu comm prob avec un append from [ par gregorian ] Bonjour, J'ai été voir cette fonction, et il me semble qu'elle répond tout a fait à mes attentes sauf un petit problème.Donc, la table existe, je l'ai Form [ par Domatreal ] SalutJe suis un novice en Visual FoxPro. J'ai la version 9.0. Je programme par plaisir. J'ai creer une forme avec laquelle j'ouvre un fichier et j'aim Fichier Excel [ par Domatreal ] Salut Est-il possible d'ouvrir un fichier excel (qui existe deja) avec foxpro, et de le modifier toujours dans foxpro?Merci d'avanceDomatreal Base de données VB !!! [ par spoutnic_37 ] aloha , Je dois récuperer des informations clients et d'intervention d'un logiciel écrit en VB. Les info sont stockées dans des fichier .dat. ligne Application mullti-fichier [ par jvdh ] Salut a tous, Je programme depuis environ 2 ans en Visual Foxpro (version 8) et j'ai pu elaborer plusieurs systemes de gestion tant monoposte qu'en r


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Juillet 2010
LMMJVSD
   1234
567891011
12131415161718
19202122232425
262728293031 

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,437 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales