lmi-commits
[Top][All Lists]
Advanced

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

[lmi-commits] [lmi] valyuta/007 0c6db285 1/7: Change several more ledger


From: Greg Chicares
Subject: [lmi-commits] [lmi] valyuta/007 0c6db285 1/7: Change several more ledger fields to cents
Date: Wed, 20 Apr 2022 20:05:04 -0400 (EDT)

branch: valyuta/007
commit 0c6db285466f22375a9c469c60e6060b40f1f7fb
Author: Gregory W. Chicares <gchicares@sbcglobal.net>
Commit: Gregory W. Chicares <gchicares@sbcglobal.net>

    Change several more ledger fields to cents
---
 accountvalue.cpp        | 10 +++++-----
 ihs_acctval.cpp         |  6 +++---
 ihs_avmly.cpp           |  6 +++---
 ledger.cpp              |  2 +-
 ledger_evaluator.cpp    |  8 ++++----
 ledger_text_formats.cpp | 10 +++++-----
 6 files changed, 21 insertions(+), 21 deletions(-)

diff --git a/accountvalue.cpp b/accountvalue.cpp
index 7a3118de..b8c618a8 100644
--- a/accountvalue.cpp
+++ b/accountvalue.cpp
@@ -351,8 +351,8 @@ void AccountValue::DoYear
     InvariantValues().GrossPmt[Year] += 
dblize(std::accumulate(GrossPmts.begin(), GrossPmts.end(), C0));
     InvariantValues().Outlay[Year] =
             InvariantValues().GrossPmt   [Year]
-        -   InvariantValues().NetWD      [Year]
-        -   InvariantValues().NewCashLoan[Year]
+        -   InvariantValues().NetWD      [Year] / 100.0
+        -   InvariantValues().NewCashLoan[Year] / 100.0
         ;
 
     if(Debugging)
@@ -727,7 +727,7 @@ void AccountValue::TxLoanRepay()
 
     AVUnloaned -= RequestedLoan;
     AVRegLn += RequestedLoan;    // IHS !! Preferred loans--see lmi.
-    InvariantValues().NewCashLoan[Year] = dblize(RequestedLoan);
+    InvariantValues().NewCashLoan[Year] = centize(RequestedLoan);
 }
 
 /// Set account value before monthly deductions.
@@ -946,7 +946,7 @@ void AccountValue::TxTakeWD()
     wd -= std::min(WDFee, round_withdrawal().c(wd * WDFeeRate));
     // IHS !! This treats input WD as gross; it probably should be net. But 
compare lmi.
 
-    InvariantValues().NetWD[Year] = dblize(wd);
+    InvariantValues().NetWD[Year] = centize(wd);
 // IHS !!    TaxBasis -= wd; // Withdrawals are subtracted from basis in lmi.
 }
 
@@ -996,7 +996,7 @@ void AccountValue::TxTakeLoan()
 
     AVUnloaned -= RequestedLoan;
     AVRegLn += RequestedLoan;    // IHS !! Also preferred loans: implemented 
in lmi.
-    InvariantValues().NewCashLoan[Year] = dblize(RequestedLoan);
+    InvariantValues().NewCashLoan[Year] = centize(RequestedLoan);
 }
 
 /// Test for lapse.
diff --git a/ihs_acctval.cpp b/ihs_acctval.cpp
index c2489adc..ce0a51e3 100644
--- a/ihs_acctval.cpp
+++ b/ihs_acctval.cpp
@@ -1173,7 +1173,7 @@ void AccountValue::SetClaims()
 
 void AccountValue::FinalizeYear()
 {
-    VariantValues().TotalLoanBalance[Year] = dblize(RegLnBal + PrfLnBal);
+    VariantValues().TotalLoanBalance[Year] = centize(RegLnBal + PrfLnBal);
 
     currency total_av = TotalAccountValue();
     currency surr_chg = SurrChg();
@@ -1353,8 +1353,8 @@ void AccountValue::FinalizeYear()
             );
         InvariantValues().Outlay[Year] =
                 InvariantValues().GrossPmt   [Year]
-            -   InvariantValues().NetWD      [Year]
-            -   InvariantValues().NewCashLoan[Year]
+            -   InvariantValues().NetWD      [Year] / 100.0
+            -   InvariantValues().NewCashLoan[Year] / 100.0
             ;
 
         InvariantValues().GptForceout[Year] = centize(YearsTotalGptForceout);
diff --git a/ihs_avmly.cpp b/ihs_avmly.cpp
index 85f961e6..c15e8b5b 100644
--- a/ihs_avmly.cpp
+++ b/ihs_avmly.cpp
@@ -1608,7 +1608,7 @@ void AccountValue::TxLoanRepay()
 // This seems wrong. If we're changing something that's invariant among
 // bases, why do we change it for each basis?
 // TODO ?? Shouldn't this be moved to FinalizeMonth()?
-    InvariantValues().NewCashLoan[Year] = dblize(ActualLoan);
+    InvariantValues().NewCashLoan[Year] = centize(ActualLoan);
     // TODO ?? Consider changing loan_ullage_[Year] here.
 }
 
@@ -2668,7 +2668,7 @@ void AccountValue::TxTakeWD()
 // This seems wrong. If we're changing something that's invariant among
 // bases, why do we change it for each basis?
 // TODO ?? Shouldn't this be moved to FinalizeMonth()?
-    InvariantValues().NetWD[Year] = dblize(NetWD);
+    InvariantValues().NetWD[Year] = centize(NetWD);
 }
 
 /// Calculate maximum permissible total loan (not increment).
