PC SOFT

FORUMS PROFESSIONNELS
WINDEVWEBDEV et WINDEV Mobile

Accueil → WINDEV 2025 → Fonction avec HF en parametre
Fonction avec HF en parametre
Débuté par leclere.fred, 10 jan. 2005 19:17 - 6 réponses
Posté le 10 janvier 2005 - 19:17
Bonjour,

J'utilise une fonction qui utilise en parametre le nom d'un fichier HF :
fonction Nom(FichierHF)

Dans cette fonction, je dois ajouter un enregistrement dans ce fichier avec des noms de rubriques qui sont issues de variables :
VarNomRubrique est une chaîne
VarNomRubrique="NomRubrique1"
FichierHF.VarNomRubrique="xx"
HAjoute(FichierHF)

Je bloque dans le code au niveau de l'avant derniere ligne. En effet, Windev me genere une erreur sur cette ligne car j'utilise des variables et donc la syntaxe n'est pas correct (je que je comprend). Connaissez-vous une autre syntxe que cette ligne ?
FichierHF.VarNomRubrique="xx"
un peu du style
Fichier(FichierHF).Rubrique(VarNomRubrique)="xx"

Merci par avance
Fred
Posté le 10 janvier 2005 - 22:48
Bonjour.

Je pense que tu peux facilement t'en sortir en utilisant les { et }

En cherchant un peu dans l'aide, dans l'index, tu mets "Nom Dynamique".

Je n'ai pas de solution à te proposer car je ne me suis pas pencher sur ton problème mais
je me suis souvenu de cette fonctionnalité.

Bon courage.
Posté le 11 janvier 2005 - 09:55
> FichierHF.VarNomRubrique="xx"

==>
{"FichierHF."+VarNomRubrique}="xx"

Sébastien
Posté le 11 janvier 2005 - 10:31
Exact, il te faut utiliser les indirections qui vont évaluer le contenu de te variables avant de faire l'opération demandée.
Dans ton cas, utilise le code suivant:
{NomDuFichier+"."+NomDeRubrique} = MaValeur
ou bien
{NomDuFichier+"."+NomDeRubrique, indRubrique} = MaValeur

La seconde syntaxe étant plus rapide.
Posté le 11 janvier 2005 - 12:01
Merci. Cela fontionne à merveille.
Fred
Posté le 11 janvier 2005 - 12:44
tu dois utiliser les parenthèses américaines (??) et non les simples
parenthèses ...
de mémoire {"FichierHF."+VarNomRubrique}
//////////////////////////////////////////////////////////////////
Opérateur d'indirection
Les opérateurs { et } permettent d'accéder à un champ, une variable, un
membre d'une classe ou une rubrique de fichier en construisant
dynamiquement le nom du champ, de la variable, du membre de la classe ou
de la rubrique.
L'intérêt des opérateurs { et } est multiple :
passer en paramètre un nom de champ, de variable, de membre d'une
classe ou de rubrique
construire le nom d'un champ, de la variable, d'un membre d'une classe
ou d'une rubrique par programme
/////////////////////////////////////////////////////////////////////////
Fred Leclere a écrit :
Bonjour,

J'utilise une fonction qui utilise en parametre le nom d'un fichier HF :
fonction Nom(FichierHF)

Dans cette fonction, je dois ajouter un enregistrement dans ce fichier avec des noms de rubriques qui sont issues de variables :
VarNomRubrique est une chaîne
VarNomRubrique="NomRubrique1"
FichierHF.VarNomRubrique="xx"
HAjoute(FichierHF)

Je bloque dans le code au niveau de l'avant derniere ligne. En effet, Windev me genere une erreur sur cette ligne car j'utilise des variables et donc la syntaxe n'est pas correct (je que je comprend). Connaissez-vous une autre syntxe que cette ligne ?
FichierHF.VarNomRubrique="xx"
un peu du style
Fichier(FichierHF).Rubrique(VarNomRubrique)="xx"

Merci par avance
Fred
Posté le 12 janvier 2005 - 11:17
Fred Leclere a écrit :

Bonjour,

J'utilise une fonction qui utilise en parametre le nom d'un fichier HF :
fonction Nom(FichierHF)

Dans cette fonction, je dois ajouter un enregistrement dans ce fichier avec des noms de rubriques qui sont issues de variables :
VarNomRubrique est une chaîne
VarNomRubrique="NomRubrique1"
FichierHF.VarNomRubrique="xx"
HAjoute(FichierHF)

Je bloque dans le code au niveau de l'avant derniere ligne. En effet, Windev me genere une erreur sur cette ligne car j'utilise des variables et donc la syntaxe n'est pas correct (je que je comprend). Connaissez-vous une autre syntxe que cette ligne ?
FichierHF.VarNomRubrique="xx"
un peu du style
Fichier(FichierHF).Rubrique(VarNomRubrique)="xx"

Merci par avance
Fred


Nous avons réalisé un dossier détaillant l'indirection qui répond à
votre besoin.
http://www.wdforge.org/modules/icontent/index.php…

++ R&B