From 4384f099bd675d2e391b9a0d96e5434f3cf4704e Mon Sep 17 00:00:00 2001 From: Jennifer Scheuerell Date: Sat, 5 Jul 2025 11:30:21 -0700 Subject: [PATCH 1/4] Update gas and add elec billreduc --- V25.1/BillReduction/BillReducElec.sql | 28 +++++++++++++++++++++++++++ V25.1/BillReduction/BillReducGas.sql | 5 +++-- 2 files changed, 31 insertions(+), 2 deletions(-) create mode 100644 V25.1/BillReduction/BillReducElec.sql diff --git a/V25.1/BillReduction/BillReducElec.sql b/V25.1/BillReduction/BillReducElec.sql new file mode 100644 index 0000000..5f87137 --- /dev/null +++ b/V25.1/BillReduction/BillReducElec.sql @@ -0,0 +1,28 @@ +-- BillReducElec +-- 20250703 + +SUM( + CASE + WHEN NOT ISNULL(ft.FuelType,0) = '0' + OR (kWh1 * (ISNULL(RateE1, 0) + ISNULL(RateEFrac1,0)) + kWh2 * (ISNULL(RateEFrac2_1,0)+ISNULL(RateE2,0)+ISNULL(RateEFrac2_2,0))) > 0 + THEN ISNULL( + Qty * + IR * + RR * + ( NTGRkWh + @MEBens ) * + ( + kWh1 * + ( + ISNULL( RateE1, 0 ) + + ISNULL( RateEFrac1, 0 ) + ) + + kWh2 * + ( + ISNULL( RateEFrac2_1, 0 ) + + ISNULL( RateE2, 0 ) + + ISNULL( RateEFrac2_2, 0 ) + ) + ), 0 + ) + ELSE 0 + END) \ No newline at end of file diff --git a/V25.1/BillReduction/BillReducGas.sql b/V25.1/BillReduction/BillReducGas.sql index d1b1641..a117e85 100644 --- a/V25.1/BillReduction/BillReducGas.sql +++ b/V25.1/BillReduction/BillReducGas.sql @@ -1,8 +1,9 @@ --- BillReducGas 20250703 +-- BillReducGas +-- 20250705 SUM( CASE - WHEN NOT ISNULL(ft.FuelType,0) = '0' AND (Thm1 (ISNULL(RateG1, 0) + ISNULL(RateGFrac1,0)) + Thm2 (ISNULL(RateGFrac2_1,0)+ISNULL(RateG2,0)+ISNULL(RateGFrac2_2,0)))<0 + WHEN NOT ISNULL(ft.FuelType,0) = '0' OR (Thm1 (ISNULL(RateG1, 0) + ISNULL(RateGFrac1,0)) + Thm2 (ISNULL(RateGFrac2_1,0)+ISNULL(RateG2,0)+ISNULL(RateGFrac2_2,0))) > 0 THEN ISNULL( -Qty * From d660e90d2aee5a254c53e4aa1bf18206cf75decb Mon Sep 17 00:00:00 2001 From: Jennifer Scheuerell Date: Sat, 5 Jul 2025 11:42:56 -0700 Subject: [PATCH 2/4] Add full set of bill calculations --- .gitignore | 3 +- V25.1/Bill/BillIncrElec.sql | 28 ++++++++++++++++++ V25.1/Bill/BillIncrGas.sql | 29 +++++++++++++++++++ .../{BillReduction => Bill}/BillReducElec.sql | 0 .../{BillReduction => Bill}/BillReducGas.sql | 0 5 files changed, 59 insertions(+), 1 deletion(-) create mode 100644 V25.1/Bill/BillIncrElec.sql create mode 100644 V25.1/Bill/BillIncrGas.sql rename V25.1/{BillReduction => Bill}/BillReducElec.sql (100%) rename V25.1/{BillReduction => Bill}/BillReducGas.sql (100%) diff --git a/.gitignore b/.gitignore index 7b004e5..b3d7101 100644 --- a/.gitignore +++ b/.gitignore @@ -191,4 +191,5 @@ cython_debug/ # exclude from AI features like autocomplete and code analysis. Recommended for sensitive data # refer to https://docs.cursor.com/context/ignore-files .cursorignore -.cursorindexingignore \ No newline at end of file +.cursorindexingignore +V25.1/.DS_Store diff --git a/V25.1/Bill/BillIncrElec.sql b/V25.1/Bill/BillIncrElec.sql new file mode 100644 index 0000000..1d7b83c --- /dev/null +++ b/V25.1/Bill/BillIncrElec.sql @@ -0,0 +1,28 @@ +-- BillIncrElec +-- 20250703 + +SUM( + CASE + WHEN NOT ISNULL(ft.FuelType,0) = '0' + AND (kWh1 * (ISNULL(RateE1, 0) + ISNULL(RateEFrac1,0)) + kWh2 * (ISNULL(RateEFrac2_1,0)+ISNULL(RateE2,0)+ISNULL(RateEFrac2_2,0))) < 0 + THEN ISNULL( + -Qty * + IR * + RR * + ( NTGRkWh + @MEBens ) * + ( + kWh1 * + ( + ISNULL( RateE1, 0 ) + + ISNULL( RateEFrac1, 0 ) + ) + + kWh2 * + ( + ISNULL( RateEFrac2_1, 0 ) + + ISNULL( RateE2, 0 ) + + ISNULL( RateEFrac2_2, 0 ) + ) + ), 0 + ) + ELSE 0 + END) \ No newline at end of file diff --git a/V25.1/Bill/BillIncrGas.sql b/V25.1/Bill/BillIncrGas.sql new file mode 100644 index 0000000..3758135 --- /dev/null +++ b/V25.1/Bill/BillIncrGas.sql @@ -0,0 +1,29 @@ +-- BillIncrGas +-- 20250703 + +SUM( + CASE + WHEN ISNULL(ft.FuelType,0) = '0' + AND (Thm1 * (ISNULL(RateG1, 0) + ISNULL(RateGFrac1,0)) + Thm2 * (ISNULL(RateGFrac2_1,0)+ISNULL(RateG2,0)+ISNULL(RateGFrac2_2,0))) < 0 + THEN + ISNULL( + Qty * + IR * + RR * + ( NTGRThm + @MEBens ) * + ( + Thm1 * + ( + ISNULL( RateG1, 0 ) + + ISNULL( RateGFrac1, 0 ) + ) + + Thm2 * + ( + ISNULL( RateGFrac2_1, 0 ) + + ISNULL( RateG2, 0 ) + + ISNULL( RateGFrac2_2, 0 ) + ) + ), 0 + ) + ELSE 0 + END) \ No newline at end of file diff --git a/V25.1/BillReduction/BillReducElec.sql b/V25.1/Bill/BillReducElec.sql similarity index 100% rename from V25.1/BillReduction/BillReducElec.sql rename to V25.1/Bill/BillReducElec.sql diff --git a/V25.1/BillReduction/BillReducGas.sql b/V25.1/Bill/BillReducGas.sql similarity index 100% rename from V25.1/BillReduction/BillReducGas.sql rename to V25.1/Bill/BillReducGas.sql From 3d183f3a9307096711d005ff2c63fc20ef46d8db Mon Sep 17 00:00:00 2001 From: Jennifer Scheuerell Date: Sat, 5 Jul 2025 11:48:40 -0700 Subject: [PATCH 3/4] Add NOT to billincrgas logic and make formating consistent for billreducgas --- V25.1/Bill/BillIncrGas.sql | 4 ++-- V25.1/Bill/BillReducGas.sql | 3 ++- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/V25.1/Bill/BillIncrGas.sql b/V25.1/Bill/BillIncrGas.sql index 3758135..e5299b5 100644 --- a/V25.1/Bill/BillIncrGas.sql +++ b/V25.1/Bill/BillIncrGas.sql @@ -1,9 +1,9 @@ -- BillIncrGas --- 20250703 +-- 20250705 SUM( CASE - WHEN ISNULL(ft.FuelType,0) = '0' + WHEN NOT ISNULL(ft.FuelType,0) = '0' AND (Thm1 * (ISNULL(RateG1, 0) + ISNULL(RateGFrac1,0)) + Thm2 * (ISNULL(RateGFrac2_1,0)+ISNULL(RateG2,0)+ISNULL(RateGFrac2_2,0))) < 0 THEN ISNULL( diff --git a/V25.1/Bill/BillReducGas.sql b/V25.1/Bill/BillReducGas.sql index a117e85..ce02750 100644 --- a/V25.1/Bill/BillReducGas.sql +++ b/V25.1/Bill/BillReducGas.sql @@ -3,7 +3,8 @@ SUM( CASE - WHEN NOT ISNULL(ft.FuelType,0) = '0' OR (Thm1 (ISNULL(RateG1, 0) + ISNULL(RateGFrac1,0)) + Thm2 (ISNULL(RateGFrac2_1,0)+ISNULL(RateG2,0)+ISNULL(RateGFrac2_2,0))) > 0 + WHEN NOT ISNULL(ft.FuelType,0) = '0' + OR (Thm1 (ISNULL(RateG1, 0) + ISNULL(RateGFrac1,0)) + Thm2 (ISNULL(RateGFrac2_1,0)+ISNULL(RateG2,0)+ISNULL(RateGFrac2_2,0))) > 0 THEN ISNULL( -Qty * From c57b8232ab2ab49df604489fdc5b9365ef4004ea Mon Sep 17 00:00:00 2001 From: Jennifer Scheuerell Date: Sat, 5 Jul 2025 11:58:10 -0700 Subject: [PATCH 4/4] Remove minus before Qty --- V25.1/Bill/BillIncrElec.sql | 2 +- V25.1/Bill/BillReducGas.sql | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/V25.1/Bill/BillIncrElec.sql b/V25.1/Bill/BillIncrElec.sql index 1d7b83c..9f12add 100644 --- a/V25.1/Bill/BillIncrElec.sql +++ b/V25.1/Bill/BillIncrElec.sql @@ -6,7 +6,7 @@ SUM( WHEN NOT ISNULL(ft.FuelType,0) = '0' AND (kWh1 * (ISNULL(RateE1, 0) + ISNULL(RateEFrac1,0)) + kWh2 * (ISNULL(RateEFrac2_1,0)+ISNULL(RateE2,0)+ISNULL(RateEFrac2_2,0))) < 0 THEN ISNULL( - -Qty * + Qty * IR * RR * ( NTGRkWh + @MEBens ) * diff --git a/V25.1/Bill/BillReducGas.sql b/V25.1/Bill/BillReducGas.sql index ce02750..cac626f 100644 --- a/V25.1/Bill/BillReducGas.sql +++ b/V25.1/Bill/BillReducGas.sql @@ -7,7 +7,7 @@ SUM( OR (Thm1 (ISNULL(RateG1, 0) + ISNULL(RateGFrac1,0)) + Thm2 (ISNULL(RateGFrac2_1,0)+ISNULL(RateG2,0)+ISNULL(RateGFrac2_2,0))) > 0 THEN ISNULL( - -Qty * + Qty * IR * RR * ( NTGRThm + @MEBens ) *