Exemples de régimes d’assurance-vie et d’invalidité

Guide du créateur d’expressions

Version
R2025.2.0
ft:lastEdition
2026-01-29
Exemples de régimes d’assurance-vie et d’invalidité

Les exemples dans cette section concernent les options de régime d’assurance-vie, d’invalidité de longue durée et de courte durée et de morts accidentelles et démembrement.

Expressions d’assurance-vie

Les exemples suivants sont spécifiques à la configuration des expressions de couverture lorsque vous définissez les options de régime d’assurance-vie dans Configuration des avantages > Régimes et options.

Exemple nº 1

Dans cet exemple, il existe une option d’assurance-vie de conjoint pour laquelle la couverture maximale est moindre que le montant suivant :

  • 50 % du montant de la couverture d’assurance-vie de l’employé
  • 250.000

Créez les variables externes suivantes :

Paramètres de couverture maximale dans la configuration du régime d’avantages sociaux.

Entrez ensuite l’expression suivante pour la couverture maximale :

CoverageMax = EmpLifeCovAmt * 0.50;

if (CoverageMax > 250000){CoverageMax = 250000;}

 

return CoverageMax;

Exemple nº 2

Dans cet exemple, il existe une option d’assurance-vie de l’employé pour laquelle les employés choisissent les montants de couverture souhaités par unités de 10 000. Ils peuvent choisir des montants entre 10 000 et 500 000, mais le montant de couverture qu’ils choisissent ne peut dépasser cinq fois leur salaire annuel. Dans cette expression, vous utiliserez la variable BaseComp, qui est une valeur prédéfinie égale au salaire annuel d’un employé.

Puisque les employés doivent choisir les montants de couverture par incréments de 10 000, il est logique d’arrondir le maximum à 10 000. Dans ce cas, la couverture maximale devrait s’arrondir à la tranche inférieure suivante de 10 000.

Entrez l’expression suivante pour la couverture maximale :

CoverageMax = BaseComp * 5;

CoverageMax = sys.roundToUnit(CoverageMax, 10000, 1.0);

if (CoverageMax > 500000){CoverageMax = 500000;}

 

return CoverageMax;

Exemple 3

Dans cet exemple, le total de la couverture d’assurance-vie de l’employé (c’est-à-dire le total combiné de l’assurance-vie de base et de l’assurance-vie complémentaire) ne peut dépasser un million de dollars. Il existe également deux options d’assurance-vie de base : Directeur et non-directeur. Les deux options fixent la couverture au même montant que le salaire annuel des employés, mais l’option d’assurance-vie de base des directeurs a un maximum plus élevé que l’option des non-directeurs.

Les employés qui choisissent une assurance-vie complémentaire peuvent choisir des montants de couverture par tranches de 25 000, de 25 000 à 1 000 000, et les montants de couverture sont arrondis à chaque 25 000.

Créez les variables externes suivantes :

Paramètres de couverture maximale dans la configuration du régime d’avantages sociaux.

Saisissez ensuite l’expression suivante pour la couverture maximale dans l’option d’assurance-vie complémentaire :

CoverageMax = 1000000 - (BasicEmpLife + BasicExecLife);

CoverageMax = sys.roundToUnit(CoverageMax, 25000, 1.0);

 

return CoverageMax;

Au moment de l’adhésion, un employé avec une couverture d’assurance vie de base de 35 000 ne pourra choisir que des multiples de 25 000 jusqu’à concurrence de 950 000 lorsqu’il choisira le montant de sa couverture d’assurance vie complémentaire afin qu’il ne dépasse pas le maximum de 1 000 000 pour le total combiné de l’assurance vie de base et de l’assurance vie complémentaire.

Expressions d’invalidité de longue durée

Les exemples suivants sont spécifiques à la configuration des expressions de couverture lorsque vous définissez les options de régime d’invalidité de longue durée dans Configuration des avantages > Régimes et options et les expressions de la paie dans Config. paie > Revenus et retenues, dans l’onglet Retenues.

Exemple nº 1

Dans cet exemple, un régime d’invalidité de longue durée comporte des pourcentages de couverture échelonnés en fonction des revenus mensuels :

Pourcentage et revenus mensuels
Pourcentage Revenus mensuels
66,70 % Premiers 2 250,00
50 % Prochains 3 500,00
44 % Du reste

Dans Configuration des avantages sociaux > Régimes et options, saisissez l’expression suivante pour le montant de la couverture afin de calculer l’invalidité de longue durée :

