Etienne BAUDOUX

Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
Etienne BAUDOUX

Forum sur les projets de Etienne BAUDOUX

Le Deal du moment : -35%
-35% sur la machine à café Expresso ...
Voir le deal
359.99 €

4 participants

    Réaliser une base de données

    lereparateurdepc
    lereparateurdepc



    Masculin Nombre de messages : 5622
    Age : 32
    Localisation : Calvados
    Emploi/loisirs : Electrotechnicien / électricité, HAUTE TENSION, électronique, informatique, automatisme , Arduino, bref le BRICOLAGE , ...
    Humeur : toujours cool
    Date d'inscription : 31/01/2010

    Réaliser une base de données Empty Réaliser une base de données

    Message par lereparateurdepc Dim 1 Avr 2012 - 8:23

    Bonjour ,

    Etant assez pressé quand je fait un montage électronique , pressé de voir le résultat final , je n'aime pas perdre de temps à rechercher sur le WEB le DataSheet des composents récupérés ( sur les alimes de PC pour les 3/4 ). A chaque fois que je regarde le datasheet , j'enregistre le PDF ce qui me fait une belle collection Smile

    Donc , mon programme devera avoir une fonction recherche qui recherche dans la base de donnée si la ref du composent existe OU /!\ s'en approche /!\
    -> en fonction des constructeurs .

    La base de donnée s'actualise automatiquement en détectant les nouveaux PDF dans le dossier unique .

    Si le composent recherché existe , le programme lance le PDF
    -> Intégrer le lecteur PDF dans son programme : possible ?
    Si le composent recherché n'est pas dans la liste , on lance google avec le titre de la recherche précharge .

    Pour un maximum de sécurité , je fais des sauvegardes régulières des ces PDF mais en plus , le programme fera une sauvegarde des PDF en les archivants dans un ZIP
    -> 7ZIP en ligne de commande .

    Merci de votre aide .

    Cordialement ,
    Le réparateur de PC
    Admin
    Admin
    Administrateur
    Administrateur


    Masculin Nombre de messages : 1882
    Age : 32
    Localisation : Boulogne Billancourt(92100)(France)
    Emploi/loisirs : Software Development Engineer
    Date d'inscription : 24/01/2008

    Réaliser une base de données Empty Re: Réaliser une base de données

    Message par Admin Mar 3 Avr 2012 - 17:58

    Bonjour,

    Désolé d'avoir oublié ce sujet. Je suis assez occupé ces temps-ci. J'avais bien vu le sujet et avais essayé de mon côté et puis je suis passé à autre chose, milles excuses >.< ...

    Pour la recherche, c'est faisable avec les actions de SZ 2012, notamment avec "Obtenir une cellule d'une table"...etc
    Si vous tenez tout de même à le faire avec SZ 2011, il faudra utiliser l'action "Exécuter une requête" dans la catégorie SQl, et trouver la requête SQL permettant de faire ça.

    Pour l'intégration du PDF, je réussis une fois à intégrer Adobe Acrobat Reader dans une application avec SZ (références COM, tout comme pour le lecteur VLC et WMP). Bon seulement chez moi là ça fonctionne plus, que ce soit SZ 2011 ou 2012, je pense que ça vient de mon PC, ou alors j'avais testé avec une ancienne version de Acrobat Reader et qui permettait de faire ça.
    Bref, à essayer, mais ça doit être possible Wink
    Au pire, mettez une action qui démarre Acrobat Reader en mettant le chemin vers le fichier en argument.

    Enfin, 7Zip en ligne de commande, idem, action "Lancer un processus".

    Encore pardon pour le temps de réponse Smile
    lereparateurdepc
    lereparateurdepc



    Masculin Nombre de messages : 5622
    Age : 32
    Localisation : Calvados
    Emploi/loisirs : Electrotechnicien / électricité, HAUTE TENSION, électronique, informatique, automatisme , Arduino, bref le BRICOLAGE , ...
    Humeur : toujours cool
    Date d'inscription : 31/01/2010

    Réaliser une base de données Empty Re: Réaliser une base de données

    Message par lereparateurdepc Mar 3 Avr 2012 - 18:18

    re ,

    Pour 7ZIP , c'étais pour l'info .

    pour AcrobatReader , je pose la question car la page s'ouvre mais pas dans l'application .

    Je viens de pensuer à un truc plus simple en apparence :
    Comme j'ajoute mes PDF manuellement ( téléchargement ) ne serais-il pas mieux de récupérer tous les .PDF dans ce dossier , ajouter le nom dans un ListBox ou similaire et la fonction recherche regarder dans ce ListBox si le composent est répertorié .
    Comme ça , ça marche MAIS le petit problème , c'est entre le nom du PDF ( je renomme les PDF avec la ref du composent )et le composent , il peut y avoir une toute petite différence par ex pour un timer 555 un constructeur propose NE555P ( ou N ) et un autre TL555 .
    Existe-il un moyen de rechercher du texte avec une aproximation dans la recherche ?
    Affichier tous les résultats qui s'en approche ?

    Je part sur cette méthode car la base de donnée SQL et MYSQL c'est un peut trop complex pour le moment .

    Pas de pannique , prenez le temps qu'il faut moi aussi j'ai des choses à faire ....[( et vite car il me reste 1H pour réparer mon gestionnaire de charge en court-circuit avant le déclanchement de l'alarme ) bon bref pas de pannique .] Smile

    Cordialement ,
    Le réparateur de PC
    polien
    polien



    Masculin Nombre de messages : 3003
    Age : 28
    Localisation : Bouches du Rhones
    Emploi/loisirs : velo, informatique, électronique, robotique, modélisme feroviaire
    Humeur : Je commence tout mais ne finit rien :P
    Date d'inscription : 19/05/2011

    Réaliser une base de données Empty Re: Réaliser une base de données

    Message par polien Mar 3 Avr 2012 - 18:25

    re,

    sinon pour le pdf une petite astuce: utilise un webrowser
    tu modifie l'url du webrowser par:
    file:///C:/tonchemin.pdf
    Admin
    Admin
    Administrateur
    Administrateur


    Masculin Nombre de messages : 1882
    Age : 32
    Localisation : Boulogne Billancourt(92100)(France)
    Emploi/loisirs : Software Development Engineer
    Date d'inscription : 24/01/2008

    Réaliser une base de données Empty Re: Réaliser une base de données

    Message par Admin Mar 3 Avr 2012 - 18:26

    Bonjour,

    @Polien : je viens d'y penser Razz

    Comme j'ajoute mes PDF manuellement ( téléchargement ) ne serais-il pas
    mieux de récupérer tous les .PDF dans ce dossier , ajouter le nom dans
    un ListBox ou similaire et la fonction recherche regarder dans ce
    ListBox si le composent est répertorié .
    Bonne idée, c'est vrai que ça semble plus approprié Smile

    Comme ça , ça marche MAIS le petit problème , c'est entre le nom du PDF (
    je renomme les PDF avec la ref du composent )et le composent , il peut y
    avoir une toute petite différence par ex pour un timer 555 un
    constructeur propose NE555P ( ou N ) et un autre TL555 .
    Est-ce que ça dérange si les NE555P et TL555 sont affichés dans le résultat de la recherche?
    Si ça dérange, il va falloir faire un algorithme qui traite chaque nom et qui recherche des "extraits" clés, et qui réagi en fonction de ceux-ci. mais l'algorithme risque d'être long à s'exécuter s'il y a beaucoup de possibilités.

    Existe-il un moyen de rechercher du texte avec une approximation dans la recherche ?
    Il faudrait justement faire un algorithme qui recherche des approximations.
    Exemple : on cherche "555", l'algorithme prend en compte "a5a", "a5b", "b5f"....etc ou encore "a555a", "a555b"...etc
    Bien entendu, hors de question de faire une condition pour chaque. Il faut faire des boucle qui cherche chaque caractères.
    lereparateurdepc
    lereparateurdepc



    Masculin Nombre de messages : 5622
    Age : 32
    Localisation : Calvados
    Emploi/loisirs : Electrotechnicien / électricité, HAUTE TENSION, électronique, informatique, automatisme , Arduino, bref le BRICOLAGE , ...
    Humeur : toujours cool
    Date d'inscription : 31/01/2010

    Réaliser une base de données Empty Re: Réaliser une base de données

    Message par lereparateurdepc Mar 3 Avr 2012 - 18:55

    re ,

    Est-ce que ça dérange si les NE555P et TL555 sont affichés dans le résultat de la recherche?
    Si ça dérange, il va falloir faire un algorithme qui traite chaque nom et qui recherche des "extraits" clés, et qui réagi en fonction de ceux-ci. mais l'algorithme risque d'être long à s'exécuter s'il y a beaucoup de possibilités.

    NON mais comme ce sont les même composents et que mon revendeur propose le NE555 , je n'ai que le NE555 en pdf ( exemple ) .

    Pour gagner du temps , une option recherche avencée recherchera les ref similaires sinon , uniquement la ref exacte .

    Il faudrait justement faire un algorithme qui recherche des approximations.
    Exemple : on cherche "555", l'algorithme prend en compte "a5a", "a5b", "b5f"....etc ou encore "a555a", "a555b"...etc
    Bien entendu, hors de question de faire une condition pour chaque. Il faut faire des boucle qui cherche chaque caractères.

    Pour la recherche approximative, bien entendu , uniquement pour les ref presque similaires mais pas trop éloigiées pas comme "a5a", "a5b", "b5f"....etc ; MAIS plutôtcomme "a555a", "a555b"...etc

    Il y as un point que je sais qu'un post existe mais où ..... faire une recherché dans google :
    On lance un processus ( pour ouvrir la page ) mais je ne souhaite pas sasir moi-même la ref dans google mais plutôt qu'il me donne le résultat de la recherche .
    en gros , sasir en truc du style : www.google.fr/search=truc mais erreur 404 .....

    Merci de votre aide Smile

    Cordialement ,
    le réparateur de PC
    lereparateurdepc
    lereparateurdepc



    Masculin Nombre de messages : 5622
    Age : 32
    Localisation : Calvados
    Emploi/loisirs : Electrotechnicien / électricité, HAUTE TENSION, électronique, informatique, automatisme , Arduino, bref le BRICOLAGE , ...
    Humeur : toujours cool
    Date d'inscription : 31/01/2010

    Réaliser une base de données Empty Re: Réaliser une base de données

    Message par lereparateurdepc Mer 11 Avr 2012 - 8:14

    re ,

    Voici l'algorithme que recherche une valeur dans un ListBox et ajoute à un ComboBox les résultats :
    Le code est :
    Code:

    If TextBox2.Text <> "" Then

                TextBox2.Text = (TextBox2.Text).ToUpper()
                Button2.Enabled = True
                ComboBox1.Items.Clear()
                Dim Str As String, i As Long
                For i = 0 To ListBox1.Items.Count - 1
                    Str = ListBox1.Items(i)

                    If InStr(1, Str, TextBox2.Text) <> 0 Then
                        ComboBox1.Items.Add(Str)
                    End If

                Next i
                Label5.Text = "Trouvé : " & ComboBox1.Items.Count
                If ComboBox1.Items.Count = 0 Then

                    If MessageBox.Show("La recherche n'a donné aucun résultat ." & System.Environment.NewLine & "Voulez-vous rechercher sur internet ?", "Aucun résultats trouvés", MessageBoxButtons.YesNo, MessageBoxIcon.Exclamation, MessageBoxDefaultButton.Button1) = Windows.Forms.DialogResult.Yes Then
                        System.Diagnostics.Process.Start("http://www.google.fr/?q=" & TextBox2.Text & "#hl=fr&output=search&sclient=psy-ab&q=" & TextBox2.Text)
                        ' http://www.google.fr/?q=DWA%20108#hl=fr&output=search&sclient=psy-ab&q=DWA+108
                    End If

                End If
            Else
                Button2.Enabled = False
                MsgBox("Sasie vide !!!")
            End If
    Ce code est à placer dans l'évènement Click du bouton recherche .
    TextBox2 est la valeur à rechercher ; Button2 est le bouton recherhce ; ComboBox1 où est stocké les résultats ;
    ListBox1 la liste des éléments ; Label5 indique le nbx de résultats trouvés .
    Si il n'y as aucun résultats , on lance une recherche Google de la valeur à rechercher .

    Comme le but n'est pas de réaliser un projet VB mais SZ ( 2011 ) je vais refaire ce petit programme en SZ 2011.
    Peut-être SZ 2012 .....

    NOTE : Cette fonction recherche n'est pas fiable à 100% mais c'est déjà bien !
    Si il n'y as pas de résultats , essayez plusieurs valeurs de recherches différentes .

    Cordialement ,
    Le réparateur de PC
    Admin
    Admin
    Administrateur
    Administrateur


    Masculin Nombre de messages : 1882
    Age : 32
    Localisation : Boulogne Billancourt(92100)(France)
    Emploi/loisirs : Software Development Engineer
    Date d'inscription : 24/01/2008

    Réaliser une base de données Empty Re: Réaliser une base de données

    Message par Admin Mer 11 Avr 2012 - 9:16

    Bonjour,

    Pas mal pas mal Very Happy
    Content de voir que SZ permet d'apprendre à "programmer" avant d'apprendre à "coder" Wink

    Bonne continuation Smile
    lereparateurdepc
    lereparateurdepc



    Masculin Nombre de messages : 5622
    Age : 32
    Localisation : Calvados
    Emploi/loisirs : Electrotechnicien / électricité, HAUTE TENSION, électronique, informatique, automatisme , Arduino, bref le BRICOLAGE , ...
    Humeur : toujours cool
    Date d'inscription : 31/01/2010

    Réaliser une base de données Empty Re: Réaliser une base de données

    Message par lereparateurdepc Mer 11 Avr 2012 - 9:22

    re ,

    Le plus compliqué , c'est de faire le chemin inverse ....
    Partire d'un code Vb et le mettre en SZ Smile CAR mon programme n'utilise qu'une seule variable ....
    Sous SZ , il y en as pas mal !
    Il faut tout décompacter pour SZ si on ne vaux pas passer par du VB .

    Cordialement ,
    Le réparateur de PC

    Admin
    Admin
    Administrateur
    Administrateur


    Masculin Nombre de messages : 1882
    Age : 32
    Localisation : Boulogne Billancourt(92100)(France)
    Emploi/loisirs : Software Development Engineer
    Date d'inscription : 24/01/2008

    Réaliser une base de données Empty Re: Réaliser une base de données

    Message par Admin Mer 11 Avr 2012 - 9:26

    Exacte, c'est inconvénient, mais bon, SZ a été conçu pour apprendre PUIS passer de SZ au code et non l'inverse Wink
    polien
    polien



    Masculin Nombre de messages : 3003
    Age : 28
    Localisation : Bouches du Rhones
    Emploi/loisirs : velo, informatique, électronique, robotique, modélisme feroviaire
    Humeur : Je commence tout mais ne finit rien :P
    Date d'inscription : 19/05/2011

    Réaliser une base de données Empty Re: Réaliser une base de données

    Message par polien Mer 11 Avr 2012 - 9:36

    re,

    il faudrait faire un visual studio avec l'interface de SZ2012 amusé (c'est vrai que c'est plus facile même quand on connait le vb.net de programmer avec SZ qu'avec visual basic Wink )
    lereparateurdepc
    lereparateurdepc



    Masculin Nombre de messages : 5622
    Age : 32
    Localisation : Calvados
    Emploi/loisirs : Electrotechnicien / électricité, HAUTE TENSION, électronique, informatique, automatisme , Arduino, bref le BRICOLAGE , ...
    Humeur : toujours cool
    Date d'inscription : 31/01/2010

    Réaliser une base de données Empty Re: Réaliser une base de données

    Message par lereparateurdepc Mer 11 Avr 2012 - 9:44

    re ,

    Oui mais sous SZ , les codes sont plus long .
    Pour faire ceci :
    Code:

     ListBox1.Items.Add((ListFichiers(XListFichiers).SubString(FolderBrowserDialog1.SelectedPath.Length + 1, ListFichiers(XListFichiers).length - 5 - FolderBrowserDialog1.SelectedPath.Length)).ToUpper())
    sous SZ , il faut faire ceci ( affichage du code sous SZ ):
    Code:

    FichieActuel = "" & ListeFichiers(XListFichiers) & ""
    TailleDossier = (FolderBrowserDialogResult).Length()
    TailleFichierActuel = (FichieActuel).Length()
    NomFichier = (FichieActuel).SubString(TailleDossier + 1,TailleFichierActuel - 5 - TailleDossier)
    NomFichierMAJ = ("" & NomFichier & "").ToUpper()
    Me.ListBox1.Items.Add("" & NomFichierMAJ & "")
    Et encaure , j'ai simplifié le calcul simple que j'ai intégré dans l'action récupérer une sous chaine ...

    Mais , il est vrai , que sous SZ les 9/10 eme du temps ,on ne cherche pas les codes ! , c'est plus intuitif , plus pédagogique surtout sous SZ2012 où les nom sont en Français .

    Cordialement ,
    Le réparateur de PC
    polien
    polien



    Masculin Nombre de messages : 3003
    Age : 28
    Localisation : Bouches du Rhones
    Emploi/loisirs : velo, informatique, électronique, robotique, modélisme feroviaire
    Humeur : Je commence tout mais ne finit rien :P
    Date d'inscription : 19/05/2011

    Réaliser une base de données Empty Re: Réaliser une base de données

    Message par polien Mer 11 Avr 2012 - 10:03

    et puis dans le code:
    Code:
    ListBox1.Items.Add((ListFichiers(XListFichiers).SubString(FolderBrowserDialog1.SelectedPath.Length + 1, ListFichiers(XListFichiers).length - 5 - FolderBrowserDialog1.SelectedPath.Length)).ToUpper())
    il y a des risques qu'on s'emmèle même avec les commentaires, le code sur sz est plus long mais plus clair Wink



    lereparateurdepc
    lereparateurdepc



    Masculin Nombre de messages : 5622
    Age : 32
    Localisation : Calvados
    Emploi/loisirs : Electrotechnicien / électricité, HAUTE TENSION, électronique, informatique, automatisme , Arduino, bref le BRICOLAGE , ...
    Humeur : toujours cool
    Date d'inscription : 31/01/2010

    Réaliser une base de données Empty Re: Réaliser une base de données

    Message par lereparateurdepc Mer 11 Avr 2012 - 10:54

    re ,

    Oui , c'est le but de SZ , être clair , faire comprendre un fonctionement .
    Si tu ne comprend pas trop le code , normalement , en regardant le code Sz ,c'est mieux ....

    Voici le projet SZ ( il est identique au projet VB sauf les 2 messages ) .
    Pour le faire fonctionner , placer plusieurs PDF dans un même dossier PAS de sous dossiers
    Sélèctionnez ce dossier et la liste nos nom de PDF s'affichera ; doubble cliquez sur un non , et le PDF s'ouvrira .
    Si vous ne trouvez pas le PDF , sasissez des caractère de recherche .
    Si il ne trouve rien , il lance une recherche Google sur l'élément de recherche sasi .

    Le lien :
    http://lereparateurdepc.olympe-network.com/sz_tmp/DataSheetLooker_SZ_EDIT.exe

    Cordialement ,
    Le réparateur de PC
    JHPC-Software
    JHPC-Software
    Connaisseur
    Connaisseur


    Masculin Nombre de messages : 761
    Age : 31
    Localisation : Bruxelles
    Emploi/loisirs : Etudiant en informatique / Informatique, Electronique, ...
    Humeur : Très bonne
    Date d'inscription : 07/01/2011

    Réaliser une base de données Empty Re: Réaliser une base de données

    Message par JHPC-Software Mer 11 Avr 2012 - 11:49

    Bonjour,
    Fin du moment que les codes fonctionne ...

    Polien dit :
    il faudrait faire un visual studio avec l'interface de SZ2012 ^^ (c'est vrai que c'est plus facile même quand on connait le vb.net de programmer avec SZ qu'avec visual basic )
    Je pense que c'est possible, Bien sûr ce sera sur Visual basic, pour la création d'un tel projet mais cela demande beaucoup de travail et beaucoup de courage et si il y a des problèmes de codage de l'aide serais aussi un bon élément...

    Cordialement,
    JHPC
    polien
    polien



    Masculin Nombre de messages : 3003
    Age : 28
    Localisation : Bouches du Rhones
    Emploi/loisirs : velo, informatique, électronique, robotique, modélisme feroviaire
    Humeur : Je commence tout mais ne finit rien :P
    Date d'inscription : 19/05/2011

    Réaliser une base de données Empty Re: Réaliser une base de données

    Message par polien Mer 11 Avr 2012 - 12:05

    re,

    eh ben Lereparateurdepc j'ai qu'un mot à dire: Shocked Commentquilafait!!!!
    clean! mais j'ai une question: comment tu fait pour que quand l'utilisateur ne tape qu'une partie du fichier pdf à rechercher, la recherche ait quand même des résultats?

    lereparateurdepc
    lereparateurdepc



    Masculin Nombre de messages : 5622
    Age : 32
    Localisation : Calvados
    Emploi/loisirs : Electrotechnicien / électricité, HAUTE TENSION, électronique, informatique, automatisme , Arduino, bref le BRICOLAGE , ...
    Humeur : toujours cool
    Date d'inscription : 31/01/2010

    Réaliser une base de données Empty Re: Réaliser une base de données

    Message par lereparateurdepc Mer 11 Avr 2012 - 12:18

    re ,

    C'est le but d'une recherche .....

    L'algo est donné sur la page précédente .
    Le code de recherche à proprement parler est :
    Code:

    If InStr(1, Str, TextBox2.Text) <> 0 Then
                        ComboBox1.Items.Add(Str)
                    End If

    le InStr veux dire rechercher DANS ( In ) la variable Str .
    la systaxe : InStr(1, Str, TextBox2.Text)
    Soit : InLa_Variable_Text(Caractère de démarrage, La_Variable_Text , Caractère de recherche)

    Il recherche le caractère de recherche dans chaque ligne du ListBox .
    Le code retourne la position du caractère de recherche dans la ligne lu si il n'y est pas , il prend la valeur 0 car 1 est le premier caractère . Si ce code retourne un nbx <> de 0 , on ajoute l'item ai ComboBox .

    Cordialement ,
    Le réparateur de PC
    polien
    polien



    Masculin Nombre de messages : 3003
    Age : 28
    Localisation : Bouches du Rhones
    Emploi/loisirs : velo, informatique, électronique, robotique, modélisme feroviaire
    Humeur : Je commence tout mais ne finit rien :P
    Date d'inscription : 19/05/2011

    Réaliser une base de données Empty Re: Réaliser une base de données

    Message par polien Mer 11 Avr 2012 - 12:23

    ah oké!
    je m'endormirai par c*n ce soir ^^

    Contenu sponsorisé


    Réaliser une base de données Empty Re: Réaliser une base de données

    Message par Contenu sponsorisé


      La date/heure actuelle est Jeu 21 Nov 2024 - 14:43