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

WD10 - Problème avec HRecherche sur une requête

2 réponses
Avatar
Val
Bonjour

J'ai un problème avec une requête sur un fichier HF.
Le truc tout simple pourtant.

En effet:
Si le code suivant et qui utilise "HLitRecherche" fonctionne:
**************
HExécuteRequête(RequeteFichierClient)
HLitRecherche(RequeteFichierClient,NOM,"Martin")
SI HTrouve(RequeteFichierClient)=Vrai ALORS
Info("Trouvé")
sinon
Info("Pas Trouvé")
FIN
**************

... par contre celui-ci qui utilise "HRecherche" ne fonctionne pas car
Windev plante (Opération interdite - erreur 70401)
**************
HExécuteRequête(RequeteFichierClient)
HRecherche(RequeteFichierClient,NOM,"Martin")
SI HTrouve(RequeteFichierClient)=Vrai ALORS
Info("Trouvé")
sinon
Info("Pas Trouvé")
FIN
**************


... alors là je pige pas ce qu'il se passe ?

Une idée ?

A+

Val


RequeteRepertoireContacts.TYPEDECONTACT=Null
RequeteRepertoireContacts.LETTREINDEX=Null
RequeteRepertoireContacts.CODECIVILITE=Null
RequeteRepertoireContacts.HOMMEOUFEMME=Null
HExécuteRequête(RequeteRepertoireContacts)

2 réponses

Avatar
Val
C'est bon, j'ai la réponse ...
En fait il y a une "grosse" erreur dans l'aide/doc de Windev (37f) et les
fonctions Hrecherche, HrecherchePremier et Hrecherchedernier ne peuvent pas
être utilisées sur une requête.
Comme je ne veux pas lire les enregistrements et donc utiliser les fonctions
HLitrecherche, HLitrecherchePremier, etc ... va falloir que je trouve une
autre solution.

Val


"Val" a écrit dans le message de news:
44352ae1$0$1150$
Bonjour

J'ai un problème avec une requête sur un fichier HF.
Le truc tout simple pourtant.

En effet:
Si le code suivant et qui utilise "HLitRecherche" fonctionne:
**************
HExécuteRequête(RequeteFichierClient)
HLitRecherche(RequeteFichierClient,NOM,"Martin")
SI HTrouve(RequeteFichierClient)=Vrai ALORS
Info("Trouvé")
sinon
Info("Pas Trouvé")
FIN
**************

... par contre celui-ci qui utilise "HRecherche" ne fonctionne pas car
Windev plante (Opération interdite - erreur 70401)
**************
HExécuteRequête(RequeteFichierClient)
HRecherche(RequeteFichierClient,NOM,"Martin")
SI HTrouve(RequeteFichierClient)=Vrai ALORS
Info("Trouvé")
sinon
Info("Pas Trouvé")
FIN
**************


... alors là je pige pas ce qu'il se passe ?

Une idée ?

A+

Val


RequeteRepertoireContacts.TYPEDECONTACT=Null
RequeteRepertoireContacts.LETTREINDEX=Null
RequeteRepertoireContacts.CODECIVILITE=Null
RequeteRepertoireContacts.HOMMEOUFEMME=Null
HExécuteRequête(RequeteRepertoireContacts)








Avatar
mat
Val wrote:
C'est bon, j'ai la réponse ...
En fait il y a une "grosse" erreur dans l'aide/doc de Windev (37f) et les
fonctions Hrecherche, HrecherchePremier et Hrecherchedernier ne peuvent pas
être utilisées sur une requête.
Comme je ne veux pas lire les enregistrements et donc utiliser les fonctions
HLitrecherche, HLitrecherchePremier, etc ... va falloir que je trouve une
autre solution.




Bonjour,
En fait, HRecherche agit sur l'index d'un fichier, mais cela n'existe
pas pour une requête... Mais, lire un résultat d'une requête n'est pas
la même chose que lire un fichier. Le premier est en mémoire, donc la
lecture est très rapide, je pense aussi rapide que HRecherche sur un
fichier index physique. Il ne devrait pas y avoir du traffic réseau pour
les lectures sur le résultat d'une requête.
Salutations
Mat