lmi-commits
[Top][All Lists]
Advanced

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

[lmi-commits] [5905] Add some fields for GPT support


From: Greg Chicares
Subject: [lmi-commits] [5905] Add some fields for GPT support
Date: Sat, 21 Jun 2014 16:13:15 +0000

Revision: 5905
          http://svn.sv.gnu.org/viewvc/?view=rev&root=lmi&revision=5905
Author:   chicares
Date:     2014-06-21 16:13:14 +0000 (Sat, 21 Jun 2014)
Log Message:
-----------
Add some fields for GPT support

Modified Paths:
--------------
    lmi/trunk/gpt_input.cpp
    lmi/trunk/gpt_input.hpp

Modified: lmi/trunk/gpt_input.cpp
===================================================================
--- lmi/trunk/gpt_input.cpp     2014-06-21 00:59:19 UTC (rev 5904)
+++ lmi/trunk/gpt_input.cpp     2014-06-21 16:13:14 UTC (rev 5905)
@@ -117,6 +117,12 @@
     ,NewFlatExtra                     ("0")
 //    ,UseDOB                           ("")
     ,Payment                          ("0")
+    ,OldDbo                           ("A")
+    ,NewDbo                           ("A")
+    ,OldDeathBft                      ("1000000")
+    ,NewDeathBft                      ("1000000")
+    ,OldSpecAmt                       ("1000000")
+    ,NewSpecAmt                       ("1000000")
     ,BenefitAmount                    ("1000000")
 {
     AscribeMembers();
@@ -160,6 +166,7 @@
 
 void gpt_input::AscribeMembers()
 {
+    ascribe("ContractNumber"                        , 
&gpt_input::ContractNumber                        );
     ascribe("Use7702ATables"                        , 
&gpt_input::Use7702ATables                        );
     ascribe("IssueAge"                              , &gpt_input::IssueAge     
                         );
     ascribe("OldGender"                             , &gpt_input::OldGender    
                         );
@@ -185,6 +192,10 @@
     ascribe("InforceMonth"                          , &gpt_input::InforceMonth 
                         );
     ascribe("InforceTargetSpecifiedAmount"          , 
&gpt_input::InforceTargetSpecifiedAmount          );
     ascribe("InforceAccountValue"                   , 
&gpt_input::InforceAccountValue                   );
+    ascribe("InforceGlp"                            , &gpt_input::InforceGlp   
                         );
+    ascribe("InforceCumulativeGlp"                  , 
&gpt_input::InforceCumulativeGlp                  );
+    ascribe("InforceGsp"                            , &gpt_input::InforceGsp   
                         );
+    ascribe("InforceCumulativeGptPremiumsPaid"      , 
&gpt_input::InforceCumulativeGptPremiumsPaid      );
     ascribe("InforceIsMec"                          , &gpt_input::InforceIsMec 
                         );
     ascribe("LastMaterialChangeDate"                , 
&gpt_input::LastMaterialChangeDate                );
     ascribe("InforceContractYear"                   , 
&gpt_input::InforceContractYear                   );
@@ -200,6 +211,17 @@
     ascribe("NewFlatExtra"                          , &gpt_input::NewFlatExtra 
                         );
     ascribe("UseDOB"                                , &gpt_input::UseDOB       
                         );
     ascribe("Payment"                               , &gpt_input::Payment      
                         );
+    ascribe("PremsPaidDecrement"                    , 
&gpt_input::PremsPaidDecrement                    );
+    ascribe("OldTarget"                             , &gpt_input::OldTarget    
                         );
+    ascribe("NewTarget"                             , &gpt_input::NewTarget    
                         );
+    ascribe("OldDbo"                                , &gpt_input::OldDbo       
                         );
+    ascribe("NewDbo"                                , &gpt_input::NewDbo       
                         );
+    ascribe("OldDeathBft"                           , &gpt_input::OldDeathBft  
                         );
+    ascribe("NewDeathBft"                           , &gpt_input::NewDeathBft  
                         );
+    ascribe("OldSpecAmt"                            , &gpt_input::OldSpecAmt   
                         );
+    ascribe("NewSpecAmt"                            , &gpt_input::NewSpecAmt   
                         );
+    ascribe("OldQabTermAmt"                         , 
&gpt_input::OldQabTermAmt                         );
+    ascribe("NewQabTermAmt"                         , 
&gpt_input::NewQabTermAmt                         );
     ascribe("BenefitAmount"                         , 
&gpt_input::BenefitAmount                         );
 }
 

Modified: lmi/trunk/gpt_input.hpp
===================================================================
--- lmi/trunk/gpt_input.hpp     2014-06-21 00:59:19 UTC (rev 5904)
+++ lmi/trunk/gpt_input.hpp     2014-06-21 16:13:14 UTC (rev 5905)
@@ -53,6 +53,13 @@
 ///
 /// See general notes on class Input.
 ///
+/// When any GPT work is to be done, some 7702A work is probably
+/// needed as well. Therefore, this class is more a superset than a
+/// sibling of the corresponding 'mec_' class.
+///
+/// Data represent one day's combined transactions. They're held as a
+/// flat record, whose simplicity makes it handy for GUI and XML use.
+///
 /// These variables:
 ///   InforceContractYear
 ///   InforceYear
@@ -148,6 +155,7 @@
     mcenum_state             CachedStateOfJurisdiction_  ;
     int                      GleanedMaturityAge_         ;
 
+    datum_string             ContractNumber                  ;
     mce_yes_or_no            Use7702ATables                  ;
     tnr_age                  IssueAge                        ;
     mce_gender               OldGender                       ;
@@ -173,6 +181,10 @@
     tnr_month                InforceMonth                    ;
     tnr_nonnegative_double   InforceTargetSpecifiedAmount    ;
     tnr_nonnegative_double   InforceAccountValue             ;
+    tnr_unrestricted_double  InforceGlp                      ;
+    tnr_unrestricted_double  InforceCumulativeGlp            ;
+    tnr_unrestricted_double  InforceGsp                      ;
+    tnr_unrestricted_double  InforceCumulativeGptPremiumsPaid;
     mce_yes_or_no            InforceIsMec                    ;
     tnr_date                 LastMaterialChangeDate          ;
     tnr_duration             InforceContractYear             ;
@@ -188,6 +200,17 @@
     numeric_sequence         NewFlatExtra                    ;
     mce_yes_or_no            UseDOB                          ;
     tnr_nonnegative_double   Payment                         ;
+    tnr_nonnegative_double   PremsPaidDecrement              ;
+    tnr_nonnegative_double   OldTarget                       ;
+    tnr_nonnegative_double   NewTarget                       ;
+    mce_dbopt_7702           OldDbo                          ;
+    mce_dbopt_7702           NewDbo                          ;
+    tnr_nonnegative_double   OldDeathBft                     ;
+    tnr_nonnegative_double   NewDeathBft                     ;
+    tnr_nonnegative_double   OldSpecAmt                      ;
+    tnr_nonnegative_double   NewSpecAmt                      ;
+    tnr_nonnegative_double   OldQabTermAmt                   ;
+    tnr_nonnegative_double   NewQabTermAmt                   ;
     tnr_nonnegative_double   BenefitAmount                   ;
 
     std::vector<tnr_unrestricted_double> OldFlatExtraRealized_  ;
@@ -211,6 +234,7 @@
         z = exact_cast<numeric_sequence        >(m); if(z) return z;
         // mc- types.
         z = exact_cast<mce_class               >(m); if(z) return z;
+        z = exact_cast<mce_dbopt_7702          >(m); if(z) return z;
         z = exact_cast<mce_defn_life_ins       >(m); if(z) return z;
         z = exact_cast<mce_defn_material_change>(m); if(z) return z;
         z = exact_cast<mce_gender              >(m); if(z) return z;




reply via email to

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