commit-gnue
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[gnue-contrib] r286 - address/forms


From: johannes
Subject: [gnue-contrib] r286 - address/forms
Date: Tue, 29 Jul 2008 04:10:15 -0500 (CDT)

Author: johannes
Date: 2008-07-29 04:10:14 -0500 (Tue, 29 Jul 2008)
New Revision: 286

Modified:
   address/forms/address.gfd
Log:
Optimierung der Performance


Modified: address/forms/address.gfd
===================================================================
--- address/forms/address.gfd   2008-07-29 08:44:27 UTC (rev 285)
+++ address/forms/address.gfd   2008-07-29 09:10:14 UTC (rev 286)
@@ -370,7 +370,6 @@
    blk_csv.set_filter()
    from gnue.common.utils import ucsv
    fieldnames = [
-           u"FID",
            u"FA/Firma1",
            u"FA/Firma2",
            u"FA/Straße",
@@ -395,16 +394,21 @@
            u"ASP/Filter3"]
 
    master = blk_company.get_data(['id'])
-   detail = blk_csv.get_data(fieldnames)
+   flist = ['FID']
+   flist.extend(fieldnames)
+   detail = blk_csv.get_data(flist)
 
+   dmap = {}
+   for row in detail:
+       dmap[int(row['FID'])] = row
+
    neu = []
    for row in master:
        mid = int(row['id'])
 
-       # haben wir ein Detail
-       for drow in detail:
-           if int(drow['FID']) == mid:
-               neu.append(drow)
+       drow = dmap.get(mid)
+       if drow:
+           neu.append(drow)
 
    ucsv.write_file(fieldnames, neu, fname,
            dialect="excel-tab", encoding="cp1250")





reply via email to

[Prev in Thread] Current Thread [Next in Thread]