lmi-commits
[Top][All Lists]
Advanced

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

[lmi-commits] [6316] Add new product-data and ledger fields


From: Greg Chicares
Subject: [lmi-commits] [6316] Add new product-data and ledger fields
Date: Sat, 03 Oct 2015 01:26:12 +0000

Revision: 6316
          http://svn.sv.gnu.org/viewvc/?view=rev&root=lmi&revision=6316
Author:   chicares
Date:     2015-10-03 01:26:11 +0000 (Sat, 03 Oct 2015)
Log Message:
-----------
Add new product-data and ledger fields

Modified Paths:
--------------
    lmi/trunk/ChangeLog
    lmi/trunk/ledger_invariant.cpp
    lmi/trunk/ledger_invariant.hpp
    lmi/trunk/product_data.cpp
    lmi/trunk/product_data.hpp

Modified: lmi/trunk/ChangeLog
===================================================================
--- lmi/trunk/ChangeLog 2015-10-01 22:19:14 UTC (rev 6315)
+++ lmi/trunk/ChangeLog 2015-10-03 01:26:11 UTC (rev 6316)
@@ -36972,3 +36972,32 @@
   illustration_view.hpp
 Disable commands that would produce prohibited illustrations.
 
+20151001T1704Z <address@hidden> [474]
+
+  product_data.hpp
+Rewrite a comment for concinnity with class Ledger.
+
+20151001T1706Z <address@hidden> [474]
+
+  ledger_invariant.cpp
+  ledger_invariant.hpp
+Rearrange members to match order in class product_data.
+
+20151001T1714Z <address@hidden> [474]
+
+  ledger_invariant.hpp
+Elaborate comments for concinnity with class Ledger.
+
+20151001T2219Z <address@hidden> [474]
+
+  ledger_invariant.cpp
+Regularize inconcinnous layout.
+
+20151003T0126Z <address@hidden> [474]
+
+  ledger_invariant.cpp
+  ledger_invariant.hpp
+  product_data.cpp
+  product_data.hpp
+Add new product-data and ledger fields.
+

Modified: lmi/trunk/ledger_invariant.cpp
===================================================================
--- lmi/trunk/ledger_invariant.cpp      2015-10-01 22:19:14 UTC (rev 6315)
+++ lmi/trunk/ledger_invariant.cpp      2015-10-03 01:26:11 UTC (rev 6316)
@@ -44,7 +44,7 @@
 #include "loads.hpp"
 #include "mc_enum_aux.hpp"              // mc_e_vector_to_string_vector()
 #include "mc_enum_types_aux.hpp"        // mc_str()
-#include "miscellany.hpp"
+#include "miscellany.hpp"               // each_equal()
 #include "outlay.hpp"
 #include "premium_tax.hpp"
 #include "product_data.hpp"
@@ -174,11 +174,13 @@
     OtherScalars    ["HasWP"                 ] = &HasWP                  ;
     OtherScalars    ["HasADD"                ] = &HasADD                 ;
     OtherScalars    ["HasTerm"               ] = &HasTerm                ;
+    OtherScalars    ["HasSupplSpecAmt"       ] = &HasSupplSpecAmt        ;
     OtherScalars    ["HasChildRider"         ] = &HasChildRider          ;
     OtherScalars    ["HasSpouseRider"        ] = &HasSpouseRider         ;
     OtherScalars    ["SpouseIssueAge"        ] = &SpouseIssueAge         ;
     OtherScalars    ["HasHoneymoon"          ] = &HasHoneymoon           ;
     OtherScalars    ["PostHoneymoonSpread"   ] = &PostHoneymoonSpread    ;
+    OtherScalars    ["SplitMinPrem"          ] = &SplitMinPrem           ;
     OtherScalars    ["AllowDbo3"             ] = &AllowDbo3              ;
     OtherScalars    ["InitAnnLoanDueRate"    ] = &InitAnnLoanDueRate     ;
     OtherScalars    ["IsInforce"             ] = &IsInforce              ;
@@ -189,6 +191,7 @@
     OtherScalars    ["Has1035ExchCharge"     ] = &Has1035ExchCharge      ;
     OtherScalars    ["EffDateJdn"            ] = &EffDateJdn             ;
     OtherScalars    ["DateOfBirthJdn"        ] = &DateOfBirthJdn         ;
+    OtherScalars    ["SplitFundAllocaction"  ] = &SplitFundAllocaction   ;
     OtherScalars    ["GenAcctAllocation"     ] = &GenAcctAllocation      ;
     OtherScalars    ["SupplementalReport"    ] = &SupplementalReport     ;
 
@@ -209,6 +212,7 @@
     Strings["CsvName"                       ] = &CsvName                       
;
     Strings["CsvHeaderName"                 ] = &CsvHeaderName                 
;
     Strings["NoLapseProvisionName"          ] = &NoLapseProvisionName          
;
+    Strings["ContractName"                  ] = &ContractName                  
;
 
     Strings["AccountValueFootnote"          ] = &AccountValueFootnote          
