aboutsummaryrefslogtreecommitdiffstats
path: root/python
diff options
context:
space:
mode:
Diffstat (limited to 'python')
-rw-r--r--python/citco_ops/remote.py7
-rw-r--r--python/isosel_reports.py8
2 files changed, 11 insertions, 4 deletions
diff --git a/python/citco_ops/remote.py b/python/citco_ops/remote.py
index 7570aa62..5ec50028 100644
--- a/python/citco_ops/remote.py
+++ b/python/citco_ops/remote.py
@@ -53,7 +53,10 @@ class Report:
if self.fname in filename
if type(self).ped_func(filename).date() == self.date
]
- return max(report_files, key=type(self).ped_func)
+ try:
+ return max(report_files, key=type(self).ped_func)
+ except ValueError:
+ raise ValueError(f"Missing data for {self.table}: {self.date}")
def to_df(self):
with self._sftp.client.open(self.most_recent_report) as fh:
@@ -62,13 +65,13 @@ class Report:
)
def to_db(self):
+ df = self.to_df()
with self._conn.cursor() as c:
c.execute(
f"DELETE FROM {self.table} WHERE period_end_date= %s",
(self.date,),
)
self._conn.commit()
- df = self.to_df()
df.to_sql(self.table, dawn_engine, if_exists="append", index=False)
diff --git a/python/isosel_reports.py b/python/isosel_reports.py
index a94563c9..b01cf90f 100644
--- a/python/isosel_reports.py
+++ b/python/isosel_reports.py
@@ -1,8 +1,9 @@
from citco_ops.remote import AccruedReport, AllReport
import datetime
from serenitas.analytics.dates import prev_business_day
+import logging
-
+logger = logging.getLogger(__name__)
if __name__ == "__main__":
import argparse
@@ -17,4 +18,7 @@ if __name__ == "__main__":
args = parser.parse_args()
for report_cls in AccruedReport, AllReport:
report = report_cls(args.date)
- report.to_db()
+ try:
+ report.to_db()
+ except ValueError as e:
+ logger.info(e)