Diff for /ZSQLExtend/importFMPXML.py between versions 1.3 and 1.4

version 1.3, 2006/12/20 20:36:05 version 1.4, 2006/12/21 12:17:32
Line 40  def SimpleSearch(curs,query, args=None): Line 40  def SimpleSearch(curs,query, args=None):
         query = query.encode("UTF-8")          query = query.encode("UTF-8")
     curs.execute(query, args)      curs.execute(query, args)
     logging.debug("sql done")      logging.debug("sql done")
       try:
     return curs.fetchall()      return curs.fetchall()
       except:
           return None
   
   
 def importXMLFileFMP(dsn,table,filename,update_fields=None,id_field=None,sync_mode=False):  def importXMLFileFMP(dsn,table,filename,update_fields=None,id_field=None,sync_mode=False):
Line 154  def importXMLFileFMP(dsn,table,filename, Line 157  def importXMLFileFMP(dsn,table,filename,
                 setStr=string.join(setvals, ',')                  setStr=string.join(setvals, ',')
                 id_val=dataSet[id_field]                  id_val=dataSet[id_field]
                 qstr="UPDATE %s SET %s WHERE %s = '%s' "%(table,setStr,id_field,id_val)                  qstr="UPDATE %s SET %s WHERE %s = '%s' "%(table,setStr,id_field,id_val)
                 if psyco == 1:                  SimpleSearch(db, qstr)
                     qstr = qstr.encode("UTF-8")  
                 db.execute(qstr)  
                 ret += "up: %s"%id_val                  ret += "up: %s"%id_val
             else:              else:
                 # create new row                  # create new row
                 fields=string.join(update_fields, ',')                  fields=string.join(update_fields, ',')
                 values=string.join([" %s "%sql_quote(dataSet[x]) for x in update_fields], ',')                  values=string.join([" %s "%sql_quote(dataSet[x]) for x in update_fields], ',')
                 qstr="INSERT INTO %s (%s) VALUES (%s)"%(table,fields,values)                  qstr="INSERT INTO %s (%s) VALUES (%s)"%(table,fields,values)
                 if psyco == 1:                  SimpleSearch(db, qstr)
                     qstr = qstr.encode("UTF-8")  
                 db.execute(qstr)  
                 ret += "ad: %s"%dataSet.get(id_field, rowcnt)                  ret += "ad: %s"%dataSet.get(id_field, rowcnt)
   
             #logging.info(" row:"+"%d (%s)"%(rowcnt,id_val))              #logging.info(" row:"+"%d (%s)"%(rowcnt,id_val))
Line 181  def importXMLFileFMP(dsn,table,filename, Line 180  def importXMLFileFMP(dsn,table,filename,
             if dbIDs[id] == 0:              if dbIDs[id] == 0:
                 logging.info(" delete:"+id)                  logging.info(" delete:"+id)
                 qstr = "DELETE FROM %s WHERE %%s = '%%s'"%table                  qstr = "DELETE FROM %s WHERE %%s = '%%s'"%table
                 if psyco == 1:                  SimpleSearch(db, qstr, (id_field,id))
                     qstr = qstr.encode("UTF-8")  
                 db.execute(qstr, (id_field,id))  
                                   
             elif dbIDs[id] > 1:              elif dbIDs[id] > 1:
                 logging.info(" sync:"+"id used more than once?"+id)                  logging.info(" sync:"+"id used more than once?"+id)

Removed from v.1.3  
changed lines
  Added in v.1.4


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>