PolicyScreen
Policy screen is the foundation of an insurance contract. It is a main screen of OIPA. This screen rule is overridden at the plan level for each product, where it houses product specific information, or at the system level, where it’s used as the basis for creating the Application screen.
This business rule is used to configure the fixed fields of the Policy screen in order to:
- Capture the basic information required for the policy like effective date, issue date, issue state, policy number, etc.
- Perform policy level allocations
- Define roles, role counts, role percents and client types for roles that are required for a policy
- Define segment requirements
- Enable/Disable policy field and state approvals
This business rule is used to configure the fixed fields of the Application screen in order to:
- Capture basic application information, such as active date, issue date, issue state, application number, etc.
- Add requirements to the application
- Add impairments to the application
Policy summary section is added to the Policy Overview Screen to make it consistent with other policy related pages and compatible with prior versions. Now policy summary is displayed with all of the fixed fields presented in the same order and format as they present on the PolicyScreen. This is the default presentation of the policy summary for all policy related pages except the PolicyScreen which retains the current fixed field and dynamic field presentations alone and no summary. In addition, configurability for policy summary will be added so each customer may specify the fixed fields and presentation order they wish.
If the Policy Summary section configuration does not exist in the PolicyScreen business rule, the following fields/values are displayed in the order as stated below:
- Policy Number
- Company
- Plan
- Plan Date
- Policy Name
- Policy Status
Element/Tag | Parent Element | Attribute | Definition | Element/Attribute Value and Description |
---|---|---|---|---|
<PolicyScreen> |
|
The opening and closing tag of the business rule. |
|
|
<Filter> | <PolicyScreen> |
Optional element: Allows to restrict access of privileged policies from selected security groups. |
||
<Conditions > | <PolicyScreen> | Required | ||
<Conditions > | SecurityGroup |
Required: The security group on which the filtering should be applied. Multiple security groups can be added with coma separated values. |
||
<Conditions > | Type |
Optional |
Values: Exclusion Default: Exclusion |
|
<Conditions > | Operator | Optional | Values: OR|AND Default: OR |
|
<Condition> | <Conditions > | Required | ||
<Conditions > | Fieldname |
Required: The dynamic field name |
Field Name | |
<Conditions > | Value |
Required: The dynamic field value |
Field Value | |
<AllowPlanDateModifications> | <PolicyScreen> |
Optional element: This element defines whether the PlanDate field is disabled after the policy is saved for the first time, or if it enabled/disabled based on the value of the <DisablePolicyFields> element. |
Yes/No
Yes - The PlanDate field will be enabled/disabled based on the policy's status and the value of the <DisablePolicyFields> element. No - The PlanDate field will be disabled when the policy is saved for the first time. Note: If set to "Yes," the Plan Date entered by the user will be validated based on two conditions: If <UseStateApproval> is set to "Yes" in the PlanScreen business rule, the Plan will be valid in the selected Issue state provided the PlanDate is between the EffectiveDate and ExpirationDate saved in the AsPlanStateApproval table. If state approvals are applicable at the segment level, and the <SegmentName> element's APPROVALDATE attribute is set to "PlanDate" on the corresponding SegmentScreen rule, the Plan will be valid in the selected Issue state provided the PlanDate is between the EffectiveDate and ExpirationDate saved in the AsSegmentStateApproval table. If the PlanDate entered by the user is invalid based on any of the conditions above, an error message will be displayed, and the PlanDate field will be reset to its previous value. |
|
<FixedFields> |
<PolicyScreen> |
|
Optional element: This element allows the fixed fields to have the same configuration capabilities as dynamic (below the line ) fields: the only exception being the ability to change the fixed field data types. |
|
<Fields> |
<PolicyScreen> |
|
Required element:
See Fields. Note: Icons for PolicySearchScreen and ClientSearchScreen can be configured in the PolicyScreen by using the client datatype, which will be displayed as disabled text boxes with search and people icons, respectively. Searching returns the respective GUIDs. |
|
<PolicySummary> | <PolicyScreen> |
Optional: Allows a customized definition of the Policy Summary that appears at the top of all policy related pages except the Policy Screen. Default behavior when the element is not configured is to present all policy fixed fields in the same order and format as they display on the Policy Screen. |
||
<Summary> | <PolicyScreen> | The opening and closing tags of the summary section of the Policy Summary. | ||
<FixedFieldName> | <PolicySummary> | Names the fixed field to present. | PolicyNumber | PolicyName | StatusCode | PlanDate | Company | Plan | IssueStateCode | Product | |
<Fields> | <PolicySummary/Summary> | Wrapper element of Field Element. | ||
<Field> | <Fields> | Names the fields to be presented. | ||
<Name> | <Field> | Specifies the database column in which the field values are stored. | ||
<Display> | <Field> |
BOLD ITALICS |
Optional: Renders bold or italicized representations of a dynamic field’s contents. |
Yes: Field contents will be bold and/or italicized. No: Contents will not have bold or italicized content. |
<Group> | <Field> |
Required element if configured under Summary Tag This is the name of the group (table) that should be used to obtain the value. This is used only where source data may come from multiple tables (i.e., search screens). |
Policy | PolicyField | Math | |
<Client> | <Summary> | Container element for all the client fields. | ||
<ClientType> | <Client> | |||
ROLECODE |
Required: Mandatory field when ClientType is used. |
AsCodeRole from ASCode table. | ||
<Fields> | <ClientType> | |||
<Field> | <Fields> | Names the fields to be presented. | ||
<Name> | <Field> | Specifies the database column in which the field values are stored. | ||
<Display> | <Field> |
BOLD ITALICS |
Optional: Renders bold or italicized representations of a dynamic field’s contents. |
Yes: Field contents will be bold and/or italicized. No: Contents will not have bold or italicized content. |
<Group> | <Field> |
Required element if configured under Summary Tag This is the name of the group (table) that should be used to obtain the value. This is used only where source data may come from multiple tables (i.e., search screens) |
Client | ClientField | |
<Address> | <Summary> | Container element for all the Address fields | ||
<AddressType> | <Address> | |||
ROLECODE | Required | AsCodeRole from AScode table. | ||
ADDRESSTYPECODE | Required | Value from the AsCodeAddressRole column of the AsCode table: ‘01’, ‘02’, etc | ||
<Fields> | <AddressType> | |||
<Field> | <Fields> | Names the fields to be presented. | ||
<Name> | <Field> | Specifies the database column in which the field values are stored. | ||
<Display> | <Field> |
BOLD ITALICS |
Optional: Renders bold or italicized representations of a dynamic field’s contents. |
Yes: Field contents will be bold and/or italicized. No: Contents will not have bold or italicized content. |
<Group> | <Field> |
Required element if configured under Summary Tag This is the name of the group (table) that should be used to obtain the value. This is used only where source data may come from multiple tables (i.e., search screens). |
Address | AddressField | |
<Role> | <Summary> | Container element for all the Role fields | ||
<RoleType> | <Role> | |||
ROLECODE |
Required: Mandatory field when RoleType is used. |
AsCodeRole from AScode table | ||
<Fields> | <RoleType> | |||
<Field> | <Fields> | Names the fields to be presented. | ||
<Name> | <Field> | Specifies the database column in which the field values are stored. | ||
<Display> | <Field> |
BOLD ITALICS |
Optional: Renders bold or italicized representations of a dynamic field’s contents. |
Yes: Field contents will be bold and/or italicized. No: Contents will not have bold or italicized content. |
<Group> | <Field> |
Required element if configured under Summary Tag This is the name of the group (table) that should be used to obtain the value. This is used only where source data may come from multiple tables (i.e., search screens). |
Role | RoleField | |
<GroupCustomer> | <Summary> | Container element for all the GroupCustomer fields | ||
<GroupCustomerType> | <GroupCustomer> | |||
ROLECODE |
Required: Mandatory field when GroupCustomerType is used. |
AsCodeRole from AScode table. | ||
<Fields> | <GroupCustomerType> | |||
<Field> | <Fields> | Names the fields to be presented. | ||
<Name> | <Field> | Specifies the database column in which the field values are stored. | ||
<Display> | <Field> |
BOLD ITALICS |
Optional: Renders bold or italicized representations of a dynamic field’s contents. |
Yes: Field contents will be bold and/or italicized. No: Contents will not have bold or italicized content. |
<Group> | <Field> |
Required element if configured under Summary Tag This is the name of the group (table) that should be used to obtain the value. This is used only where source data may come from multiple tables (i.e., search screens). |
GroupCustomer | |
<FixedFieldName> | <FixedFields> | Required: Names the fixed field to present. Filler may also be presented. | Optional: Indicates whether the field will occupy an entire line on the screen | |
<MultiFields> |
<PolicyScreen> |
Optional element; Allows configuration of MultiFields in the PolicyScreen See MultiFields element for additional information. |
MultiFields enables and allows Policy Screen with multiple sets of dynamic field values. |
|
<Buttons> |
<PolicyScreen> |
|
Required element:
|
|
<Button> |
<Buttons> |
|
Optional element:
|
Required Element value: Allocate |
<Events> |
<PolicyScreen> |
|
See Action Events |
|
<ScreenMath> |
<PolicyScreen> |
See ScreenMath Element. |
||
<Actions> |
<PolicyScreen> |
See Action Events |
||
<SegmentsAllowed> |
<PolicyScreen> |
|
Optional element:
|
Required element value: Note: The star * symbol indicates that unlimited number of segments can be allowed for a policy. |
<MinimumSegments> |
<PolicyScreen> |
|
Optional element:
|
Optional element value: Integer
Note: This element is required to add activities. |
<PolicyScreen> |
|
Optional element:
Note: When AutomaticPolicyNumber generator is not used, PolicyNumber field should be editable even after saving the policy that allows the entering and editing in that field until another policy event (calculating a coverage, issue of the policy). |
|
|
<DisabledStatus> |
<DisablePolicyFields> |
|
Required element:
|
Required element
value: |
<SegmentCount> |
<PolicyScreen> |
|
Optional element:
|
Optional element value: * / + " * ": Disables policy fields in all
conditions.
" + ": Disables policy fields when policy has at least a minimum of one segment in active status. |
<AutomaticPolicyNumber> |
<PolicyScreen> |
|
Optional element:
|
Yes: Allows generating automatic policy number when new policy is created. Optional: If a number is entered, then the value will be considered and recorded. If it is not entered, then the system will automatically generate a policy number. No:Automatic policy number will not be generated
when new policy is created and allows the user to enter
the policy number in the PolicyNumber field. If this
element is not present default is "No".
|
<Roles> |
<PolicyScreen> |
|
Opening tag for defining roles on the policy. |
|
<Role> |
<Roles> |
|
Required and repeatable
element:
This element defines the description of the role that will be added to the policy. |
Note:
|
<Role> |
NAME |
Optional
attribute: |
||
<Role> | DISABLEBYPOLICYSTATUS |
Optional attribute:
Used to prevent disabled roles from being disabled. It is also used to disable role fields, role percents and prevent disabled fields from being added to a policy. |
||
<Role> | ALLOWREQUIREMENTS |
Controls the 'Add Requirement' button on the Requirement screen. The Requirement screen can be viewed by clicking on the Requirement tab. |
Optional attribute: Yes: The 'Add Requirement' button will display. No: The 'Add Requirement' button will not display. |
|
<RoleCode> |
<Role> |
|
Required element:
|
Required element
value: |
<RoleCount> |
<Role> |
|
Optional element:
|
Required element
value: |
<RolePercent> |
<Role> |
|
Required element:
|
Required element value:0-100 or * An asterisk can be used to indicate that the total percent for the associated role can exceed 100%. Each individual record will still have a maximum of 100%, but the total for multiple records on the same Policy Role will be able to exceed 100%. |
<ClientType> |
<Role> |
|
Optional element:
Example:An insured may need to be an individual client type for a particular plan. |
Required element
value: |
<Tests> |
<Role> |
|
Optional Element:
|
|
<Test> |
<Tests> |
Required/Repeatable
Element:
|
Expression:
|
|
<Test> |
TYPE |
Optional attribute: (="Expression") To indicate the type of the condition. Example: <Test TYPE="Expression"> |
||
<AllowZeroPercent> |
<Role> |
|
Optional element: Allows Zero percent in Role percent fields. |
Required element value: Yes/No Yes:Allows user to enter zero percent in the Rolepercent field. No:When set to "No" then Zero Percent is not allowed. Note: If this element is not present then the default is "Yes". |
<AllowPercent> |
<Role> |
|
Optional element: Controls the display of the Percent box next to the names of individuals that have been assigned to the specified role. |
Required element value: Yes/No Yes: When set to "Yes" the Percentage box is displayed next to the name of the individual that has been assigned to the specified role. No: The percentage box is not displayed next to the name of individuals that have been assigned to the specified role. Note: If this tag is not present then the default is "Yes". |
XML Schema
<PolicyScreen>
<Summary>
<Fields>
<Field>
<Name></Name>
<Display></Display>
<Group> Math | Literal</Group>
</Field>
..
..
</Fields>
<Client>
<Fields>
<Field>
<Name></Name>
<Display></Display>
<Group> Math | Literal</Group>
</Field>
..
..
</Fields>
</Client>
<Address>
<Fields>
<Field>
<Name></Name>
<Display></Display>
<Group> Math | Literal</Group>
</Field>
..
..
</Fields>
</Address>
<Role>
<Fields>
<Field>
<Name></Name>
<Display></Display>
<Group> Math | Literal</Group>
</Field>
..
..
</Fields>
</Role>
<GroupCustomer>
<Fields>
<Field>
<Name></Name>
<Display></Display>
<Group> Math | Literal</Group>
</Field>
..
..
</Fields>
</GroupCustomer>
</Summary>
<AllowPlanDateModifications>[Yes|No]</AllowPlanDateModifications>
<FixedFields>Please refer to "Fixed Fields"</FixedFields>
<Fields>Please refer to "Fields".</Fields>
<MultiFields RULE="[RuleName]">"[Yes|No]"</MultiFields>
<Buttons>
<Button>"[Allocate|Activity|Values|Withholding|PolicyOverview]"</Button>
</Buttons>
<Events>Please refer to "Events"</Events>
<ScreenMath>
<Math>Please refer to "Math"</Math>
</ScreenMath>
<Actions>Please refer to "Actions"</Actions>
<Roles>
<Role NAME="[RoleName]" DISABLEBYPOLICYSTATUS="[DisableByPolicyStatusList]" EXTERNAL="[Yes|No]"
ALLOWREQUIREMENTS="[Yes|No]">
<ExternalClientRowRetriever>[client search class loader]</ExternalClientRowRetriever>
<AllowZeroPercent>"[Yes|No]"</AllowZeroPercent>
<AllowPercent>"[Yes|No]"</AllowPercent>
<RoleCode>"[RoleCode1,RoleCode2]"</RoleCode>
<RoleCount>"[Integer|*]"</RoleCount>
<RolePercent>"[0-100|*]"</RolePercent>
<ClientType>"[ClientTypeList]"</ClientType>
<Tests>
<Test>"[Condition]"</Test>
</Tests>
<CustomScreen>[custom screen display class]</CustomScreen>
</Role>
</Roles>
<AutomaticPolicyNumber>"[Yes|Optional|No]"</AutomaticPolicyNumber>
<DisablePolicyFields>
<DisabledStatus>"[DisabledStatusList]"</DisabledStatus>
<SegmentCount>"[*|+]"</SegmentCount>
</DisablePolicyFields>
<MinimumSegments>"[Integer]"</MinimumSegments>
<SegmentsAllowed>"[Integer|*]"</SegmentsAllowed>
<ShadowPolicy>
<AllowShadowButton>
<StatusCode>"[ShadowPolicyStatusCodeList]"</StatusCode>
</AllowShadowButton>
<ShadowStatusCode>"[PolicyShadowStatusCode]"</ShadowStatusCode>
</ShadowPolicy>
</PolicyScreen>
XML Example
<PolicyScreen>
<AllowPlanDateModifications>Yes</AllowPlanDateModifications>
<Fields>
<Field>
<Name>SortCompany</Name>
<Display>Company</Display>
<DataType>Combo</DataType>
<Query TYPE="SQL">SELECT FundClassGUID, FundClassName FROM AsFundClass ORDER BY 2 DESC</Query>
<Disabled>Yes</Disabled>
</Field>
<Field>
<Name>ActiveDate</Name>
<Display>Date Activated</Display>
<DataType>Date</DataType>
<Disabled>Readonly</Disabled>
</Field>
<Field>
<Name>Carrier</Name>
<Display>Carrier Company Name</Display>
<DataType>Combo</DataType> <Query TYPE="SQL">SELECT ClientGuid, CompanyName FROM AsClient WHERE TypeCode = '19'</Query>
</Field>
</Fields>
<PolicySummary>
<FixedFieldName EXPANDED= "Yes | No">[PolicyNumber | PolicyName | StatusCode | PlanDate | Company | Plan | IssueStateCode | Product | Filler]</FixedFieldName>
</PolicySummary>
<Buttons>
<Button>Save</Button>
<Button>New</Button>
<Button>Close</Button>
</Buttons>
<Roles>
<Role DISABLEBYPOLICYSTATUS="01,02,95">
<RoleCode>01</RoleCode>
<RoleCount>1</RoleCount>
<RolePercent>100</RolePercent>
</Role>
<Role>
<RoleCode>37</RoleCode>
<RoleCount>1</RoleCount>
<RolePercent>100</RolePercent>
</Role>
</Roles>
<SegmentsAllowed>4</SegmentsAllowed>
<MinimumSegments>1</MinimumSegments>
<AutomaticPolicyNumber>Yes</AutomaticPolicyNumber>
</PolicyScreen>
XML Example for Policy Summary
<PolicyScreen>
<Summary>
<Fields>
<Field>
<Name>PolicyNumber</Name>
<Display BOLD="Yes">Policy Number</Display>
<Group>Policy</Group>
</Field>
<Field>
<Name>EffectiveDate</Name>
<Display>Effective Date 123</Display>
<Group>PolicyField</Group>
</Field>
<Field>
<Name>FinalValidationMath:PolicyNameError</Name>
<Display>Math variable</Display>
<Group>Math</Group>
</Field>
</Fields>
<Client>
<ClientType ROLECODE="04">
<Fields>
<Field>
<Name>ClientGUID</Name>
<Display>ClientGUID</Display>
<Group>Client</Group>
</Field>
<Field>
<Name>DynamicField</Name>
<Display>DynamicField</Display>
<Group>ClientField</Group>
</Field>
</Fields>
</ClientType>
</Client>
<Address>
<AddressType ROLECODE="04" ADDRESSTYPECODE="02">
<Fields>
<Field>
<Name>Address</Name>
<Display BOLD="Yes">Address</Display>
</Field>
</Fields>
</AddressType>
<AddressType ROLECODE="04" ADDRESSTYPECODE="01">
<Fields>
<Field>
<Name>AddressLine1</Name>
<Display>Address Line1</Display>
<Group>Address</Group>
</Field>
<Field>
<Name>City</Name>
<Display>City</Display>
<Group>Address</Group>
</Field>
<Field>
<Name>DateField</Name>
<Display BOLD="Yes">Date Field</Display>
<Group>AddressField</Group>
</Field>
</Fields>
</AddressType>
</Address>
<Role>
<RoleType ROLECODE="37">
<Fields>
<Field>
<Name>RoleGUID</Name>
<Display>RoleGUID</Display>
<Group>Role</Group>
</Field>
<Field>
<Name>BillingSelectAddress</Name>
<Display>BillingSelectAddress</Display>
<Group>RoleField</Group>
</Field>
</Fields>
</RoleType>
</Role>
<GroupCustomer>
<GroupCustomerType ROLECODE="02">
<Fields>
<Field>
<Name>CompanyName</Name>
<Display>Company name</Display>
<Group>GroupCustomer</Group>
</Field>
</Fields>
</GroupCustomerType>
</GroupCustomer>
</Summary>
</PolicyScreen>
Group Customer Screen XML Example
Example for Restricting Access of Privileged Policies using Filters
<PolicyScreen>
<Filter>
<Conditions SecurityGroup = "Prototype Super,AlamereTest" Type ="Exclusion" Operator ="OR|AND">
<Condition Fieldname ="PrivilegedField1" Value = "X"></Condition>
<Condition Fieldname ="PrivilegedField2" Value = "Y"></Condition>
</Conditions>
</Filter>
</PolicyScreen>