CoverageAmount = CoverageAmount/12;

if (CoverageAmount >= 5750) {CoverageAmount = (CoverageAmount - 5750)*0.44 + 3250.75;}

 

else if (CoverageAmount >= 2250) {CoverageAmount = (CoverageAmount - 2250)*0.50 + 1500.75;}

 

else {CoverageAmount = CoverageAmount*0.667;}

if (CoverageAmount > 7000) {CoverageAmount = 7000;}

 

CoverageAmount = sys.roundToUnit (CoverageAmount, 1, 0.01);

 

return CoverageAmount;

Exemple nº 2

Dans cet exemple, un régime d’invalidité de longue durée comporte des pourcentages de couverture échelonnés en fonction des revenus mensuels :

Pourcentages échelonnés dans un régime d’assurance-invalidité de longue durée
Pourcentage Revenus mensuels
68,5 % Premiers 2 500,00
50,5 % Prochains 2 500,00
42,5 % Du reste

Dans Configuration des avantages sociaux > Régimes et options, saisissez l’expression suivante pour le montant de la couverture afin de calculer l’invalidité de longue durée :

if (CoverageAmount <= 2500)

{CoverageAmt = (CoverageAmount * 0.685);}

 

else if (CoverageAmount > 2500 && CoverageAmount <=5000)

{CoverageAmt = ((CoverageAmount - 2500)*0.505) + 1712.50;}

 

else if (CoverageAmount >5000)

{CoverageAmt = ((CoverageAmount - 5000)* 0.425) + 1712.50 + 1262.50;}

 

if (CoverageAmt < CoverageMin){CoverageAmt = CoverageMin;}

if (CoverageAmt > CoverageMax){CoverageAmt = CoverageMax;}

 

return CoverageAmt * 12;

Exemple 3

Dans cet exemple, un régime d’invalidité de longue durée comporte des pourcentages de couverture échelonnés en fonction des revenus mensuels :

Pourcentage et revenus mensuels
Pourcentage Revenus mensuels
60 % Premiers 3 250,00
50 % Prochains 4 250,00
40 % Du reste jusqu’à 9 300,00

Créez les paramètres configurables et les paramètres calculés suivants pour la retenue sur la paie :

Paramètres de retenues sur la paie.

Exemple de générateur d’expressions d’invalidité de longue durée.

Entrez ensuite l’expression suivante pour la retenue sur la paie :

if (BenefitBase<=39000.00)

{

LTD= (BenefitBase/12 * 0.60 * LTDRate/100);

}

if (BenefitBase>=39000.01) && (BenefitBase<=90000.00)

{

LTD= (1950 + (BenefitBase/12 -3250 * 0.50)) * (LTDRate/100);

}

if (BenefitBase>=90000.01)

{

LTD= (1950 + 2125 + 720) * (LTDRate/100);

}

return LTD;

Expressions en cas de morts accidentelles et de démembrement

Les exemples suivants sont spécifiques à la configuration des expressions de couverture lorsque vous définissez les options de morts accidentelles et démembrement dans Configuration des avantages > Régimes et options.

Exemple

Dans cet exemple, il existe un régime de morts accidentelles et démembrement avec une classe horaire et une classe salariée. Les employés peuvent choisir des montants de couverture entre 25 000 et 500 000 par unités de 1 000 et la couverture doit être arrondie au millier le plus proche.

Pour mettre en place ce régime, créez un régime d’assurance-vie et invalidité, avec le sous-type morts accidentelles et démembrement de base, pour lequel les employés doivent avoir moins de 65 ans pour être admissibles. Ajoutez ensuite deux options : une pour laquelle les employés doivent être salariés pour être admissibles et une pour laquelle ils doivent être payés à l’heure pour être admissibles. Les propriétés générales de votre option de régime horaire ressemblent à ceci :

Configuration de l’option de régime d’avantages sociaux.

Vous pouvez définir les paramètres de couverture dans l’onglet Couverture.

Entrez l’expression suivante pour la couverture minimale :

return 25000.000;

Entrez ensuite l’expression suivante pour la couverture maximale :

return 500000.00;

Enfn, entrez l’expression suivante pour le montant de la couverture :

CoverageAmount=CoverageAmount*1;

 

if (CoverageAmount>CoverageMax) {return CoverageMax;}

else if (CoverageAmount<CoverageMin){return CoverageMin;}

 

return sys.roundtoUnit (CoverageAmount,1000,0.2);