aboutsummaryrefslogtreecommitdiffstats
path: root/python
diff options
context:
space:
mode:
Diffstat (limited to 'python')
-rw-r--r--python/upload_bbh_trades.py24
1 files changed, 14 insertions, 10 deletions
diff --git a/python/upload_bbh_trades.py b/python/upload_bbh_trades.py
index 3f0d5e29..d3d4a958 100644
--- a/python/upload_bbh_trades.py
+++ b/python/upload_bbh_trades.py
@@ -49,6 +49,19 @@ def _serialize(obj):
return _include_headers_only(obj, headers)
+def process_upload(obj):
+ buf = StringIO()
+ csvwriter = csv.writer(buf)
+ csvwriter.writerow(headers)
+ csvwriter.writerow([obj.get(header, None) for header in headers])
+ buf = buf.getvalue().encode()
+ fname = f'LMCG_BBH_TRADES_P.{obj["Client Reference Number"].replace("_", "")}.csv'
+ dest = DAILY_DIR / str(datetime.date.today()) / fname
+ sftp = SftpClient.from_creds("bbh")
+ sftp.put(buf, fname)
+ dest.write_bytes(buf)
+
+
if __name__ == "__main__":
import argparse
@@ -83,13 +96,4 @@ if __name__ == "__main__":
except IntegrityError:
conn.rollback()
else:
- buf = StringIO()
- csvwriter = csv.writer(buf)
- csvwriter.writerow(headers)
- csvwriter.writerow([obj.get(header, None) for header in headers])
- buf = buf.getvalue().encode()
- fname = f'LMCG_BBH_TRADES_P.{obj["Client Reference Number"].replace("_", "")}.csv'
- dest = DAILY_DIR / str(datetime.date.today()) / fname
- sftp = SftpClient.from_creds("bbh")
- sftp.put(buf, fname)
- dest.write_bytes(buf)
+ process_upload(obj)