fournisseur.show() renvoie toutes les adresses d'un fournisseur
authorThomas NOEL <thomas@new-dev.(none)>
Thu, 10 Jul 2008 23:28:13 +0000 (19:28 -0400)
committerThomas NOEL <thomas.noel@auf.org>
Thu, 10 Jul 2008 23:28:13 +0000 (19:28 -0400)
fournisseur.py

index 8f28aa4..597588e 100644 (file)
@@ -26,7 +26,6 @@ class fournisseur(Objet):
        cursor = self.cursor()
        if self.sqlwhere != '':
            self.sqlwhere = ' where ' + self.sqlwhere
-       # extraction des données
        request = "select top %d * from auf_v_acces_fournisseurs %s order by date_creation desc" % ( self.sqllimit, self.sqlwhere )
        cursor.execute( request )
        items = []
@@ -44,12 +43,33 @@ class fournisseur(Objet):
 
     def _get_fournisseur(self,code):
         """renvoie un fournisseur"""
+       # note : renvoie aussi la liste des adresses et pas seulement la premiere iteration trouvée
        cursor = self.cursor()
-       request = "select top 1 * from auf_v_acces_fournisseurs where (code = '%s')" % code
+       request = "select * from auf_v_acces_fournisseurs where (code = '%s') order by addresse_defaut desc" % code
        cursor.execute( request )
+       # le premier resultat est normalement l'adresse par defaut
         fournisseur = dict_fetchone(cursor)
        if fournisseur == None:
            raise ObjetInconnu('fournisseur')
+       autres_adresses = []
+       while 1:
+           # les resultats suivant contiennent les autres adresses
+           adr = dict_fetchone( cursor )
+           if adr == None: break
+           adr_extraite = { 'categorie': adr['categorie'] ,
+                            'adresse1': adr['addresse1'],
+                            'adresse2': adr['addresse2'],
+                            'adresse3': adr['addresse3'],
+                            'adresse4': adr['addresse4'],
+                            'adresse5': adr['addresse5'],
+                            'adresse6': adr['addresse6'],
+                            'adresse_code_postal': adr['addresse_code_postal'],
+                            'adresse_pays': adr['addresse_pays'],
+                            'adresse_telephone': adr['addresse_telephone'],
+                            'adresse_telecopie': adr['addresse_telecopie'],
+                            } 
+           autres_adresses.append(adr_extraite)
+        fournisseur['autres_adresses'] = autres_adresses
        fournisseur['requete_sql'] = request
         return fournisseur