Time Slice for Plans
The "time slice" is a way of recording the changes of an entity across the time period. It provides a way for a user to enter the data on the entity screen instead of using the Activities. OIPA already support time slicing for Class Group and Client relationship entities. This feature is to create the similar functionality to support the time slicing for the Plan and PlanSegment entity. The ability to record the changes for Plan and PlanSegment data across the time period was kept out of scope while considering wildcat scope (OIPA V10.0). This feature is to build the time slice functionality for Plan and PlanSegment entity and allow system to create/update plan and PlanSegment with appropriate time slice data.
Prototype Configuration DetailOverviewThis feature extends the time slicing functionality to Plan and PlanSegment entities. This enables the user to easily view and update the Plan and PlanSegment for multiple time periods.
OIPA already support time slicing for Class Group and Client relationship entities. With this feature user should also have the ability to enter a change (past, current-dated, or future) from the same UI page where plan or related data is viewed.
In addition this feature will retain the benefits provided by activity processing – undo/redo capability, history/audit trail of changes made.
PrerequisitesUser should have access to the 'PlanTimeSliceTest' transaction, BaseCoveragePlus Segment of Group Prototype Product.
User should have created a Group customer to add the PlanScreen Business Rule
New ItemsScreen name: PlanScreen
Company name: Prototype Group Child Company
Transaction name: PlanTimeSliceTest
Company name: Prototype Group Child Company
Product name: Group Prototype Product
Transaction name: PlanScreenUpdate
Company name: Prototype Company
Plan name: Customer Plan
Attached rule: ProcessChangeRequest
Existing ItemsScreen name: PolicyScreen
Company name: Prototype Group Child Company
Product name : Group Prototype Product
Segment name: BaseCoveragePlus
Calculate Rule name: CalculateGeneralLifeBaseCov
Company name: Prototype Group Child Company
Product name: Group Prototype Product
Configuration Details
PlanScreen Business Rule:It is configured at 'Prototype Group Child Company' which has a 'MaximumFaceAmount' field configured in the screen and will be spawning 'PlanScreenUpdate' transaction which will pass the PlanName to the transaction.
When Plan is added to the Agreement, the plan Table which has been modified based on the Plan
Time slice requirement shows the below observation:The grid only displays Plan entities that have a non-shadowed record status by default, only three columns i.e Plan Name, Product Name and Company Name columns will be displayed on the Plan Entity Grid. Rest all other column will be removed:
The Plans table section will also support right-click menu navigation options.
'Go To Agreement' navigates the user to the Agreement Screen/Plans tab and passes the Plan identifier and Plan Effective Date values to pre-select the targeted Plan Agreement record.
Plan Time slice gridThe grid is always influenced by the selection of the Plan entity and the value of the As Of Date. which will display time slices for the Plan entity selected.
The grid by default displays non-shadowed time slices ordered by descending effective dates.
The system auto-selects the active time slice where the As Of Date is between a time slice’s effective and expiration dates. If there is no active time slice for given As Of Date then system will auto selects the first slice in plan time slice grid.
Any row of the grid may be selected by the user to display the Plan time slice’s detailed field data.
On Selection of Plan Time Slice it will display two tab Plan Details and Plan Segments with the details pertaining to the selected time slice.
Plan Details
If it does not have ANY Plan history (i.e 'time slice') records in 'Active' or 'Pending' status and only the initial record exists for the Plan and it is still in 'Draft' status then if such time slice selected, all the details available to edit except EffectiveTo (Expiration Date), Company and Product Name
If it has a Plan history (i.e 'time slice') records in 'Active' or 'Pending' status and selected time slice is in 'Draft' status then none of the plan fixed fields except Status (Will be mapped to AsPlan.BusinessStatusCode) will be available for editing. All the Dynamic field will be available for editing.
Plan Segments
If it does have ANY Plan history (i.e 'time slice') records in 'Active' or 'Pending' status and selected time slice is in 'Draft' status then if selected segment belongs to such time slice then , none of the PlanSegmentName fixed field will be available for editing. All the Dynamic field will be available for editing.
In selected plan time slice is in 'Draft' status, 'Add' And 'Delete' option will be available. Current functionality will be applicable for a new plan segment addition/Deletion.
In all other cases 'Add' and 'Delete' option will not be available.
Right click on Plan Segment will only have 'Delete' (If it met other required condition) option. 'Edit' option will be removed.
If the status of the time slice is 'Pending' or 'Active', all the details are non-editable in both the tabs –Plan Details, Plan Segments. Further, in Plan Segments tabs – 'Add' and 'Delete' options will not be available for the user.
Add First Plan Time SliceSystem will continue to support the new plan addition from the Agreement Plan Screen.
When a new plan will be added,System will treat it as a first slice for that plan entity and create a new plan time slice in 'Draft' status and EffectiveTo field will be disabled.
PlanSegmentName should be unique within a Plan Time Slice. If duplicate then system should throw an error 'PlanSegmentName is duplicate.
'Add' Plan Time SliceWhen a user clicks on the 'Add' button, a pop-up screen displays an option for the user to enter the Effective Date
The Add button is not visible until there is at least one Active (record status) time slice for the selected Plan Entity
Add New Time Slice Pop-up opens and user may use the date picker or type the date in which the new time slice will be effective
Error is thrown when there is an invalid effective date
If the user is creating a time slice where the effective date is equal to the effective date on an existing Active time slice then it shows an exception 'Invalid Effective Date for new Plan Time Value Record'
If Cancel button is selected it closes the pop-up and returns the user to the Plan screen as it was left.
If Next button is selected it closes the pop-up and returns the user to the Plan screen
No time slice will be selected in the Plan Time Slice Grid if one had been selected prior to pressing the Add button
No new time slice will be added until the save or submit buttons have been pressed
The system displays the two tabs 'Plan Details' and 'Plan Segments'
The Plan Detail screen is enabled and Save and Cancel buttons are visible
Effective Date is populated with the effective date entered on the pop-up
All fixed and dynamic fields are pre-populated as follows except for the Expiration Date, Record Status and Business Status fields
If the new time slice predates all existing time slices for the Plan, the initial detail field data is defaulted from the oldest existing time slice with an Active record status
Otherwise, the initial detail field data is defaulted from the immediately preceding time slice with an active record status
All dynamic fields are enabled and may be modified unless otherwise designated by configuration
None of the plan fixed fields except Business Status field will be editable.
Effective From is pre-populated and the Effective To will be set up in an activity when the slice becomes Acitve
Once the user clicks 'Save' after editing the 'Plan Details 'tab values, a new time slice is created in 'Draft' status(Record Status).
Plan Time Slice DifferencesLeft most column of Plan Time Slice table which will contain check boxes. These check boxes are used to select the Time Slices that will be compared for differences.
Once the user selects two Time Slice check boxes have been selected the check boxes on the other time slice rows will be disabled and the 'Show Diff' button will be enabled
The user will select the 'Show Diff' button and the Difference Report pop up will open and display the following sections in the pop up screen:
It will have two tabs 'Plan Details' and 'Plan Segments'
Plan Details: This tab will show the differences between the Plan detail fields of the two time slices.
The column headings for the differences would show the effective from and effective to dates of the two time slices along with the Status of the time slice in bracket. Irrespective of the order of selecting the time slices, the differences would always show the time slice pertaining to an earlier time interval in the left and the later time slice in the right.
Plan Segments: This will show a comparison of the available 'Segment' between the two time slices.
This will be a comparison of the tree structure as two images side by side. The trees will reflect the available segment for the given plan.
It will have a bottom tabular section . That section is blank until the user selects the Segments from Plan Segment Section to be compared.
Once a user selects a Segment from one tree structure, the system automatically selects the same name Segment from the other tree structure, if such a Segment exists. If such a Segment exists, the system displays the bottom tabular section showing the differences between the two segment. Else, the system displays a message requesting user to select a segment which exists in both the tree structures.
Plan Time Slice Test
PlanTimeSliceTest transaction is configured to access the Plan data and PlanSegment data through PlanLoop and PlanSegmentLoop respectively.
PlanTimeSliceTest transaction has the following fields configured:
PlanSegmentName : Fetches the Plan Segment name by using PlanSegmentLoop
PlanEffectiveFrom : Fetches the Effective date of the Plan by using the PlanLoop
PlanName : Fetches the name of the Plan by using the PlanLoop. And also these values are captured in the mathvariables.
When the transaction is processed successfully PlanSegmentName, PlanEffectiveFrom, PlanName fields will be populated on submit and also it is visible in the math section.
BaseCoveragePlus and CalculateGeneralLifeBaseCov :
Existing BaseCoveragePlus Segment is used for prototype configuration. In addition to the existing fields following fields have been configured in the BaseCoverageplus Segment:
PlanNameFromSegment : Fetches the Name of the plan from the segment itself by using PlanLoop
PlanEffectiveDateUpdatedFromSegment : Fetches the Effective date of the plan from the segment itself by using PlanLoop
PlanSegmentNameUpdatedFromSegment : Fetches the segment Name of the plan from the segment itself by using PlanSegmentLoop
PlanNameFromCalculateGeneral : updated by the CalculateGeneralLifeBaseCov which fetches the Plan name by using PlanLoop
PlanEffectiveDateUpdatedFromCalculateGeneral : updated by the CalculateGeneralLifeBaseCov which fetches the Plan Effective date by using PlanLoop
PlanSegmentNameUpdatedFromCalculateGeneral : updated by the CalculateGeneralLifeBaseCov which fetches the Segment name by using PlanSegmentLoop
When the BaseCoveragePlus Segment is added PlanNameFromSegment, PlanEffectiveDateUpdatedFromSegment and PlanSegmentNameUpdatedFromSegment will be populated from segment on submit where as the fields PlanNameFromCalculateGeneral,
PlanEffectiveDateUpdatedFromCalculateGeneral and PlanSegmentNameUpdatedFromCalculateGeneral will be populated from the CalculateGeneralLifeBaseCov of the segment.
PolicyScreen Business Rule:Existing PolicyScreen which is at Group Prototype Product is used for prototype configuration. In addition to the existing fields following fields have been configured :
PlanEffectiveDate : Fetches the Effective date of the plan by using PlanLoop.
PlanSegmentName : Fetches the Segment Name by using PlanSegmentLoop.
When the Policy of Disability product is added PlanSegmentName and PlanEffectiveDate will be populated on submit of the policy.