From 990a3b9b573ac9026e874e4150ef9767983660f8 Mon Sep 17 00:00:00 2001 From: Derek Gengenbacher Date: Tue, 16 Aug 2022 15:06:42 -0600 Subject: [PATCH] Validate report year against month_day so that we do not get a key error in get_dates --- plugin/FERC/render.py | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/plugin/FERC/render.py b/plugin/FERC/render.py index ce09f894a9..b60ed0db8e 100644 --- a/plugin/FERC/render.py +++ b/plugin/FERC/render.py @@ -1368,12 +1368,6 @@ def get_dates(modelXbrl): report_year = year_match[1] if year_match is not None else None report_period = period_match[1].upper() if period_match is not None else None - if not report_year or not report_period: - raise FERCRenderException( - 'Cannot obtain a valid report year({year}) or report period({period}) from the XBRL document'.format( - year=report_year, period=report_period - ) - ) month_day = { 'Q4': ('01-01', '12-31'), 'Q3': ('01-01', '09-30'), @@ -1381,6 +1375,13 @@ def get_dates(modelXbrl): 'Q1': ('01-01', '03-31') } + if not report_year or report_period not in month_day: + raise FERCRenderException( + 'Cannot obtain a valid report year({year}) or report period({period}) from the XBRL document'.format( + year=report_year, period=report_period + ) + ) + return ( ('current-start={}-{}'.format(report_year, '01-01')), ('current-end={}-{}'.format(report_year, month_day[report_period][1])), @@ -2710,4 +2711,4 @@ def format_durhour(model_fact, *args, **kwargs): 'CntlrCmdLine.Xbrl.Loaded': cmdLineXbrlLoaded, #'CntlrWinMain.Menu.Tools': fercMenuTools, #'CntlrWinMain.Xbrl.Loaded': cmdLineXbrlLoaded, -} \ No newline at end of file +}