;
     Strings["AttainedAgeFootnote"           ] = &AttainedAgeFootnote           
;
@@ -224,7 +228,19 @@
     Strings["SpouseFootnote"                ] = &SpouseFootnote                
;
     Strings["TermFootnote"                  ] = &TermFootnote                  
;
     Strings["WaiverFootnote"                ] = &WaiverFootnote                
;
+    Strings["AccelBftRiderFootnote"         ] = &AccelBftRiderFootnote         
;
+    Strings["OverloanRiderFootnote"         ] = &OverloanRiderFootnote         
;
 
+    Strings["GroupQuoteShortProductName"    ] = &GroupQuoteShortProductName    
;
+    Strings["GroupQuoteIsNotAnOffer"        ] = &GroupQuoteIsNotAnOffer        
;
+    Strings["GroupQuoteRidersHeader"        ] = &GroupQuoteRidersHeader        
;
+    Strings["GroupQuoteRidersFooter"        ] = &GroupQuoteRidersFooter        
;
+    Strings["GroupQuotePolicyFormId"        ] = &GroupQuotePolicyFormId        
;
+    Strings["GroupQuoteStateVariations"     ] = &GroupQuoteStateVariations     
;
+    Strings["GroupQuoteProspectus"          ] = &GroupQuoteProspectus          
;
+    Strings["GroupQuoteUnderwriter"         ] = &GroupQuoteUnderwriter         
;
+    Strings["GroupQuoteBrokerDealer"        ] = &GroupQuoteBrokerDealer        
;
+
     Strings["MinimumPremiumFootnote"        ] = &MinimumPremiumFootnote        
;
     Strings["PremAllocationFootnote"        ] = &PremAllocationFootnote        
;
     Strings["InterestDisclaimer"            ] = &InterestDisclaimer            
;
@@ -248,7 +264,10 @@
     Strings["FlexiblePremiumFootnote"       ] = &FlexiblePremiumFootnote       
;
     Strings["GuaranteedValuesFootnote"      ] = &GuaranteedValuesFootnote      
;
     Strings["CreditingRateFootnote"         ] = &CreditingRateFootnote         
;
+    Strings["GrossRateFootnote"             ] = &GrossRateFootnote             
;
+    Strings["NetRateFootnote"               ] = &NetRateFootnote               
;
     Strings["MecFootnote"                   ] = &MecFootnote                   
;
+    Strings["GptFootnote"                   ] = &GptFootnote                   
;
     Strings["MidpointValuesFootnote"        ] = &MidpointValuesFootnote        
;
     Strings["SinglePremiumFootnote"         ] = &SinglePremiumFootnote         
;
     Strings["MonthlyChargesFootnote"        ] = &MonthlyChargesFootnote        
;
@@ -262,6 +281,7 @@
     Strings["IrrCsvFootnote"                ] = &IrrCsvFootnote                
;
     Strings["MortalityChargesFootnote"      ] = &MortalityChargesFootnote      
;
     Strings["LoanAndWithdrawalFootnote"     ] = &LoanAndWithdrawalFootnote     
;
+    Strings["LoanFootnote"                  ] = &LoanFootnote                  
;
     Strings["ImprimaturPresale"             ] = &ImprimaturPresale             
;
     Strings["ImprimaturPresaleComposite"    ] = &ImprimaturPresaleComposite    
;
     Strings["ImprimaturInforce"             ] = &ImprimaturInforce             
;
@@ -273,6 +293,7 @@
     Strings["NonGuaranteedFootnote"         ] = &NonGuaranteedFootnote         
;
     Strings["MonthlyChargesPaymentFootnote" ] = &MonthlyChargesPaymentFootnote 
;
     Strings["SurrenderFootnote"             ] = &SurrenderFootnote             
;
+    Strings["PortabilityFootnote"           ] = &PortabilityFootnote           
;
     Strings["FundRateFootnote"              ] = &FundRateFootnote              
;
     Strings["FundRateFootnote0"             ] = &FundRateFootnote0             
;
     Strings["FundRateFootnote1"             ] = &FundRateFootnote1             
;
@@ -454,6 +475,7 @@
 //    ErModalMinimumPremium =
 //    ProducerCompensation  =
 
