lmi-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[lmi-commits] [lmi] master a10b0bb 5/5: Expunge weird "0%" columns from


From: Greg Chicares
Subject: [lmi-commits] [lmi] master a10b0bb 5/5: Expunge weird "0%" columns from GUI [353]
Date: Tue, 29 Jan 2019 18:07:37 -0500 (EST)

branch: master
commit a10b0bb14936864a6a3c81efdf69202528e7585b
Author: Gregory W. Chicares <address@hidden>
Commit: Gregory W. Chicares <address@hidden>

    Expunge weird "0%" columns from GUI [353]
    
    See:
      https://lists.nongnu.org/archive/html/lmi/2019-01/msg00038.html
---
 input_harmonization.cpp | 35 -----------------------------------
 input_xml_io.cpp        | 20 ++++++++++++++++++++
 mc_enum_types.cpp       |  2 +-
 mc_enum_types.xpp       | 24 ------------------------
 preferences_model.cpp   | 27 ---------------------------
 5 files changed, 21 insertions(+), 87 deletions(-)

diff --git a/input_harmonization.cpp b/input_harmonization.cpp
index 8e97bb2..f584ad4 100644
--- a/input_harmonization.cpp
+++ b/input_harmonization.cpp
@@ -822,41 +822,6 @@ false // Silly workaround for now.
     SupplementalReportColumn09.enable(create_supplemental_report);
     SupplementalReportColumn10.enable(create_supplemental_report);
     SupplementalReportColumn11.enable(create_supplemental_report);
-
-    // TODO ?? EGREGIOUS_DEFECT: instead, don't offer these columns at all. 
See:
-    //   http://lists.nongnu.org/archive/html/lmi/2009-09/msg00012.html
-    std::vector<mcenum_report_column> weird_report_columns;
-    weird_report_columns.push_back(mce_current_0_account_value_general_account 
   );
-    
weird_report_columns.push_back(mce_guaranteed_0_account_value_general_account );
-    
weird_report_columns.push_back(mce_current_0_account_value_separate_account   );
-    
weird_report_columns.push_back(mce_guaranteed_0_account_value_separate_account);
-    weird_report_columns.push_back(mce_current_0_account_value                 
   );
-    weird_report_columns.push_back(mce_guaranteed_0_account_value              
   );
-    weird_report_columns.push_back(mce_current_0_cash_surrender_value          
   );
-    weird_report_columns.push_back(mce_guaranteed_0_cash_surrender_value       
   );
-
-    bool enable_weirdness =
-           allow_gen_acct
-        && allow_sep_acct
-        && 0.0 < InforceGeneralAccountValue .value()
-        && 0.0 < InforceSeparateAccountValue.value()
-        ;
-
-    for(auto const& i : weird_report_columns)
-        {
-        SupplementalReportColumn00.allow(i, enable_weirdness);
-        SupplementalReportColumn01.allow(i, enable_weirdness);
-        SupplementalReportColumn02.allow(i, enable_weirdness);
-        SupplementalReportColumn03.allow(i, enable_weirdness);
-        SupplementalReportColumn04.allow(i, enable_weirdness);
-        SupplementalReportColumn05.allow(i, enable_weirdness);
-        SupplementalReportColumn06.allow(i, enable_weirdness);
-        SupplementalReportColumn07.allow(i, enable_weirdness);
-        SupplementalReportColumn08.allow(i, enable_weirdness);
-        SupplementalReportColumn09.allow(i, enable_weirdness);
-        SupplementalReportColumn10.allow(i, enable_weirdness);
-        SupplementalReportColumn11.allow(i, enable_weirdness);
-        }
 }
 
 /// Change values as required for consistency.
diff --git a/input_xml_io.cpp b/input_xml_io.cpp
index 411d0d6..72aecaf 100644
--- a/input_xml_io.cpp
+++ b/input_xml_io.cpp
@@ -181,6 +181,9 @@ void Input::redintegrate_ex_ante
 {
     if(class_version() == file_version)
         {
+        // INPUT !! Next time the class version is updated,
+        // remove this 'goto' and its label.
+        goto jumper;
         return;
         }
 
@@ -341,6 +344,23 @@ void Input::redintegrate_ex_ante
             value = value_cast<std::string>(value_cast<double>(value) / 
10000.0);
             }
         }
+
+    if(file_version < 10)
+        {
+  jumper:
+        // Prior to 2019-01-30, weird "Zero" columns were available
+        // for some supplemental reports. The manual report that used
+        // them having been automated, they've been withdrawn. For
+        // backward compatibility, they're silently ignored wherever
+        // they occurred in old input files.
+        if
+            (  contains(name, "SupplementalReportColumn")
+            && contains(value, "Zero")
+            )
+            {
+            value = "[none]";
+            }
+        }
 }
 
 void Input::redintegrate_ex_post
