Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Pour tout

4 réponses
Avatar
Roumegou Eric
Voilà j'ai un fichier HF_OPE_CRIT avec notamment une zone NOCRIT (n° de
critère pouvant varier de 1 à 3 voire plus plus tard)

je charge les critères d'une ope (IDHF_OPE) dans une table et ensuite
j'ai des boutons Ajout,Edit,Avancer,Reculer,Couper.
Mon but est si je suppr le critere n° 2 de resequenser 1 et 3 en 1,2.

Et je me demandais si la nouvelle instruction magique POUR TOUT allait
pouvoir être utilisée.
Donc mon code :
- Le filtre est il correct ?
- peut-on avoir un SUR et un AVEC (le SUR pour que les enreg soient
bien triés dans l'ordre du n° crit) ?
- pas très fortiche en HF mais ne vais-je pas avoir un pb de position
et faudrait-il avoir des HsauvePosition ??


wnocrit est un entier
HLitRecherche(HF_OPE_CRIT,IDHF_OPENOCRIT,HConstruitValClé(HF_OPE_CRIT,IDHF_OPENOCRIT,IDHF_OPE,TableCrit.NOCRIT))
SI HTrouve(HF_OPE_CRIT) ALORS
HSupprime(HF_OPE_CRIT)
// réorg des n°s de critères
POUR TOUT HF_OPE_CRIT SUR IDHF_OPENOCRIT AVEC "IDHF_OPE="+IDHF_OPE
wnocrit++
HF_OPE_CRIT.NOCRIT=wnocrit
HModifie(HF_OPE_CRIT)
FIN
FIN

Merci de vos réponses.

--
Eric Roumégou
Webmaster des wtablettes
http://cerbermail.com/?qE7t4Qvilo
(cliquez sur le lien ci-dessus pour me contacter en privé)

4 réponses

Avatar
Roumegou Eric
Roumegou Eric a formulé la demande :
Voilà j'ai un fichier HF_OPE_CRIT avec notamment une zone NOCRIT (n° de
critère pouvant varier de 1 à 3 voire plus plus tard)

je charge les critères d'une ope (IDHF_OPE) dans une table et ensuite j'ai
des boutons Ajout,Edit,Avancer,Reculer,Couper.
Mon but est si je suppr le critere n° 2 de resequenser 1 et 3 en 1,2.

