[..] Création de la fonction "Recherche" de mon script.

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
GaRydelaMer
Niveau 7
Niveau 7
Messages : 450
Enregistré le : mer. 18 mars 2009 22:12
Localisation : Montpellier
Status : Hors ligne

Re: [..] Création de la fonction "Recherche" de mon script.

#41

Message par GaRydelaMer »

Pourtant tout ton code est bon

Sauf que tu fais un $oConn.Close et après tu tentes à nouveau d'ouvrir un RecordSet

$oConn.Close ferme la base
$oRs.open Ouvre un recordSet

je peux pas te dire plus relis ton code ligne par ligne.
BeCool
Niveau 5
Niveau 5
Messages : 173
Enregistré le : jeu. 30 oct. 2008 08:48
Status : Hors ligne

Re: [..] Création de la fonction "Recherche" de mon script.

#42

Message par BeCool »

Ayé, je crois que ça marche !
J'obtiens :

Table name: tb_Services Table type: TABLE
1 enregistrement dans la table
Nom Prenom Service Fonction NumTel1 NumTel2
Capitaine Hadock Informatique Stagiaire 0001 0476730001

Quand que presse la touche F5 !

Mon problème était que je ne pressais pas la touche F5 mais a la place de ça, j'enregistrai le script et je le lançais en double-cliquant dessus ...

Voici le code qui marche. Il y a peut être des erreurs due au fait que je l'ai modifié, re-modifié, et re-re-modifié pour faire des tests, mais il marche.
► Afficher le texte
BeCool
Niveau 5
Niveau 5
Messages : 173
Enregistré le : jeu. 30 oct. 2008 08:48
Status : Hors ligne

Re: [..] Création de la fonction "Recherche" de mon script.

#43

Message par BeCool »

Désolé, je n'ai pas trop eu le temps de me pencher sur ce script ces quelques derniers jours.

Donc, pour en revenir au sujet, je pense avoir compris le principe de fonctionnement de tous ceci.

Maintenant, j'aimerais faire en sorte que le résultat s'affiche dans ma GUI.
Pour commencer simplement, j'aimerais déjà pouvoir afficher les résultats dans une MsgBox.
Mais évidement ce serrait trop simple si j'y arrivais !
Donc voilà ce que j'ai fais : (a la fin du script, la partie qui affiche le résultat dans "ConsoleWrite")

Code : Tout sélectionner

If $oRS.EOF Then
    ConsoleWrite("Aucun enregistrement dans la table" & @LF)
Else
    ConsoleWrite($oRS.RecordCount & " enregistrement dans la table" & @LF)
    For $Field In $oRS.Fields
        ConsoleWrite($Field.Name & @TAB)
    Next
    ConsoleWrite(@LF)
    While Not $oRS.EOF
        For $Field In $oRS.Fields
            ConsoleWrite($Field.Value & @TAB)
        Next
        ConsoleWrite(@LF)
        $oRS.MoveNext
        ;===================
        [color=#FF0000]$aa = ConsoleRead()
        MsgBox(0, "", "resultat" & @CRLF & @CRLF & $aa)[/color]
    WEnd
EndIf
$oConn.Close
En rouge, ce que j'ai ajouté.
J'ai essayé de mettre a la place de MsgBox(0, "", "resultat" & @CRLF & @CRLF & $aa) ceci : MsgBox(0, "resultat", "" & $Field) ou MsgBox(0, "resultat", "" & $oRS.Fields) ou encore MsgBox(0, "resultat", "" & $Field.Value), etc..., mais rien n'y fait, je n'obtiens pas la même chose que dans la console, c'est a dire : "Capitaine Hadock Informatique Stagiaire 0001 0476730001"
GaRydelaMer
Niveau 7
Niveau 7
Messages : 450
Enregistré le : mer. 18 mars 2009 22:12
Localisation : Montpellier
Status : Hors ligne

Re: [..] Création de la fonction "Recherche" de mon script.

#44

Message par GaRydelaMer »

Re

alors pas difficile du pur AutoIt

Code : Tout sélectionner

$aaa = "resultat" & @LF & @LF
If $oRS.EOF Then
    $aaa &= "Aucun enregistrement dans la table" & @LF
Else
    $aaa &= $oRS.RecordCount & " enregistrement dans la table" & @LF
    For $Field In $oRS.Fields
        $aaa &= $Field.Name & @TAB
    Next
    $aaa &= @LF
    While Not $oRS.EOF
        For $Field In $oRS.Fields
            $aaa &= $Field.Value & @TAB
        Next
        $aaa &= @LF
        $oRS.MoveNext
    WEnd
EndIf
MsgBox(0, "", $aaa, 10); je mets une tempo de 10 s si des fois la msgbox dépasse de l'écran elle se fermera toute seule ;)
$oConn.Close
BeCool
Niveau 5
Niveau 5
Messages : 173
Enregistré le : jeu. 30 oct. 2008 08:48
Status : Hors ligne

Re: [..] Création de la fonction "Recherche" de mon script.

#45

Message par BeCool »

Merci beaucoup :)
Effectivement ce n'était pas bien compliqué ! Suffisait juste de savoir faire. :roll:

