PC SOFT

FORUMS PROFESSIONNELS
WINDEVWEBDEV et WINDEV Mobile

Accueil → WINDEV 2024 → FichierVersMémoire et tableau associatif
FichierVersMémoire et tableau associatif
Débuté par François C., 25 mai 2018 12:30 - 3 réponses
Membre enregistré
1 623 messages
Popularité : +100 (114 votes)
Posté le 25 mai 2018 - 12:30
Bonjour,

On peut utiliser FichierVersMémoire() pour remplir un tableau d'objet correspondant au fichier ou a la requete concernée.

Exemple :
Liste est un tableau MClients //Mclients étant une classe générée correspondant au modèle de données du fichier Client.
HLitPremier(Clients)
FichierVersMémoire(Liste,Clients)

// ce code va générer un tableau de X Mclients

Par contre pour rechercher un client dans le tableau c'est un peu pénible du coup... il serait plus simple d'utiliser un tableau associatif par exemple ou l'index d'appel serait la clé unique du fichier client .. Comme si il suffit de faire :
Liste[<IdDuClient>] pour acceder à l'objet en question.

Comment le faire avec le code plus haut ?

Merci ;)
Membre enregistré
939 messages
Popularité : +66 (68 votes)
Posté le 25 mai 2018 - 13:27
bonjour,

Avec TableauCherche(), mais peu générer des erreurs si la clé n'existe pas... il faudrait rajouter un test en plus...

du genre
Liste[TableauCherche(Liste,tcLinéaire,"NomRubriqueCleDeVotreClasse",ValeurRubriqueCle)] // pour l'objet


_id_tbl est un entier=TableauCherche(Liste,tcLinéaire,"NomRubriqueCle",ValeurRubriqueCle)
SI _id_tbl>0 ALORS Liste[_id_tbl] // pour l'objet
Membre enregistré
1 623 messages
Popularité : +100 (114 votes)
Posté le 25 mai 2018 - 14:20
Oui voila mais c'est pénible.. enfin c'est moins pratique en tout cas.
Du coup ce tableau étant lui même contenu dans une classe.. j'ai ajouté une méthode RechercheClient() qui renvoi l'indice ...
Posté le 03 octobre 2019 - 10:31
Me réponse et un peut tardif, mes tu peut aussi utiliser la cette fonction

FichierVersTableau(m_tabClients, REQ_Clients)