Bonjour,

Je suis tout nouveau sur le forum ainsi qu'en programmation. Je suis en train de coder un logiciel qui permet une gestion de stock. J'ai une base de donnée SQLite3 et elle est affichée sur un Treeview.
Mon problème concerne la partie recherche de référence. J'ai réussi à coder le principe de base de la recherche et cela fonctionne très bien.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
# Method Search reference
def Searchref():
    selected = searchDrop.get()
    if selected == "Search by...":
        messagebox.showinfo("Error", "You must choose a type (PN, Shelf, Description, etc...")
    if selected == "Description":
        for x in tree.get_children():
            tree.delete(x)
        description = searchEntry.get()
        conn = sqlite3.connect('data/database.db')
        cursor = conn.cursor()
        select = cursor.execute("SELECT*FROM SIGO_Stock where description = ?", (description,))
        conn.commit()
        for row in select:
            tree.insert('', END, values=row)
        conn.close()
    if selected == "Part Number":
        for x in tree.get_children():
            tree.delete(x)
        partnumber = searchEntry.get()
        conn = sqlite3.connect('data/database.db')
        cursor = conn.cursor()
        select = cursor.execute("SELECT*FROM SIGO_Stock where partnumber = ?", (partnumber,))
        conn.commit()
        for row in select:
            tree.insert('', END, values=row)
        conn.close()
    if selected == "Serial Number":
        for x in tree.get_children():
            tree.delete(x)
        serialnumber = searchEntry.get()
        conn = sqlite3.connect('data/database.db')
        cursor = conn.cursor()
        select = cursor.execute("SELECT*FROM SIGO_Stock where serialnumber = ?", (serilanumber,))
        conn.commit()
        for row in select:
            tree.insert('', END, values=row)
        conn.close()
    if selected == "Shelf":
        for x in tree.get_children():
            tree.delete(x)
        shelf = searchEntry.get()
        conn = sqlite3.connect('data/database.db')
        cursor = conn.cursor()
        select = cursor.execute("SELECT*FROM SIGO_Stock where shelf = ?", (shelf,))
        conn.commit()
        for row in select:
            tree.insert('', END, values=row)
        conn.close()
    searchEntry.delete(0, 'end')
Si je tape la description "Lamp" il affiche toute les references avec le nom "Lamp". Cependant j'aimerai pouvoir faire une recherche qu'avec un nom ou un numéro de référence incomplet, voir même qu'une seule lettre. Et aussi que la recherche ne prend pas en compte les majuscules.
J'ai chercher partout ou je pouvais dû à mes connaissance limitées. Je viens donc vers vous pour de l'aide.

Merci d'avance pour vos réponses.

Fred.