Je vais essayé de me débrouiller pour adapter ce script a mon trombinoscope et faire afficher le résultat dans une "list".

Juste au passage, est il possible de faire en sorte que quand on cherche un personne, ça n'affiche que son Nom et Prénom ?

Edit : Lol ! Apparemment mon Trombinoscope n'aime pas quand je lui copie l'intégralité du script de recherche, et que je le me dans la fonction "$rechercher". Il me met tout pleins d'erreurs que je ne comprend pas alors que les 2 scripts séparé marchent très bien...^^

Voici le script entié :
► Afficher le texte
Et voici les érreurs que la console me dit :
► Afficher le texte
Au cas ou quelqu'un comprendrait .. :roll:
ani
Niveau 11
Niveau 11
Messages : 1826
Enregistré le : lun. 23 juil. 2007 12:31
Localisation : Bureau
Status : Hors ligne

Re: [..] Création de la fonction "Recherche" de mon script.

#46

Message par ani »

hello :)

sans avoir les erreurs, on y voit une fonction dans une fonction, déjà là c'est foutu :)
retire la fonction _ADO_Open et _MY_AU3_ErrFunc de la fonction Trombi(), met les en fin de script après Ajout_photo() , ensuite le exit tu peux le mettre en dessous de l'appel à la fonction Trombi().

voilàvoilà ;)
BeCool
Niveau 5
Niveau 5
Messages : 173
Enregistré le : jeu. 30 oct. 2008 08:48
Status : Hors ligne

Re: [..] Création de la fonction "Recherche" de mon script.

#47

Message par BeCool »

Ha ui, effectivement ça marche mieux :mrgreen:

Je ne vois quand même pas en quoi ca gène d'avoir une fonction a l'intérieur d'une autre fonction si ces deux dernières sont codés comme il le faut. M'enfin :)

J'obtiens quand même 3 messages d'erreurs dans la console même après avoir fais ce que vous m'avez dis de faire. Voici les messages :
► Afficher le texte
BeCool
Niveau 5
Niveau 5
Messages : 173
Enregistré le : jeu. 30 oct. 2008 08:48
Status : Hors ligne

Re: [..] Création de la fonction "Recherche" de mon script.

#48

Message par BeCool »

Petit up.
Je n'arrive pas a afficher dans ma GUICtrlCreateList les resultat comme je le veux.

J'arrive a afficher quelque chose, mais pas exactement ce que je veux.

J'aimerais arriver a faire en sorte que ca affiche que ce que l'on cherche.

Par exemple, si on cherche un nom (sélection du type de recherche dans le $Categorie = GUICtrlCreateList sélectionner A - Nom, et taper un nom dans la recherche et qu'il me renvois dans la GUICtrlCreateList "Résultat" toutes les personnes qui ont ce nom avec comme résultat leur nom et leur prénom.
Par exemple je recherche quelqu'un du nom de Hadock, j'effectue ma recherche et dans les résultats, il me met 2 lignes (car 2 résultats) qui sont "Hadock Tintin" et "Hadock Capitaine".

Voici mon script tel qu'il est actuellement.
► Afficher le texte
(En rouge, la partie qui ne marche pas comme je le voudrais)
Répondre