diff --git a/pycen/sicen2/obs.py b/pycen/sicen2/obs.py index 10163f8..d3230f6 100644 --- a/pycen/sicen2/obs.py +++ b/pycen/sicen2/obs.py @@ -145,22 +145,30 @@ def get_obs_serena(insicen:bool=None): .dropna(axis=1,how='all') - def refresh_vm(): + '''Rafraichissement de la vue materialisée vm_synthese_observations''' sql = "REFRESH MATERIALIZED VIEW saisie.vm_synthese_observations WITH DATA;" with con_sicen.begin() as cnx: cnx.execute(sql) -def etude(): + +def etude(with_data:bool=True): + '''Liste les études associées ou non à de la données''' from pandas import read_sql_query - sql = 'SELECT * FROM md.etude' + sql = 'SELECT e.* FROM md.etude e WHERE e.id_etude' + if with_data is True : sql += ' IN ' + else : sql += ' NOT IN ' + + sql += '(SELECT id_etude FROM saisie.saisie_observation)' return read_sql_query(sql, con_sicen) + def lot(): from pandas import read_sql_query sql = 'SELECT * FROM md.lot' return read_sql_query(sql, con_sicen) + def protocole(): from pandas import read_sql_query sql = 'SELECT * FROM md.protocole'