noter : comme je suis dans une boucle pour plusieurs fichiers, le nombre de composante de la clé (formule) varie !!!
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
andré chonchon
Bonjour, 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
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® --
Bonjour,
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
Bonjour, 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
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 :-))
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® --
Tu dois construire ton code dans une variable chaine :
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 :-))
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®
--
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 :-))
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® --