Package Gnumed :: Package business :: Module gmDataMining
[frames] | no frames]

Source Code for Module Gnumed.business.gmDataMining

 1  """GNUmed data mining middleware.""" 
 2  #============================================================ 
 3  # $Source: /home/ncq/Projekte/cvs2git/vcs-mirror/gnumed/gnumed/client/business/gmDataMining.py,v $ 
 4  # $Id: gmDataMining.py,v 1.3 2008-01-05 23:24:29 ncq Exp $ 
 5  __license__ = "GPL" 
 6  __version__ = "$Revision: 1.3 $" 
 7  __author__ = "K.Hilbert <Karsten.Hilbert@gmx.net>" 
 8   
 9   
10  import sys 
11   
12   
13  if __name__ == '__main__': 
14          sys.path.insert(0, '../../') 
15  from Gnumed.pycommon import gmPG2 
16   
17   
18  #============================================================ 
19 -def report_exists(name=None):
20 rows, idx = gmPG2.run_ro_queries(queries = [{ 21 'cmd': u'select exists(select 1 from cfg.report_query where label=%(name)s)', 22 'args': {'name': name} 23 }]) 24 return rows[0][0]
25 #--------------------------------------------------------
26 -def save_report_definition(name=None, query=None, overwrite=False):
27 if not overwrite: 28 if report_exists(name=name): 29 return False 30 31 queries = [ 32 {'cmd': u'delete from cfg.report_query where label=%(name)s', 'args': {'name': name}}, 33 {'cmd': u'insert into cfg.report_query (label, cmd) values (%(name)s, %(query)s)', 34 'args': {'name': name, 'query': query}} 35 ] 36 rows, idx = gmPG2.run_rw_queries(queries=queries) 37 return True
38 #--------------------------------------------------------
39 -def delete_report_definition(name=None):
40 queries = [{ 41 'cmd': u'delete from cfg.report_query where label=%(name)s', 42 'args': {'name': name} 43 }] 44 rows, idx = gmPG2.run_rw_queries(queries=queries) 45 return True
46 #============================================================ 47 if __name__ == '__main__': 48 49 if len(sys.argv) > 1 and sys.argv[1] == 'test': 50 test_report = u'test suite report' 51 test_query = u'select 1 as test_suite_report_result' 52 53 print "delete (should work):", delete_report_definition(name = test_report) 54 print "check (should return False):", report_exists(name = test_report) 55 print "save (should work):", save_report_definition(name = test_report, query = test_query) 56 print "save (should fail):", save_report_definition(name = test_report, query = test_query, overwrite = False) 57 print "save (should work):", save_report_definition(name = test_report, query = test_query, overwrite = True) 58 print "delete (should work):", delete_report_definition(name = test_report) 59 print "check (should return False):", report_exists(name = test_report) 60 #============================================================ 61