Ignore:
Timestamp:
2 Nov 2006, 10:56:46 (18 years ago)
Author:
joachim
Message:

view PUME result finalized,
export of PINs started

File:
1 edited

Legend:

Unmodified
Added
Removed
  • WAeUP_SRP/trunk/WAeUPTables.py

    r710 r780  
    2121from Globals import InitializeClass
    2222from Products.ZCatalog.ZCatalog import ZCatalog
     23from AccessControl import ClassSecurityInfo
     24from Products.CMFCore.permissions import ModifyPortalContent
     25
     26import DateTime
     27import csv,re
     28import logging
     29import Globals
     30p_home = Globals.package_home(globals())
     31i_home = Globals.INSTANCE_HOME
    2332
    2433from interfaces import IWAeUPTable
     
    3746   
    3847    implements(IWAeUPTable)
     48    security = ClassSecurityInfo()
    3949       
    4050    def addRecord(self, **data):
     
    7181        self.catalog_object(dict2ob(record_data), uid)
    7282
     83    security.declareProtected(ModifyPortalContent,"exportAllRecords")
     84    def exportAllRecords(self):
     85        "export a WAeUPTable"
     86        #import pdb;pdb.set_trace()
     87        fields = [field for field in self.schema()]
     88        format = ','.join(['"%%(%s)s"' % fn for fn in fields])
     89        csv = []
     90        csv.append(','.join(['"%s"' % fn for fn in fields]))
     91        for uid in self._catalog.uids:
     92            records = self.searchResults({"%s" % self.key : uid})
     93            if len(records) > 1:
     94                # Can not happen, but anyway...
     95                raise ValueError("More than one record with uid %s" % uid)
     96            if len(records) == 0:
     97                raise KeyError("No record for uid %s" % uid)
     98            rec = records[0]
     99            csv.append(format % rec)
     100        current = DateTime.DateTime().strftime("%d-%m-%y_%H_%M_%S")
     101        open("%s/import/%s-%s.csv" % (i_home,self.getId(),current),"w+").write('\n'.join(csv))
     102       
     103           
    73104class AccommodationTable(WAeUPTable):
    74105   
Note: See TracChangeset for help on using the changeset viewer.