@@ -2774,7 +2774,7 @@ void AccountValue::TxTakeLoan()
         ActualLoan = std::min(max_loan_increment, RequestedLoan);
         ActualLoan = std::max(ActualLoan, C0);
         // TODO ?? Shouldn't this happen in FinalizeMonth()?
-        InvariantValues().NewCashLoan[Year] = dblize(ActualLoan);
+        InvariantValues().NewCashLoan[Year] = centize(ActualLoan);
         }
 
     {
diff --git a/ledger.cpp b/ledger.cpp
index b3a55d93..333aa7f8 100644
--- a/ledger.cpp
+++ b/ledger.cpp
@@ -489,7 +489,7 @@ std::vector<double> numeric_vector
         {
         attained_age     [j] = j + invar.Age;
         policy_year      [j] = j + 1        ;
-        net_death_benefit[j] = curr.EOYDeathBft[j] - curr.TotalLoanBalance[j];
+        net_death_benefit[j] = curr.EOYDeathBft[j] - curr.TotalLoanBalance[j] 
/ 100.0;
         }
 
     typedef LedgerBase const& B;
diff --git a/ledger_evaluator.cpp b/ledger_evaluator.cpp
index 3292f663..f67747f3 100644
--- a/ledger_evaluator.cpp
+++ b/ledger_evaluator.cpp
@@ -651,8 +651,8 @@ format_map_t static_formats()
     ,{"NetClaims"                       , f1}
     ,{"NetIntCredited"                  , f5}
     ,{"NetPmt"                          , f1}
-    ,{"NetWD"                           , f1}
-    ,{"NewCashLoan"                     , f1}
+    ,{"NetWD"                           , f5}
+    ,{"NewCashLoan"                     , f5}
     ,{"Outlay"                          , f1}
     ,{"PolicyFee"                       , f5}
     ,{"PrefLoanBalance"                 , f1}
@@ -667,7 +667,7 @@ format_map_t static_formats()
     ,{"SurrChg"                         , f1}
     ,{"TermPurchased"                   , f5}
     ,{"TermSpecAmt"                     , f5}
-    ,{"TotalLoanBalance"                , f1}
+    ,{"TotalLoanBalance"                , f5}
     };
 
     return format_map;
@@ -775,7 +775,7 @@ ledger_evaluator Ledger::make_evaluator() const
     format_map["MiscCharges"] = f5;
 
     std::vector<double> NetDeathBenefit(curr.EOYDeathBft);
-    NetDeathBenefit -= curr.TotalLoanBalance;
+    NetDeathBenefit -= curr.TotalLoanBalance / 100.0;
     vectors   ["NetDeathBenefit"] = &NetDeathBenefit;
     title_map ["NetDeathBenefit"] = "Net\nDeath\nBenefit";
     mask_map  ["NetDeathBenefit"] = "999,999,999";
diff --git a/ledger_text_formats.cpp b/ledger_text_formats.cpp
index 2955d5f6..eb47891f 100644
--- a/ledger_text_formats.cpp
+++ b/ledger_text_formats.cpp
@@ -84,8 +84,8 @@ std::map<std::string,ledger_metadata> const& 
ledger_metadata_map()
         m["ModalMinimumPremium"        ] = ledger_metadata(0, 
oe_cents_as_dollars , "Modal Minimum Premium"                 );
         m["EeModalMinimumPremium"      ] = ledger_metadata(0, 
oe_cents_as_dollars , "EE Modal Minimum Premium"              );
         m["ErModalMinimumPremium"      ] = ledger_metadata(0, 
oe_cents_as_dollars , "ER Modal Minimum Premium"              );
-        m["NetWD"                      ] = ledger_metadata(0, oe_format_normal 
   , "Withdrawal"                            );
-        m["NewCashLoan"                ] = ledger_metadata(0, oe_format_normal 
   , "Annual Loan"                           ); // "New Cash Loan"
+        m["NetWD"                      ] = ledger_metadata(0, 
oe_cents_as_dollars , "Withdrawal"                            );
+        m["NewCashLoan"                ] = ledger_metadata(0, 
oe_cents_as_dollars , "Annual Loan"                           ); // "New Cash 
Loan"
         m["TotalLoanBalance_Current"   ] = ledger_metadata(0, oe_format_normal 
   , "Curr Total Loan Balance"               ); // "Current Total Loan Balance"
         m["TotalLoanBalance_Guaranteed"] = ledger_metadata(0, oe_format_normal 
   , "Guar Total Loan Balance"               ); // "Guaranteed Total Loan 
Balance"
         m["AcctVal_Current"            ] = ledger_metadata(0, oe_format_normal 
   , "Curr Account Value"                    ); // "Current Account Value"
@@ -564,9 +564,9 @@ void PrintCellTabDelimited
 
         os << Invar.value_str("EeGrossPmt"            ,j) << '\t';
         os << Invar.value_str("ErGrossPmt"            ,j) << '\t';
-        os << Invar.value_str("NetWD"                 ,j) << '\t'; // TODO ?? 
It's *gross* WD.
-        os << Invar.value_str("NewCashLoan"           ,j) << '\t';
-        os << Curr_.value_str("TotalLoanBalance"      ,j) << '\t';
+        os << Invar.value_str("NetWD"                 ,j, 100.0) << '\t'; // 
TODO ?? It's *gross* WD.
+        os << Invar.value_str("NewCashLoan"           ,j, 100.0) << '\t';
+        os << Curr_.value_str("TotalLoanBalance"      ,j, 100.0) << '\t';
         os << Invar.value_str("Outlay"                ,j) << '\t';
 
         os << Curr_.value_str("NetPmt"                ,j) << '\t';



reply via email to

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