PC SOFT

FORUMS PROFESSIONNELS
WINDEVWEBDEV et WINDEV Mobile

Accueil → WINDEV 25 → WD - Como criar um campo de pesquisa em meu aplicativo?
WD - Como criar um campo de pesquisa em meu aplicativo?
Débuté par BOLLER ADRIANO, 28 juin 2016 18:29 - Aucune réponse
Membre enregistré
3 659 messages
Popularité : +175 (223 votes)
Posté le 28 juin 2016 - 18:29
Prezados

Como criar um campo de pesquisa em meu aplicativo?

Normalmente, você quer fazer uma pesquisa como "todas as palavras que começam com".
Como podemos garantir que o usuário final não se preocupam com as restrições do texto completo e ele sair que alguns dos termos de busca, separados por espaços?

Ex: "Configurações Req" para Motion e configurações. código de exemplo no SQL puro:

//Exemplo

MaRequeteVoyage est une chaîne
MaSourceVoyage est une Source de Données
MaConnexionCDM est une Connexion
Texte_A_Rechercher est une chaîne

// Connexion aux fichiers des voyages
// Paramètres de la connexion

MaConnexionCDM..Provider = hAccèsHFClientServeur
MaConnexionCDM..Utilisateur = "Utilisateur"
MaConnexionCDM..MotDePasse = "mot de passe"
MaConnexionCDM..Serveur = "adresse IP serveur HF"
MaConnexionCDM..BaseDeDonnées = "Nom Base de données"
MaConnexionCDM..Cryptage = hCryptageNon

// Ouverture de la connexion

HOuvreConnexion(MaConnexionCDM)

// Requête a exécuter, le %1 sera le paramètre

MaRequeteVoyage = [
SELECT DISTINCT MATCH(voyage.Titre, voyage.Detail, voyage.Pays, voyage.Ville, voyage.Commentaires) AGAINST ALL ('%1') AS PertinenceFullText1, voyage.HTTPLien AS HTTPLien FROM voyage WHERE PertinenceFullText1 > 0 AND voyage.HTTPLien <> '' ORDER BY PertinenceFullText1 DESC
]

// C’est ICI que l’on formate les paramètres à la place de l’utilisateur final

POUR TOUTE CHAINE sChaîneExtraite, nRang DE TexteRecherche SEPAREE PAR " "
Texte_A_Rechercher += ["+"] + sChaîneExtraite + ["* "] FIN MaRequeteVoyage = ChaîneConstruit(MaRequeteVoyage, Texte_A_Rechercher)

SI PAS HExécuteRequêteSQL(MaSourceVoyage, MaConnexionCDM, hRequêteDéfaut, MaRequeteVoyage) ALORS
Erreur(HErreurInfo())
RETOUR
FIN

// Ajout des résultat dans une zone répétée

POUR TOUT MaSourceVoyage
ZoneRépétéeAjouteLigne(ZR_Resultat_Recherche, MaSourceVoyage.HTTPLien, MaSourceVoyage.HTTPLien)
FIN


--
Adriano José Boller
______________________________________________
Consultor e Representante Oficial da
PcSoft no Brasil
+55 (41) 9949 1800
adrianoboller@gmail.com
skype: adrianoboller
http://wxinformatica.com.br/