Et je me demandais si la nouvelle instruction magique POUR TOUT allait
pouvoir être utilisée.
Donc mon code :
- Le filtre est il correct ?
- peut-on avoir un SUR et un AVEC (le SUR pour que les enreg soient bien
triés dans l'ordre du n° crit) ?
- pas très fortiche en HF mais ne vais-je pas avoir un pb de position et
faudrait-il avoir des HsauvePosition ??


wnocrit est un entier
HLitRecherche(HF_OPE_CRIT,IDHF_OPENOCRIT,HConstruitValClé(HF_OPE_CRIT,IDHF_OPENOCRIT,IDHF_OPE,TableCrit.NOCRIT))
SI HTrouve(HF_OPE_CRIT) ALORS
HSupprime(HF_OPE_CRIT)
// réorg des n°s de critères
POUR TOUT HF_OPE_CRIT SUR IDHF_OPENOCRIT AVEC "IDHF_OPE="+IDHF_OPE
wnocrit++
HF_OPE_CRIT.NOCRIT=wnocrit
HModifie(HF_OPE_CRIT)
FIN
FIN

Merci de vos réponses.



je précise qu'à mon grand étonnement cela semble marcher parfaîtement.
:-?

--
Eric Roumégou
Webmaster des wtablettes
http://cerbermail.com/?qE7t4Qvilo
(cliquez sur le lien ci-dessus pour me contacter en privé)
Avatar
Pascal F
Roumegou Eric vient de nous annoncer :
Voilà j'ai un fichier HF_OPE_CRIT avec notamment une zone NOCRIT (n° de critère pouvant varier de 1 à 3 voire plus plus tard)

je charge les critères d'une ope (IDHF_OPE) dans une table et ensuite j'ai des boutons Ajout,Edit,Avancer,Reculer,Couper.
Mon but est si je suppr le critere n° 2 de resequenser 1 et 3 en 1,2.

Et je me demandais si la nouvelle instruction magique POUR TOUT allait pouvoir être utilisée.
Donc mon code :
- Le filtre est il correct ?
- peut-on avoir un SUR et un AVEC (le SUR pour que les enreg soient bien triés dans l'ordre du n° crit) ?
- pas très fortiche en HF mais ne vais-je pas avoir un pb de position et faudrait-il avoir des HsauvePosition ??


wnocrit est un entier
HLitRecherche(HF_OPE_CRIT,IDHF_OPENOCRIT,HConstruitValClé(HF_OPE_CRIT,IDHF_OPENOCRIT,IDHF_OPE,TableCrit.NOCRIT))
SI HTrouve(HF_OPE_CRIT) ALORS
HSupprime(HF_OPE_CRIT)
// réorg des n°s de critères
POUR TOUT HF_OPE_CRIT SUR IDHF_OPENOCRIT AVEC "IDHF_OPE="+IDHF_OPE
wnocrit++
HF_OPE_CRIT.NOCRIT=wnocrit
HModifie(HF_OPE_CRIT)
FIN
FIN

Merci de vos réponses.



c'est pas exactement ta demande, mais c'est au niveau de la construction de la clé. Il existe une syntaxe plus simple. au lieu de
HLitRecherche(HF_OPE_CRIT,IDHF_OPENOCRIT,HConstruitValClé(HF_OPE_CRIT,IDHF_OPENOCRIT,IDHF_OPE,TableCrit.NOCRIT))
tu peux écrire
HLitRecherche(HF_OPE_CRIT,IDHF_OPENOCRIT,[HF_OPE_CRIT,IDHF_OPENOCRIT,IDHF_OPE,TableCrit.NOCRIT])
c'est le moteur HF qui va construire la clé.

Pour la question en elle même je pense que je passerai par une requete UPDATE

--
Pascal

Ne garder que le prénom pour me joindre
Avatar
Roumegou Eric
Pascal F avait soumis l'idée :
Roumegou Eric vient de nous annoncer :
Voilà j'ai un fichier HF_OPE_CRIT avec notamment une zone NOCRIT (n° de
critère pouvant varier de 1 à 3 voire plus plus tard)

je charge les critères d'une ope (IDHF_OPE) dans une table et ensuite j'ai
des boutons Ajout,Edit,Avancer,Reculer,Couper.
Mon but est si je suppr le critere n° 2 de resequenser 1 et 3 en 1,2.

Et je me demandais si la nouvelle instruction magique POUR TOUT allait
pouvoir être utilisée.
Donc mon code :
- Le filtre est il correct ?
- peut-on avoir un SUR et un AVEC (le SUR pour que les enreg soient bien
triés dans l'ordre du n° crit) ?
- pas très fortiche en HF mais ne vais-je pas avoir un pb de position et
faudrait-il avoir des HsauvePosition ??


wnocrit est un entier
HLitRecherche(HF_OPE_CRIT,IDHF_OPENOCRIT,HConstruitValClé(HF_OPE_CRIT,IDHF_OPENOCRIT,IDHF_OPE,TableCrit.NOCRIT))
SI HTrouve(HF_OPE_CRIT) ALORS
HSupprime(HF_OPE_CRIT)
// réorg des n°s de critères
POUR TOUT HF_OPE_CRIT SUR IDHF_OPENOCRIT AVEC "IDHF_OPE="+IDHF_OPE
wnocrit++
HF_OPE_CRIT.NOCRIT=wnocrit
HModifie(HF_OPE_CRIT)
FIN
FIN

Merci de vos réponses.



c'est pas exactement ta demande, mais c'est au niveau de la construction de
la clé. Il existe une syntaxe plus simple. au lieu de
HLitRecherche(HF_OPE_CRIT,IDHF_OPENOCRIT,HConstruitValClé(HF_OPE_CRIT,IDHF_OPENOCRIT,IDHF_OPE,TableCrit.NOCRIT))
tu peux écrire
HLitRecherche(HF_OPE_CRIT,IDHF_OPENOCRIT,[HF_OPE_CRIT,IDHF_OPENOCRIT,IDHF_OPE,TableCrit.NOCRIT])
c'est le moteur HF qui va construire la clé.

Pour la question en elle même je pense que je passerai par une requete UPDATE



Merci de ta remarque mais je préfère justement ce HconstruitValCle qui
te guide avec la complétion et est très clair. Quand j'utilisais il y a
lgtps du HF (en 4.1), la construction des clés composées était toujours
un peu couillesque (selon le numerique, le texte etc ). Maintenant plus
de questions, on suit bêtement (ça me va parfaitement) l'ordre.

Pour l'update, j'y avais d'abord réfléchi mais ce n'est pas aussi
évident que cela paraisse car en resequencant avec une req, je tombe
sur des clés déjà existantes donc clés en double sur la clé composée.

--
Eric Roumégou
Webmaster des wtablettes
http://cerbermail.com/?qE7t4Qvilo
(cliquez sur le lien ci-dessus pour me contacter en privé)
Avatar
flambour
On 30 mai, 09:36, Roumegou Eric wrote:
Voilà j'ai un fichier HF_OPE_CRIT avec notamment une zone NOCRIT (n° de
critère pouvant varier de 1 à 3 voire plus plus tard)

je charge les critères d'une ope (IDHF_OPE) dans une table et ensuite
j'ai des boutons Ajout,Edit,Avancer,Reculer,Couper.
Mon but est si je suppr le critere n° 2 de resequenser 1 et 3 en 1,2.

Et je me demandais si la nouvelle instruction magique POUR TOUT allait
pouvoir être utilisée.
Donc mon code :
- Le filtre est il correct ?
- peut-on avoir un SUR et un AVEC (le SUR pour que les enreg soient
bien triés dans l'ordre du n° crit) ?
- pas très fortiche en HF mais ne vais-je pas avoir un pb de position
et faudrait-il avoir des HsauvePosition ??

wnocrit est un entier
HLitRecherche(HF_OPE_CRIT,IDHF_OPENOCRIT,HConstruitValClé(HF_OPE_CRIT,I DHF_­OPENOCRIT,IDHF_OPE,TableCrit.NOCRIT))
SI HTrouve(HF_OPE_CRIT) ALORS
HSupprime(HF_OPE_CRIT)
// réorg des n°s de critères
POUR TOUT HF_OPE_CRIT SUR IDHF_OPENOCRIT AVEC "IDHF_OPE="+IDHF_ OPE
wnocrit++
HF_OPE_CRIT.NOCRIT=wnocrit
HModifie(HF_OPE_CRIT)
FIN
FIN

Merci de vos réponses.

--
Eric Roumégou
Webmaster des wtabletteshttp://cerbermail.com/?qE7t4Qvilo
(cliquez sur le lien ci-dessus pour me contacter en privé)



Perso j'utilise pas mal le POUR TOUT mais jamais avec la clause AVEC.
Une mauvaise expérience par le passé ...

Pour info : pour parcourir l'intégralité d'un fichier HF la méthode la
plus rapide est depuis toujours Hlit() dans une boucle pour

a+