diff --git a/mc_enum_types.cpp b/mc_enum_types.cpp
index 798fed7..ed5cdad 100644
--- a/mc_enum_types.cpp
+++ b/mc_enum_types.cpp
@@ -156,7 +156,7 @@ MC_DEFINE(part_mort_table,1)
 MC_DEFINE(premium_table,1)
 MC_DEFINE(from_point,4)
 MC_DEFINE(to_point,4)
-MC_DEFINE(report_column,63)
+MC_DEFINE(report_column,55)
 MC_DEFINE(suppl_illus_type,3)
 
 #undef MC_DEFINE
diff --git a/mc_enum_types.xpp b/mc_enum_types.xpp
index 37c8ab1..6725717 100644
--- a/mc_enum_types.xpp
+++ b/mc_enum_types.xpp
@@ -607,14 +607,6 @@
     ,mce_current_net_interest_credited \
     ,mce_current_sep_acct_charges \
     ,mce_current_policy_fee \
-    ,mce_current_0_account_value_general_account \
-    ,mce_guaranteed_0_account_value_general_account \
-    ,mce_current_0_account_value_separate_account \
-    ,mce_guaranteed_0_account_value_separate_account \
-    ,mce_current_0_account_value \
-    ,mce_guaranteed_0_account_value \
-    ,mce_current_0_cash_surrender_value \
-    ,mce_guaranteed_0_cash_surrender_value \
     };
 #define report_column_NAMES \
     {"[none]" \
@@ -672,14 +664,6 @@
     ,"NetIntCredited_Current" \
     ,"SepAcctCharges_Current" \
     ,"PolicyFee_Current" \
-    ,"AVGenAcct_CurrentZero" \
-    ,"AVGenAcct_GuaranteedZero" \
-    ,"AVSepAcct_CurrentZero" \
-    ,"AVSepAcct_GuaranteedZero" \
-    ,"AcctVal_CurrentZero" \
-    ,"AcctVal_GuaranteedZero" \
-    ,"CSVNet_CurrentZero" \
-    ,"CSVNet_GuaranteedZero" \
     };
 #if 0
 // TODO ?? Nicer-looking names--implement later.
@@ -739,14 +723,6 @@
     ,"Current Interest Credited Net of Separate Account Charges" \
     ,"Current Separate Account Asset Charges" \
     ,"Current Policy Fee" \
-    ,"Curr Charges Account Value General Account" \
-    ,"Guar Charges Account Value General Account" \
-    ,"Curr Charges 0% Account Value Separate Account" \
-    ,"Guar Charges 0% Account Value Separate Account" \
-    ,"Curr Charges 0% Account Value" \
-    ,"Guar Charges 0% Account Value" \
-    ,"Curr Charges 0% Net Cash Surrender Value" \
-    ,"Guar Charges 0% Net Cash Surrender Value" \
     };
 #endif // 0
 
diff --git a/preferences_model.cpp b/preferences_model.cpp
index 749444e..4dea77b 100644
--- a/preferences_model.cpp
+++ b/preferences_model.cpp
@@ -179,33 +179,6 @@ void PreferencesModel::DoHarmonize()
     CalculationSummaryColumn09.enable(do_not_use_builtin_defaults);
     CalculationSummaryColumn10.enable(do_not_use_builtin_defaults);
     CalculationSummaryColumn11.enable(do_not_use_builtin_defaults);
-
-    // TODO ?? EGREGIOUS_DEFECT: instead, don't offer these columns at all.
-    std::vector<mcenum_report_column> weird_report_columns;
-    weird_report_columns.push_back(mce_current_0_account_value_general_account 
   );
-    
weird_report_columns.push_back(mce_guaranteed_0_account_value_general_account );
-    
weird_report_columns.push_back(mce_current_0_account_value_separate_account   );
-    
weird_report_columns.push_back(mce_guaranteed_0_account_value_separate_account);
-    weird_report_columns.push_back(mce_current_0_account_value                 
   );
-    weird_report_columns.push_back(mce_guaranteed_0_account_value              
   );
-    weird_report_columns.push_back(mce_current_0_cash_surrender_value          
   );
-    weird_report_columns.push_back(mce_guaranteed_0_cash_surrender_value       
   );
-
-    for(auto const& i : weird_report_columns)
-        {
-        CalculationSummaryColumn00.allow(i, false);
-        CalculationSummaryColumn01.allow(i, false);
-        CalculationSummaryColumn02.allow(i, false);
-        CalculationSummaryColumn03.allow(i, false);
-        CalculationSummaryColumn04.allow(i, false);
-        CalculationSummaryColumn05.allow(i, false);
-        CalculationSummaryColumn06.allow(i, false);
-        CalculationSummaryColumn07.allow(i, false);
-        CalculationSummaryColumn08.allow(i, false);
-        CalculationSummaryColumn09.allow(i, false);
-        CalculationSummaryColumn10.allow(i, false);
-        CalculationSummaryColumn11.allow(i, false);
-        }
 }
 
 void PreferencesModel::DoTransmogrify()



reply via email to

[Prev in Thread] Current Thread [Next in Thread]