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 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76
|
def listeProduits(self, titre, notebook):
"""Retourne la liste des produits"""
#On ouvre la connexion Sql
sql = Sql()
requete = """SELECT produits.reference, produits.libelle, produits.stock, produits.prix, fournisseurs.raison
FROM produits, fournisseurs
WHERE fournisseurs.id = produits.idFournisseur
ORDER BY fournisseurs.raison ASC, produits.libelle ASC
"""
result = sql.query(requete)
#Creation du ListStore
store = gtk.ListStore(str, str, int, str, str)
#Insertion du résultat de la requete dans le List Store
for row in result:
#Convertion des encodages
reference = row[0].decode('latin1').encode('utf-8')
libelle = row[1].decode('latin1').encode('utf-8')
fournisseur = row[4].decode('latin1').encode('utf-8')
store.append([reference, libelle, row[2], '%.2f'%row[3], fournisseur])
treeView = gtk.TreeView(store)
treeView.set_rules_hint(True)
treeView.set_headers_clickable(False)
treeView.set_enable_search(False)
scrollWindow = gtk.ScrolledWindow()
scrollWindow.set_policy(gtk.POLICY_AUTOMATIC, gtk.POLICY_AUTOMATIC)
scrollWindow.add_with_viewport(treeView)
rendererText = gtk.CellRendererText()
column = gtk.TreeViewColumn("Réf.", rendererText, text=0)
column.set_sort_column_id(0)
column.set_expand(True)
column.set_resizable(True)
treeView.append_column(column)
rendererText = gtk.CellRendererText()
column = gtk.TreeViewColumn("Désignation", rendererText, text=1)
column.set_sort_column_id(1)
column.set_expand(True)
column.set_resizable(True)
treeView.append_column(column)
rendererText = gtk.CellRendererText()
column = gtk.TreeViewColumn("Stock", rendererText, text=2)
column.set_sort_column_id(2)
column.set_expand(True)
column.set_resizable(True)
treeView.append_column(column)
rendererText = gtk.CellRendererText()
column = gtk.TreeViewColumn("Prix", rendererText, text=3)
column.set_sort_column_id(3)
column.set_expand(True)
column.set_resizable(True)
treeView.append_column(column)
rendererText = gtk.CellRendererText()
column = gtk.TreeViewColumn("Fournisseur", rendererText, text=4)
column.set_sort_column_id(4)
column.set_expand(True)
column.set_resizable(True)
treeView.append_column(column)
self.label(titre)
page = notebook.append_page(scrollWindow, self.lab)
notebook.set_tab_reorderable(scrollWindow, True)
notebook.show_all()
notebook.set_current_page(page) |
Partager