+    HasSupplSpecAmt = false;
     if(b->yare_input_.TermRider)
         {
         TermSpecAmt     .assign(Length, b->yare_input_.TermRiderAmount);
@@ -461,6 +483,10 @@
     else if(b->Database_->Query(DB_TermIsNotRider))
         {
         TermSpecAmt      = b->DeathBfts_->supplamt();
+        if(!each_equal(TermSpecAmt.begin(), TermSpecAmt.end(), 0.0))
+            {
+            HasSupplSpecAmt = true;
+            }
         }
     else
         {
@@ -553,6 +579,14 @@
 
     GenAcctAllocation = 1.0 - premium_allocation_to_sepacct(b->yare_input_);
 
+    SplitFundAllocaction =
+            (0.0 != GenAcctAllocation && 1.0 != GenAcctAllocation)
+        ||
+            (  0.0 != b->yare_input_.InforceGeneralAccountValue
+            && 0.0 != b->yare_input_.InforceSeparateAccountValue
+            )
+        ;
+
     NoLapseAlwaysActive     = b->Database_->Query(DB_NoLapseAlwaysActive);
     NoLapseMinDur           = b->Database_->Query(DB_NoLapseMinDur);
     NoLapseMinAge           = b->Database_->Query(DB_NoLapseMinAge);
@@ -610,13 +644,13 @@
     HasWP                   = b->yare_input_.WaiverOfPremiumBenefit;
     HasADD                  = b->yare_input_.AccidentalDeathBenefit;
     HasTerm                 = b->yare_input_.TermRider;
-
     HasChildRider           = b->yare_input_.ChildRider;
     HasSpouseRider          = b->yare_input_.SpouseRider;
     SpouseIssueAge          = b->yare_input_.SpouseIssueAge;
 
     HasHoneymoon            = b->yare_input_.HoneymoonEndorsement;
     PostHoneymoonSpread     = b->yare_input_.PostHoneymoonSpread;
+    SplitMinPrem            = b->Database_->Query(DB_SplitMinPrem);
     AllowDbo3               = b->Database_->Query(DB_AllowDbo3);
 
     // The antediluvian branch has a null ProductData_ object.
@@ -645,6 +679,7 @@
         CsvName                        = p.datum("CsvName"                     
   );
         CsvHeaderName                  = p.datum("CsvHeaderName"               
   );
         NoLapseProvisionName           = p.datum("NoLapseProvisionName"        
   );
+        ContractName                   = p.datum("ContractName"                
   );
 
         AccountValueFootnote           = p.datum("AccountValueFootnote"        
   );
         AttainedAgeFootnote            = p.datum("AttainedAgeFootnote"         
   );
@@ -660,7 +695,19 @@
         SpouseFootnote                 = p.datum("SpouseFootnote"              
   );
         TermFootnote                   = p.datum("TermFootnote"                
   );
         WaiverFootnote                 = p.datum("WaiverFootnote"              
   );
+        AccelBftRiderFootnote          = p.datum("AccelBftRiderFootnote"       
   );
+        OverloanRiderFootnote          = p.datum("OverloanRiderFootnote"       
   );
 
+        GroupQuoteShortProductName     = p.datum("GroupQuoteShortProductName"  
   );
+        GroupQuoteIsNotAnOffer         = p.datum("GroupQuoteIsNotAnOffer"      
   );
+        GroupQuoteRidersHeader         = p.datum("GroupQuoteRidersHeader"      
   );
+        GroupQuoteRidersFooter         = p.datum("GroupQuoteRidersFooter"      
   );
+        GroupQuotePolicyFormId         = p.datum("GroupQuotePolicyFormId"      
   );
+        GroupQuoteStateVariations      = p.datum("GroupQuoteStateVariations"   
   );
+        GroupQuoteProspectus           = p.datum("GroupQuoteProspectus"        
   );
+        GroupQuoteUnderwriter          = p.datum("GroupQuoteUnderwriter"       
   );
+        GroupQuoteBrokerDealer         = p.datum("GroupQuoteBrokerDealer"      
   );
+
         MinimumPremiumFootnote         = p.datum("MinimumPremiumFootnote"      
   );
         PremAllocationFootnote         = p.datum("PremAllocationFootnote"      
   );
 
@@ -685,7 +732,10 @@
         FlexiblePremiumFootnote        = p.datum("FlexiblePremiumFootnote"     
   );
         GuaranteedValuesFootnote       = p.datum("GuaranteedValuesFootnote"    
   );
         CreditingRateFootnote          = p.datum("CreditingRateFootnote"       
   );
+        GrossRateFootnote              = p.datum("GrossRateFootnote"           
   );
+        NetRateFootnote                = p.datum("NetRateFootnote"             
   );
         MecFootnote                    = p.datum("MecFootnote"                 
   );
+        GptFootnote                    = p.datum("GptFootnote"                 
   );
         MidpointValuesFootnote         = p.datum("MidpointValuesFootnote"      
   );
         SinglePremiumFootnote          = p.datum("SinglePremiumFootnote"       
   );
         MonthlyChargesFootnote         = p.datum("MonthlyChargesFootnote"      
   );
@@ -699,6 +749,7 @@
         IrrCsvFootnote                 = p.datum("IrrCsvFootnote"              
   );
         MortalityChargesFootnote       = p.datum("MortalityChargesFootnote"    
   );
         LoanAndWithdrawalFootnote      = p.datum("LoanAndWithdrawalFootnote"   
   );
+        LoanFootnote                   = p.datum("LoanFootnote"                
   );
         ImprimaturPresale              = p.datum("ImprimaturPresale"           
   );
         ImprimaturPresaleComposite     = p.datum("ImprimaturPresaleComposite"  
   );
         ImprimaturInforce              = p.datum("ImprimaturInforce"           
   );
@@ -710,6 +761,7 @@
         NonGuaranteedFootnote          = p.datum("NonGuaranteedFootnote"       
   );
         MonthlyChargesPaymentFootnote  = 
p.datum("MonthlyChargesPaymentFootnote"  );
         SurrenderFootnote              = p.datum("SurrenderFootnote"           
   );
+        PortabilityFootnote            = p.datum("PortabilityFootnote"         
   );
         FundRateFootnote               = p.datum("FundRateFootnote"            
   );
         FundRateFootnote0              = p.datum("FundRateFootnote0"           
   );
         FundRateFootnote1              = p.datum("FundRateFootnote1"           
   );
@@ -924,6 +976,7 @@
     CsvName                       = a_Addend.CsvName;
     CsvHeaderName                 = a_Addend.CsvHeaderName;
     NoLapseProvisionName          = a_Addend.NoLapseProvisionName;
+    ContractName                  = a_Addend.ContractName;
 
     AccountValueFootnote          = a_Addend.AccountValueFootnote;
     AttainedAgeFootnote           = a_Addend.AttainedAgeFootnote;
@@ -939,7 +992,19 @@
     SpouseFootnote                = a_Addend.SpouseFootnote;
     TermFootnote                  = a_Addend.TermFootnote;
     WaiverFootnote                = a_Addend.WaiverFootnote;
+    AccelBftRiderFootnote         = a_Addend.AccelBftRiderFootnote;
+    OverloanRiderFootnote         = a_Addend.OverloanRiderFootnote;
 
+    GroupQuoteShortProductName    = a_Addend.GroupQuoteShortProductName;
+    GroupQuoteIsNotAnOffer        = a_Addend.GroupQuoteIsNotAnOffer    ;
+    GroupQuoteRidersHeader        = a_Addend.GroupQuoteRidersHeader    ;
+    GroupQuoteRidersFooter        = a_Addend.GroupQuoteRidersFooter    ;
+    GroupQuotePolicyFormId        = a_Addend.GroupQuotePolicyFormId    ;
+    GroupQuoteStateVariations     = a_Addend.GroupQuoteStateVariations ;
+    GroupQuoteProspectus          = a_Addend.GroupQuoteProspectus      ;
+    GroupQuoteUnderwriter         = a_Addend.GroupQuoteUnderwriter     ;
+    GroupQuoteBrokerDealer        = a_Addend.GroupQuoteBrokerDealer    ;
+
     MinimumPremiumFootnote        = a_Addend.MinimumPremiumFootnote;
     PremAllocationFootnote        = a_Addend.PremAllocationFootnote;
 
@@ -964,7 +1029,10 @@
     FlexiblePremiumFootnote       = a_Addend.FlexiblePremiumFootnote;
     GuaranteedValuesFootnote      = a_Addend.GuaranteedValuesFootnote;
     CreditingRateFootnote         = a_Addend.CreditingRateFootnote;
+    GrossRateFootnote             = a_Addend.GrossRateFootnote;
+    NetRateFootnote               = a_Addend.NetRateFootnote;
     MecFootnote                   = a_Addend.MecFootnote;
+    GptFootnote                   = a_Addend.GptFootnote;
     MidpointValuesFootnote        = a_Addend.MidpointValuesFootnote;
     SinglePremiumFootnote         = a_Addend.SinglePremiumFootnote;
     MonthlyChargesFootnote        = a_Addend.MonthlyChargesFootnote;
@@ -978,6 +1046,7 @@
     IrrCsvFootnote                = a_Addend.IrrCsvFootnote;
     MortalityChargesFootnote      = a_Addend.MortalityChargesFootnote;
     LoanAndWithdrawalFootnote     = a_Addend.LoanAndWithdrawalFootnote;
+    LoanFootnote                  = a_Addend.LoanFootnote;
     ImprimaturPresale             = a_Addend.ImprimaturPresale;
     ImprimaturPresaleComposite    = a_Addend.ImprimaturPresaleComposite;
     ImprimaturInforce             = a_Addend.ImprimaturInforce;
@@ -989,6 +1058,7 @@
     NonGuaranteedFootnote         = a_Addend.NonGuaranteedFootnote;
     MonthlyChargesPaymentFootnote = a_Addend.MonthlyChargesPaymentFootnote;
     SurrenderFootnote             = a_Addend.SurrenderFootnote;
+    PortabilityFootnote           = a_Addend.PortabilityFootnote;
     FundRateFootnote              = a_Addend.FundRateFootnote;
     FundRateFootnote0             = a_Addend.FundRateFootnote0;
     FundRateFootnote1             = a_Addend.FundRateFootnote1;
@@ -1014,6 +1084,7 @@
     FundNames                     = a_Addend.FundNames;
     FundAllocs                    = a_Addend.FundAllocs;
     FundAllocations               = a_Addend.FundAllocations;
+    SplitFundAllocaction          = SplitFundAllocaction  || 
a_Addend.SplitFundAllocaction;
     GenAcctAllocation             = a_Addend.GenAcctAllocation;
     GenderDistinct                = a_Addend.GenderDistinct;
     GenderBlended                 = a_Addend.GenderBlended;
@@ -1048,9 +1119,10 @@
         }
     MecYear                       = std::min(MecYear, a_Addend.MecYear);
 
-    HasWP        = HasWP        || a_Addend.HasWP        ;
-    HasADD       = HasADD       || a_Addend.HasADD       ;
-    HasTerm      = HasTerm      || a_Addend.HasTerm      ;
+    HasWP           = HasWP           || a_Addend.HasWP          ;
+    HasADD          = HasADD          || a_Addend.HasADD         ;
+    HasTerm         = HasTerm         || a_Addend.HasTerm        ;
+    HasSupplSpecAmt = HasSupplSpecAmt || a_Addend.HasSupplSpecAmt;
 
 // TODO ?? Can these be meaningful on a composite? If totals are desired,
 // then term should be treated the same way.
@@ -1065,6 +1137,7 @@
 
     HasHoneymoon       = HasHoneymoon || a_Addend.HasHoneymoon ;
     PostHoneymoonSpread= a_Addend.PostHoneymoonSpread          ;
+    SplitMinPrem       = SplitMinPrem || a_Addend.SplitMinPrem ;
     AllowDbo3          = AllowDbo3    || a_Addend.AllowDbo3    ;
 
     NoLapseMinDur      = std::min(a_Addend.NoLapseMinDur, NoLapseMinDur);

Modified: lmi/trunk/ledger_invariant.hpp
===================================================================
--- lmi/trunk/ledger_invariant.hpp      2015-10-01 22:19:14 UTC (rev 6315)
+++ lmi/trunk/ledger_invariant.hpp      2015-10-03 01:26:11 UTC (rev 6316)
@@ -190,11 +190,13 @@
     double          HasWP;
     double          HasADD;
     double          HasTerm;
+    double          HasSupplSpecAmt;
     double          HasChildRider;
     double          HasSpouseRider;
     double          SpouseIssueAge;
     double          HasHoneymoon;
     double          PostHoneymoonSpread;
+    double          SplitMinPrem;
     double          AllowDbo3;
     double          IsInforce;
     double          CurrentCoiMultiplier;
@@ -204,6 +206,7 @@
     double          Has1035ExchCharge;
     double          EffDateJdn;
     double          DateOfBirthJdn;
+    double          SplitFundAllocaction;
     double          GenAcctAllocation;
     double          SupplementalReport;
 
@@ -229,6 +232,7 @@
     std::string     CsvName;
     std::string     CsvHeaderName;
     std::string     NoLapseProvisionName;
+    std::string     ContractName;
 
     // Ledger column definitions.
     std::string     AccountValueFootnote;
@@ -246,7 +250,20 @@
     std::string     SpouseFootnote;
     std::string     TermFootnote;
     std::string     WaiverFootnote;
+    std::string     AccelBftRiderFootnote;
+    std::string     OverloanRiderFootnote;
 
+    // Group quote footnotes.
+    std::string     GroupQuoteShortProductName;
+    std::string     GroupQuoteIsNotAnOffer    ;
+    std::string     GroupQuoteRidersHeader    ;
+    std::string     GroupQuoteRidersFooter    ;
+    std::string     GroupQuotePolicyFormId    ;
+    std::string     GroupQuoteStateVariations ;
+    std::string     GroupQuoteProspectus      ;
+    std::string     GroupQuoteUnderwriter     ;
+    std::string     GroupQuoteBrokerDealer    ;
+
     // Premium-specific footnotes.
     std::string     MinimumPremiumFootnote;
     std::string     PremAllocationFootnote;
@@ -273,7 +290,10 @@
     std::string     FlexiblePremiumFootnote;
     std::string     GuaranteedValuesFootnote;
     std::string     CreditingRateFootnote;
+    std::string     GrossRateFootnote;
+    std::string     NetRateFootnote;
     std::string     MecFootnote;
+    std::string     GptFootnote;
     std::string     MidpointValuesFootnote;
     std::string     SinglePremiumFootnote;
     std::string     MonthlyChargesFootnote;
@@ -287,6 +307,7 @@
     std::string     IrrCsvFootnote;
     std::string     MortalityChargesFootnote;
     std::string     LoanAndWithdrawalFootnote;
+    std::string     LoanFootnote;
     std::string     ImprimaturPresale;
     std::string     ImprimaturPresaleComposite;
     std::string     ImprimaturInforce;
@@ -298,6 +319,7 @@
     std::string     NonGuaranteedFootnote;
     std::string     MonthlyChargesPaymentFootnote;
     std::string     SurrenderFootnote;
+    std::string     PortabilityFootnote;
     std::string     FundRateFootnote;
     std::string     FundRateFootnote0;
     std::string     FundRateFootnote1;

Modified: lmi/trunk/product_data.cpp
===================================================================
--- lmi/trunk/product_data.cpp  2015-10-01 22:19:14 UTC (rev 6315)
+++ lmi/trunk/product_data.cpp  2015-10-03 01:26:11 UTC (rev 6316)
@@ -215,6 +215,7 @@
     ascribe("CsvName"                       , &product_data::CsvName           
            );
     ascribe("CsvHeaderName"                 , &product_data::CsvHeaderName     
            );
     ascribe("NoLapseProvisionName"          , 
&product_data::NoLapseProvisionName          );
+    ascribe("ContractName"                  , &product_data::ContractName      
            );
     ascribe("AccountValueFootnote"          , 
&product_data::AccountValueFootnote          );
     ascribe("AttainedAgeFootnote"           , 
&product_data::AttainedAgeFootnote           );
     ascribe("CashSurrValueFootnote"         , 
&product_data::CashSurrValueFootnote         );
@@ -228,6 +229,17 @@
     ascribe("SpouseFootnote"                , &product_data::SpouseFootnote    
            );
     ascribe("TermFootnote"                  , &product_data::TermFootnote      
            );
     ascribe("WaiverFootnote"                , &product_data::WaiverFootnote    
            );
+    ascribe("AccelBftRiderFootnote"         , 
&product_data::AccelBftRiderFootnote         );
+    ascribe("OverloanRiderFootnote"         , 
&product_data::OverloanRiderFootnote         );
+    ascribe("GroupQuoteShortProductName"    , 
&product_data::GroupQuoteShortProductName    );
+    ascribe("GroupQuoteIsNotAnOffer"        , 
&product_data::GroupQuoteIsNotAnOffer        );
+    ascribe("GroupQuoteRidersHeader"        , 
&product_data::GroupQuoteRidersHeader        );
+    ascribe("GroupQuoteRidersFooter"        , 
&product_data::GroupQuoteRidersFooter        );
+    ascribe("GroupQuotePolicyFormId"        , 
&product_data::GroupQuotePolicyFormId        );
+    ascribe("GroupQuoteStateVariations"     , 
&product_data::GroupQuoteStateVariations     );
+    ascribe("GroupQuoteProspectus"          , 
&product_data::GroupQuoteProspectus          );
+    ascribe("GroupQuoteUnderwriter"         , 
&product_data::GroupQuoteUnderwriter         );
+    ascribe("GroupQuoteBrokerDealer"        , 
&product_data::GroupQuoteBrokerDealer        );
     ascribe("MinimumPremiumFootnote"        , 
&product_data::MinimumPremiumFootnote        );
     ascribe("PremAllocationFootnote"        , 
&product_data::PremAllocationFootnote        );
     ascribe("InterestDisclaimer"            , 
&product_data::InterestDisclaimer            );
@@ -251,7 +263,10 @@
     ascribe("FlexiblePremiumFootnote"       , 
&product_data::FlexiblePremiumFootnote       );
     ascribe("GuaranteedValuesFootnote"      , 
&product_data::GuaranteedValuesFootnote      );
     ascribe("CreditingRateFootnote"         , 
&product_data::CreditingRateFootnote         );
+    ascribe("GrossRateFootnote"             , &product_data::GrossRateFootnote 
            );
+    ascribe("NetRateFootnote"               , &product_data::NetRateFootnote   
            );
     ascribe("MecFootnote"                   , &product_data::MecFootnote       
            );
+    ascribe("GptFootnote"                   , &product_data::GptFootnote       
            );
     ascribe("MidpointValuesFootnote"        , 
&product_data::MidpointValuesFootnote        );
     ascribe("SinglePremiumFootnote"         , 
&product_data::SinglePremiumFootnote         );
     ascribe("MonthlyChargesFootnote"        , 
&product_data::MonthlyChargesFootnote        );
@@ -265,6 +280,7 @@
     ascribe("IrrCsvFootnote"                , &product_data::IrrCsvFootnote    
            );
     ascribe("MortalityChargesFootnote"      , 
&product_data::MortalityChargesFootnote      );
     ascribe("LoanAndWithdrawalFootnote"     , 
&product_data::LoanAndWithdrawalFootnote     );
+    ascribe("LoanFootnote"                  , &product_data::LoanFootnote      
            );
     ascribe("ImprimaturPresale"             , &product_data::ImprimaturPresale 
            );
     ascribe("ImprimaturPresaleComposite"    , 
&product_data::ImprimaturPresaleComposite    );
     ascribe("ImprimaturInforce"             , &product_data::ImprimaturInforce 
            );
@@ -276,6 +292,7 @@
     ascribe("NonGuaranteedFootnote"         , 
&product_data::NonGuaranteedFootnote         );
     ascribe("MonthlyChargesPaymentFootnote" , 
&product_data::MonthlyChargesPaymentFootnote );
     ascribe("SurrenderFootnote"             , &product_data::SurrenderFootnote 
            );
+    ascribe("PortabilityFootnote"           , 
&product_data::PortabilityFootnote           );
     ascribe("FundRateFootnote"              , &product_data::FundRateFootnote  
            );
     ascribe("FundRateFootnote0"             , &product_data::FundRateFootnote0 
            );
     ascribe("FundRateFootnote1"             , &product_data::FundRateFootnote1 
            );
@@ -408,49 +425,61 @@
 {
     product_data z;
 
-    z.DatabaseFilename         = glossed_string("sample.database");
-    z.FundFilename             = glossed_string("sample.funds");
-    z.RoundingFilename         = glossed_string("sample.rounding");
-    z.TierFilename             = glossed_string("sample.strata");
+    z.DatabaseFilename           = glossed_string("sample.database");
+    z.FundFilename               = glossed_string("sample.funds");
+    z.RoundingFilename           = glossed_string("sample.rounding");
+    z.TierFilename               = glossed_string("sample.strata");
 
-    z.CvatCorridorFilename     = glossed_string("sample");
-    z.Irc7702NspFilename       = glossed_string("sample");
-    z.CurrCOIFilename          = glossed_string("qx_cso");
-    z.GuarCOIFilename          = glossed_string("qx_cso");
-    z.WPFilename               = glossed_string("sample");
-    z.ADDFilename              = glossed_string("qx_ins", "Specimen gloss.");
-    z.ChildRiderFilename       = glossed_string("qx_ins");
-    z.CurrSpouseRiderFilename  = glossed_string("qx_ins");
-    z.GuarSpouseRiderFilename  = glossed_string("qx_ins");
-    z.CurrTermFilename         = glossed_string("sample");
-    z.GuarTermFilename         = glossed_string("sample");
-    z.GroupProxyFilename       = glossed_string("qx_ins");
-    z.SevenPayFilename         = glossed_string("sample");
-    z.TgtPremFilename          = glossed_string("sample");
-    z.Irc7702QFilename         = glossed_string("qx_cso");
-    z.PartialMortalityFilename = glossed_string("qx_ann");
-    z.SubstdTblMultFilename    = glossed_string("sample");
-    z.CurrSpecAmtLoadFilename  = glossed_string("sample");
-    z.GuarSpecAmtLoadFilename  = glossed_string("sample");
-    z.PolicyForm               = glossed_string("UL32768-NY");
-    z.PolicyFormAlternative    = glossed_string("UL32768-X");
-    z.PolicyMktgName           = glossed_string("UL Supreme");
-    z.PolicyLegalName          = glossed_string("Flexible Premium Adjustable 
Life Insurance Policy");
-    z.InsCoShortName           = glossed_string("Superior Life");
-    z.InsCoName                = glossed_string("Superior Life Insurance 
Company");
-    z.InsCoAddr                = glossed_string("Superior, WI 12345");
-    z.InsCoStreet              = glossed_string("246 Main Street");
-    z.InsCoPhone               = glossed_string("(800) 555-1212");
-    z.InsCoDomicile            = glossed_string("WI");
-    z.MainUnderwriter          = glossed_string("Superior Securities");
-    z.MainUnderwriterAddress   = glossed_string("246-M Main Street, Superior, 
WI 12345");
-    z.CoUnderwriter            = glossed_string("Superior Investors");
-    z.CoUnderwriterAddress     = glossed_string("246-C Main Street, Superior, 
WI 12345");
-    z.AvName                   = glossed_string("Account");
-    z.CsvName                  = glossed_string("Cash Surrender");
-    z.CsvHeaderName            = glossed_string("Cash Surr");
-    z.NoLapseProvisionName     = glossed_string("No-lapse Provision");
+    z.CvatCorridorFilename       = glossed_string("sample");
+    z.Irc7702NspFilename         = glossed_string("sample");
+    z.CurrCOIFilename            = glossed_string("qx_cso");
+    z.GuarCOIFilename            = glossed_string("qx_cso");
+    z.WPFilename                 = glossed_string("sample");
+    z.ADDFilename                = glossed_string("qx_ins", "Specimen gloss.");
+    z.ChildRiderFilename         = glossed_string("qx_ins");
+    z.CurrSpouseRiderFilename    = glossed_string("qx_ins");
+    z.GuarSpouseRiderFilename    = glossed_string("qx_ins");
+    z.CurrTermFilename           = glossed_string("sample");
+    z.GuarTermFilename           = glossed_string("sample");
+    z.GroupProxyFilename         = glossed_string("qx_ins");
+    z.SevenPayFilename           = glossed_string("sample");
+    z.TgtPremFilename            = glossed_string("sample");
+    z.Irc7702QFilename           = glossed_string("qx_cso");
+    z.PartialMortalityFilename   = glossed_string("qx_ann");
+    z.SubstdTblMultFilename      = glossed_string("sample");
+    z.CurrSpecAmtLoadFilename    = glossed_string("sample");
+    z.GuarSpecAmtLoadFilename    = glossed_string("sample");
+    z.PolicyForm                 = glossed_string("UL32768-NY");
+    z.PolicyFormAlternative      = glossed_string("UL32768-X");
+    z.PolicyMktgName             = glossed_string("UL Supreme");
+    z.PolicyLegalName            = glossed_string("Flexible Premium Adjustable 
Life Insurance Policy");
+    z.InsCoShortName             = glossed_string("Superior Life");
+    z.InsCoName                  = glossed_string("Superior Life Insurance 
Company");
+    z.InsCoAddr                  = glossed_string("Superior, WI 12345");
+    z.InsCoStreet                = glossed_string("246 Main Street");
+    z.InsCoPhone                 = glossed_string("(800) 555-1212");
+    z.InsCoDomicile              = glossed_string("WI");
+    z.MainUnderwriter            = glossed_string("Superior Securities");
+    z.MainUnderwriterAddress     = glossed_string("246-M Main Street, 
Superior, WI 12345");
+    z.CoUnderwriter              = glossed_string("Superior Investors");
+    z.CoUnderwriterAddress       = glossed_string("246-C Main Street, 
Superior, WI 12345");
+    z.AvName                     = glossed_string("Account");
+    z.CsvName                    = glossed_string("Cash Surrender");
+    z.CsvHeaderName              = glossed_string("Cash Surr");
+    z.NoLapseProvisionName       = glossed_string("No-lapse Provision");
+    z.ContractName               = glossed_string("contract"); // 
Alternatively, "policy" or "certificate".
+    z.MarketingNameFootnote      = glossed_string("Policy form UL32768-NY is 
marketed as 'UL Supreme'.");
 
+    z.GroupQuoteShortProductName = glossed_string("UL SUPREMEĀ®");
+    z.GroupQuoteIsNotAnOffer     = glossed_string("This is not an offer of 
insurance.");
+    z.GroupQuoteRidersHeader     = glossed_string("ADB & WP");
+    z.GroupQuoteRidersFooter     = glossed_string("Available riders: accident 
and waiver.");
+    z.GroupQuotePolicyFormId     = glossed_string("Policy form UL32768-NY is a 
flexible premium contract.");
+    z.GroupQuoteStateVariations  = glossed_string("Not available in all 
states.");
+    z.GroupQuoteProspectus       = glossed_string("Read the prospectus 
carefully.");
+    z.GroupQuoteUnderwriter      = glossed_string("Securities underwritten by 
Superior Securities.");
+    z.GroupQuoteBrokerDealer     = glossed_string("Securities offered through 
Superior Brokerage.");
+
     z.save(AddDataDir("sample.policy"));
 }
 

Modified: lmi/trunk/product_data.hpp
===================================================================
--- lmi/trunk/product_data.hpp  2015-10-01 22:19:14 UTC (rev 6315)
+++ lmi/trunk/product_data.hpp  2015-10-03 01:26:11 UTC (rev 6316)
@@ -188,6 +188,7 @@
     glossed_string CsvName;
     glossed_string CsvHeaderName;
     glossed_string NoLapseProvisionName;
+    glossed_string ContractName;
 
     // TODO ?? Most of the following are missing from the GUI.
 
@@ -207,7 +208,20 @@
     glossed_string SpouseFootnote;
     glossed_string TermFootnote;
     glossed_string WaiverFootnote;
+    glossed_string AccelBftRiderFootnote;
+    glossed_string OverloanRiderFootnote;
 
+    // Group quote footnotes.
+    glossed_string GroupQuoteShortProductName;
+    glossed_string GroupQuoteIsNotAnOffer    ;
+    glossed_string GroupQuoteRidersHeader    ;
+    glossed_string GroupQuoteRidersFooter    ;
+    glossed_string GroupQuotePolicyFormId    ;
+    glossed_string GroupQuoteStateVariations ;
+    glossed_string GroupQuoteProspectus      ;
+    glossed_string GroupQuoteUnderwriter     ;
+    glossed_string GroupQuoteBrokerDealer    ;
+
     // Premium-specific footnotes.
     glossed_string MinimumPremiumFootnote;
     glossed_string PremAllocationFootnote;
@@ -234,7 +248,10 @@
     glossed_string FlexiblePremiumFootnote;
     glossed_string GuaranteedValuesFootnote;
     glossed_string CreditingRateFootnote;
+    glossed_string GrossRateFootnote;
+    glossed_string NetRateFootnote;
     glossed_string MecFootnote;
+    glossed_string GptFootnote;
     glossed_string MidpointValuesFootnote;
     glossed_string SinglePremiumFootnote;
     glossed_string MonthlyChargesFootnote;
@@ -248,6 +265,7 @@
     glossed_string IrrCsvFootnote;
     glossed_string MortalityChargesFootnote;
     glossed_string LoanAndWithdrawalFootnote;
+    glossed_string LoanFootnote;
     glossed_string ImprimaturPresale;
     glossed_string ImprimaturPresaleComposite;
     glossed_string ImprimaturInforce;
@@ -259,6 +277,7 @@
     glossed_string NonGuaranteedFootnote;
     glossed_string MonthlyChargesPaymentFootnote;
     glossed_string SurrenderFootnote;
+    glossed_string PortabilityFootnote;
     glossed_string FundRateFootnote;
     glossed_string FundRateFootnote0;
     glossed_string FundRateFootnote1;




reply via email to

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