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") _______________________________________________ commit-gnue mailing list commit-gnue@gnu.org http://lists.gnu.org/mailman/listinfo/commit-gnue