hconstruitvalclé
Le
Romuald.besset

je lit un fihcier texte pour importer dans un fichier HyperFile ayant
une clé composée Unique
je vais devoir faire une recherche pour déterminer si je suis en ajout /
modification
je récupère donc les éléments de ma clé composée dans un tableau de
variant (ou une chaine on verra)
comment alors monter mon ordre de recherche ?
hlitrecherchepremier(fichier,clécomp,hconstruivalclé(fichier,clécomp,p1,p2.))
noter : comme je suis dans une boucle pour plusieurs fichiers, le nombre
de composante de la clé (formule) varie !!!
merci de votre aide (c'est juste un peu pressé en plus)
++ R&B
une clé composée Unique
je vais devoir faire une recherche pour déterminer si je suis en ajout /
modification
je récupère donc les éléments de ma clé composée dans un tableau de
variant (ou une chaine on verra)
comment alors monter mon ordre de recherche ?
hlitrecherchepremier(fichier,clécomp,hconstruivalclé(fichier,clécomp,p1,p2.))
noter : comme je suis dans une boucle pour plusieurs fichiers, le nombre
de composante de la clé (formule) varie !!!
merci de votre aide (c'est juste un peu pressé en plus)
++ R&B
en utilisant 10 variant et l'ordre suivant
hlitrecherchepremier(f,c,hconstruitvalclé(f,c,p1,p2,p3,p4,p5,p6,p7,p8,p9,p10))
Evidement je prend une erreur comme quoi la clé n'a pas tant de
composante dès que le nombre <> 10
j'vais pas décupler l'ordre dans un Selon sur le
chaineoccurrence({f+"."+c,indrubrique}..formule,"+")+1
(nombre de parties de la clé) ?
ps : un jour il faudra demander à PCSoft comment il gère les params
fonctions de ce type (c'est intéressant)
++ R&B
A mon humble avis, tu captures ton fichier.txt dans un fichier_récup.hf.
Avec ce fichier :
clécomp2 est une chaine
hlitpremier(fichier_récup,clé)
tanque pas hendehors()
clécomp2 = fichier_récup.clécomp
hlitrecherche(fichier,clécomp,clécomp2)
si htrouve() alors
champ1.fichier = champ1.fichier_récup
.........
hmodifie(fichier)
sinon
champ1.fichier = champ1.fichier_récup
.........
hajoute(fichier)
fin
hlitsuivant(fichier_récup,clé)
fin
@+
chonchon,
--- Message d'origine ---
je lit un fihcier texte pour importer dans un fichier HyperFile ayant
une clé composée Unique...
je vais devoir faire une recherche pour déterminer si je suis en ajout
/
modification
je récupère donc les éléments de ma clé composée... dans un tableau de
variant (ou une chaine on verra...)
comment alors monter mon ordre de recherche ?
hlitrecherchepremier(fichier,clécomp,hconstruivalclé(fichier,clécomp,
p1,p2....))
noter : comme je suis dans une boucle pour plusieurs fichiers, le
nombre
de composante de la clé (formule) varie !!!
merci de votre aide (c'est juste un peu pressé en plus...)
++ R&B
--
Article posté depuis le site FORUMS WINDEV® :
http://forums.wdscript.com
Une archive de plus de 120000 articles sur Windev® et Webdev®
--
CodeSource = "Procedure TEST(cVal)" + RC
CodeSource += "hConstruitValCle(Fichier,cle"
tu complete le code en fonction du nombre de valeurs de la clé
composée
pour i=1 à Fichier.cle.nbcomposante
CodeSource += ","+fichier.cle(i).composante
fin
CodeSource += ")"
// attention, la syntaxe fichier.cle(i).composante n'est pas
référencée dans l'aide... Mais elle fonctionne... Celle donnée dans
l'aide ne fonctionne pas :-))
Tu finis avec :
Compile("Test",CodeSource)
Execute("Test",trtprocedure)
voilà, a verifier car je te donne tout çà de tête mais ca marche...
mail moi si probleme
A+
--
Article posté depuis le site FORUMS WINDEV® :
http://forums.wdscript.com
Une archive de plus de 120000 articles sur Windev® et Webdev®
--