Release Notes for Oracle Health Insurance Enterprise Policy Administration Patch 3.22.1.0.2
This document contains the release notes for Oracle Health Insurance Enterprise Policy Administration Patch 3.22.1.0.2.
Version compatibility: Oracle Health Insurance Enterprise Policy Administration Release 3.22.1.x is only compatible with other Oracle Health Insurance applications release version 3.22.1.x unless explicitly stated otherwise. |
As per the Service Description, you are obligated to request a service upgrade within 90 days of this release being generally available (GA). In line with the Oracle Cloud Services Pillar document, Section 4.2.2 End of Life, this release will be EOL in 12 months. |
Enhancements
ID | Summary | Description | Included in Patch |
---|---|---|---|
NXT-25000 |
Resource representation parameters support through request body |
Currently, resource representation influencing parameters are passed in "Accept" header of HTTP request. When number of values passed in header increase and all headers size crosses 8K, server rejects HTTP request. This enhancement provides an alternative way to pass more than 8K data in resource representation parameters. Instead of passing these parameters in HTTP request header, now these parameters get passed in HTTP request body. This capability is available only for "POST /generic/{entitiy_name}/search" API. This version supports passing parameters in header as well as body. In future releases the parameters in header support will be removed, hence passing parameters will be only supported via HTTP request body. Parameter names are same in body as well as header. In body, these parameters are mentioned under "resourceRepresentation". When body includes "resourceRepresentation", it completely ignores header parameters. Example 1: Resource representation influencing parameters in HTTP request header only
POST http://[hostName]:[portNumber]/[api-context-root]/generic/persons/search Header - Accept : application/json;fields=officeAddress Body : { "resource": { "q": "dateOfBirth.eq('1900-01-01').and.name.eq('Doe')" } } "officeAddress" field is additionally included in response along with default resource representation Example 2: Resource representation influencing parameters in HTTP request body only
POST http://[hostName]:[portNumber]/[api-context-root]/generic/persons/search Body : { "resource": { "q": "dateOfBirth.eq('1900-01-01').and.name.eq('Doe')" }, "resourceRepresentation": { "fields": "officeAddress" } } "officeAddress" field is additionally included in response along with default resource representation Example 3: Resource representation influencing parameters in HTTP request body as well as header
POST http://[hostName]:[portNumber]/[api-context-root]/generic/persons/search Header - Accept : application/json;fields=homeAddress;expand=all Body : { "resource": { "q": "dateOfBirth.eq('1900-01-01').and.name.eq('Doe')" }, "resourceRepresentation": { "fields": "officeAddress" } } "officeAddress" field is additionally included in response along with default resource representation. "homeAddress" and all the dynamic fields/records of person entity won’t be shown in response even though "expand" parameter is available in header. Because, when "resourceRepresentation" is available in body, header parameters are completely ignored. |
|
POL-11122 |
Optimize the performance of reference sheet lines queries |
The performance of querying reference sheet lines from dynamic logic (using SearchBuilder) is optimized by caching the query results (controlled by a system property). |
|
POL-11138 |
Extend Extract Integration Point |
This enhancement extends the extract Integration Point to include dynamic record identifiers. |
|
POL-9796 |
Improved 'date paid to' handling of zero amount registrations |
With this enhancement a single zero amount registration gets applied to multiple consecutive periods having a zero premium amount thereby moving the 'date paid to' to the end date of last free period. This change impacts the following Activities/Integration Points:
|
Configuration Properties
Ref | Action | Subject | Description |
---|---|---|---|
POL-11122 |
Added |
ohi.referencesheetlines.query.results.cache.enabled |
This is an optional property that controls if the reference sheet lines query results should be cached or not. The default value is true. |
POL-11122 |
Added |
ohi.referencesheetlines.query.results.cache.spec |
A specification of Google Guava’s CacheBuilder configuration. It configures a cache for reference sheet lines query results. Defined as a string which is a series of comma-separated keys or key-value pairs, each corresponding to a CacheBuilder method. See Google Guava’s CacheBuilderSpec for additional detail. This is an optional property. Default value is "maximumSize=1000,softValues,recordStats" |
Web Services
Ref | Action | Subject | Description |
---|---|---|---|
POL-11138 |
Modified |
Extract Integration Point |
The extract Integration Point now exposes the identifiers of the dynamic records. |
POL-9796 |
Modified |
Process and Apply Registrations |
Added support for applying a single zero amount registration for multiple consecutive periods |
POL-9796 |
Modified |
Sample Process and Apply Registrations |
Added support for applying a single zero amount registration for multiple consecutive periods |
Dynamic Logic
Ref | Action | Subject | Description |
---|---|---|---|
POL-11151 |
Added |
Added predefined method getPolicyEnrollmentProducts() |
The getPolicyEnrollmentProducts() predefined method can be used to fetch all the Policy Enrollment Products for a specific person. The method is called from a person. |
Deprecated items (to be removed in future release)
Ref | Action | Subject | Description |
---|---|---|---|
NXT-25000 |
Deprecated |
Remove the support of resource representation parameters in accept header |
Resource representation influencing parameters such as fields, expand, response etc. won’t be supported in the header of HTTP request in one of the next major releases. Hence, these parameters should be passed as request body. |
Bug Fixes
BugDB | SR | Internal | BP | Summary |
---|---|---|---|---|
34165226 |
3-29306946721 |
POL-10578 |
BP |
Resources cannot be searched, when the code starts with 25 |
Description: |
For resources(Policies/Group clients etc) having code starting with 25, when we try to search for these resources in the Jet UI, the search never gets completed. When checking the console, the API call is returning a 400 Bad request as status. |
|||
Resolution: |
Handled ESAPI PercentCodec for search involving 'like search' with % symbol |
|||
34192913 |
POL-10644 |
BP |
Business Event Rules Page: 'Description' field is not present in the quick search as well as in the table |
|
Description: |
Business Event Rules Page does not contain description in quick search and the table |
|||
Resolution: |
Business Event Rules Page contains description in quick search and table |
|||
34518945 |
3-30070356458 |
POL-11194 |
BP |
The selection for polling aggregate events is inefficient |
Description: |
If the system property "ohi.connector.event.aggregation.activated" is set to true, the connector checks every x seconds (which is set by the ohi.connector.event.aggregation.interval) if there are unprocessed aggregate events for the connector configuration: this check is a selection which had an inefficient execution plan. |
|||
Resolution: |
Optimized the selection for polling on aggregation events for connector configurations. |
|||
34495227 |
3-30279611451 |
POL-11151 |
BP |
Person Covered Service generation improvements |
Description: |
When there are sequential locked Person Covered Services and Person Covered Services are regenerated with the exact same start- and end date are regenerated, the Business Error GEN-TMVL-011 is thrown. This error results in Policies that remain in Edit status, when submitting them. During Person Covered Service generation, the Reference Input Date is used to skip regenerating all the Person Covered Services that have an end date before this date. To determine the Reference Input Date, it can be useful to know the start date of the first policy enrollment product of a person, regardless of the policy that is submitted at that moment. |
|||
Resolution: |
GEN-TMVL-011 does not occur anymore if Person Covered Services are regenerated with the exact same start- and end date as existing locked Person Covered Services. Predefined method "person.getPolicyEnrollmentProducts" is added to be used in the dynamic logic for generating Person Covered Services. This method returns a list of all the Policy Enrollment Products of a person and can only be used in Person Covered Service dynamic logic. If the dynamic logic need to retrieve policy enrollment products, it is recommended to use this method, as is searches for all policy enrollment products over all policies this person is enrolled on. The results will be cached, therefore the search is executed only once per dynamic logic execution and will not have a big impact on the performance of submitting policies that will generate Person Covered Services. |
|||
34279528 |
3-29420975001 |
POL-10785 |
BP |
Updating dynamic records with many flex codes is very slow |
Description: |
If a dynamic record is defined with many flex codes, change event rules defined on an update of this dynamic record take very long time to complete. |
|||
Resolution: |
Performance on processing these change event rules has been drastically improved. |
|||
34508125 |
3-29698387381 |
POL-11178 |
BP |
Calculate premium activity runs very slow for 4000 groups |
Description: |
Calculate premium activity runs very slow for 4000 groups. Coherence event queue is stuck and activities are processed at a very slow rate. |
|||
Resolution: |
Processing of group account activities is now throttled |
|||
34491664 |
3-30172717271 |
POL-11145 |
BP |
Updates in multi row tabs are saved incorrectly on the policies page |
Description: |
If a record is updated in a tab in the Jet UI on the policies page where multiple rows are displayed, the update is actually done on another record. As an example: Record A and B are shown. A field on record A is updated. After saving record B is updated with the new information and record A is not. This also happens if multiple records are updated at the same time. This behavior is seen on OHI resources as well as dynamic records as well as pages opened up from the policies page. |
|||
Resolution: |
In JET screens updates in multi row tabs are saved correctly. For example: If there are 2 dynamic records A and B and a field on Record A is updated, after save Record A has the update and not B |
|||
34500097 |
3-30322410943 |
POL-11169 |
BP |
A mandatory dynamic field based on a flex code is not showing on the policies enrollment tab |
Description: |
A mandatory dynamic field based on a flex code on the policy enrollment object is not being shown in the JET UI. When the policy is in view mode, the field cannot be populated. |
|||
Resolution: |
A mandatory dynamic field based on a flex code on the policy enrollment object displays the values in the dropdown in JET Policies page and it can be viewed without issues after save |