Release Notes for Oracle Health Insurance Enterprise Policy Administration Release 4.25.1.0.0

This document contains the release notes for Oracle Health Insurance Enterprise Policy Administration Release 4.25.1.0.0.

Version compatibility: Oracle Health Insurance Enterprise Policy Administration Release 4.25.1.x is only compatible with other Oracle Health Insurance applications release version 4.25.1.x unless explicitly stated otherwise.
In accordance with the OHI error correction policy (Document 1494031.1 on My Oracle Support), error correction support will be provided for this release and the previous two releases.

Enhancements

ID Summary Patch

CPN-2919

Operational Reports and Data Transfer

This release introduces two new features:

  • Operational Reports: To generate reports on operational data from reporting views.

  • Data Transfer: To export data from base views, including PHI data. This feature is designed to replace the existing Extract IP, offering improved performance and memory efficiency. The existing behavior of base views remains unchanged when using BI Publisher (PHI data is excluded by default, controlled by the system property ohi.baseview.exclude.pii). The Data Transfer feature supports data extraction in the following formats:

    1. CSV (Headers are not included in this release; they will be included in the upcoming patch release)

    2. JSON

    3. XML (available only for cloud customers)

    4. PARQUET (available only for cloud customers)

CPN-3076

Move PHI Logs to OCI Object Storage

With the introduction of the PHI logging feature in operational reporting and the new data transfer IP, a significant increase in PHI log volume is expected. To optimize database storage usage and improve overall performance, PHI logs are migrated from the database to lower-cost storage options. In cloud deployments, logs are stored in OCI Object Storage, while in on-premise environments, logs are stored in the file system. This change reduces database load, ensuring better efficiency and scalability as log volumes grow.

Following this enhancement, PHI logs are retained in the database for 60 days, allowing customers to retrieve recent logs via the existing logphievents Query API. Beyond this retention period, older logs are no longer retained in the database. For cloud customers, these logs are archived in Oracle-managed OCI Object Storage, and retrieval requires submitting a request to the AMS team. In on-premise deployments, logs remain accessible in the file system according to the customer’s retention policies.

This enhancement improves database performance by significantly reducing storage overhead while maintaining access to recent logs. If you are a cloud customer and if you have relied on long-term PHI log retention, review your internal processes and work with AMS as needed to ensure continued access to historical data. No changes are required for application integrations querying logs within the 60-day window, but if you are a cloud customer, plan for an alternative retrieval approach for older logs.

CPN-3218

Groovy 4 upgrade

This release includes an upgrade from Groovy 3.x to Groovy 4.0.24. This upgrade introduces performance enhancements, new syntax options, and improved security. The upgrade also introduces breaking changes that may impact existing dynamic logic, as some APIs and packages are removed. For detailed information, please refer to the Groovy 4.0 Release Notes.

Groovy 3 provided duplicate versions of several classes in legacy packages to ease migration. With Groovy 4, these legacy classes are removed. For detailed information, please refer to the Groovy 3.0 Release Notes. For example, classes previously available in both groovy.util and groovy.xml packages (e.g., XmlSlurper, XmlParser) are only available in groovy.xml package in Groovy 4. Therefore, if you use classes from groovy.util package in the dynamic logic, update the dynamic logic to use groovy.xml package instead before upgrading to this release. See the section "Additional Upgrade Steps" for more details.

To enable compatibility with Groovy 4, the bytecode of existing dynamic logic is reset during the upgrade. This reset causes the application start-up time to be slightly longer on the first startup after the upgrade, as the dynamic logic are recompiled at startup time. Future application restarts do not recompile this bytecode, so subsequent startups are faster.

CPN-3246

File type validation

This enhancement introduces a new validation check that ensures uploaded files (for example, via Data File Sets IP) conform to a predefined set of allowed file types. This feature prevents users from uploading files with unsupported formats, improving data integrity and system security.

CPN-3247

Removed database details from error messages

Certain database error responses, such as ORA-12899 ("value too large for column") expose internal database details, such as table and column names. To prevent this information from being revealed in API/IP responses, these error messages are modified to replace direct references to table and column names with corresponding entity and attribute names.

CPN-3249

Cache control headers for sensitive data

This enhancement prevents sensitive information from being stored locally in a browser using the property ohi.httpapi.cache.control.enable. When unspecified or set to false , the Cache-Control header is set to no-store for API requests using cache settings PHI and REFERENCE. When set to true, the behavior remains unchanged.

Documentation Links:
Developer Guide - HTTP API Caching

CPN-3356

Antivirus Scanning for Uploaded Files in Cloud Deployments

This enhancement introduces Antivirus scan for files uploaded to OHI (for example, through Data File Sets IP or Exchanges IP in OIG application) in cloud deployments. Only files that pass the Antivirus scan are processed, ensuring that uploaded files do not pose a security risk.

CPN-3377

Document maximum number of dynamic fields on objects

This enhancement extends the generic tables API with information about the maximum number of single-value non-time-valid dynamic fields available on an entity.

CPN-3456

Channel HTTP headers

This enhancement introduces two new custom HTTP headers:

  • X-OHI-CHANNEL-TYPE

  • X-OHI-CHANNEL-SOURCE

These headers enable tracking of API/IP request origins by identifying the type and context of the originating channel (e.g., JET UI, portals, etc.). This structured tracking provides reliable data for improved monitoring and analytics.

When making calls to OHI APIs from external systems, such as portals, customers are encouraged to set these headers. Doing so enhances the ability to monitor request origins, supporting better operational insights and tracking.

NXT-24521

Optimized data file storage using OCI Object Storage in SaaS

Prior to this release, data files were stored in the database. To optimize storage cost and improve overall performance, data files are now stored in Oracle-managed OCI Object Storage for SaaS deployments.

The interfaces for uploading and downloading data files (via Data File Sets IP and Exchanges IP in OIG application) remain unchanged.

For on-premise deployments, data files continue to be stored in the database, so existing behavior is unaffected.

NXT-25384

GET search through query API isn’t supported

The GET method for searching entities via /generic/<entityName>?queryParams is no longer supported. Instead, you can use POST requests to /generic/<entityName>/search with the query parameters included in the request body.

NXT-28043

Extend the advanced search fields for the Usages page

This enhancement makes it possible to expand the advanced search fields on the Usages page.

NXT-28899

JET 17 upgrade

This enhancement upgrades the JET (JavaScript Extension Toolkit) core library to version 17, bringing the following changes:

  1. The date and time format is automatically determined by the default language and country set for users in the application. This ensures the date and time format follows the conventions of the user’s region and language, providing a more intuitive experience.

    The value is formatted based on the user’s locale, which is defined by the displayLanguageCode(language) and the default country setting in the application.

  2. The default background colour of drawer and popup in the Redwood theme has been changed to a slightly darker shade.

NXT-29151

Increased length on first name field

This enhancement increases the length of the person first name and middle name fields to 120 characters.

NXT-29279

Allow Iframe content in OHI applications

This enhancement enables customers to integrate Oracle Health Insurance Components with Oracle Guided Learning (OGL). This is meant for customers who have purchased OGL.

Documentation Links:
Installation Guide

NXT-29355

Improve performance of operational and search pages

This enhancement removes redundant fields from the POST request payload, such as fields configured in Quick Search, Advanced Search of Search and View and Edit Object List floorplans, as well as in the Search and Popup Tail sections of LOV floorplans. It replaces the use of expand: "all" in operational pages with specific expand values for parent and child resources as defined in the floorplan, reducing the overall response payload for API requests originating from the UI.

It further reduces duplicate API calls made during application login and improves the performance of View and Edit Object – Recursive pages by deferring API calls used to construct the property model for dynamic data under the Tab Table More section until the Download action is triggered. Collectively, these changes reduce API calls and API response payload sizes for a faster UI experience.

NXT-29605

Support for deeplink is available for static/dynamic fields of string type

This enhancement supports deeplink for static/dynamic fields of string type

Documentation Links:
Developer Guide - Properties

NXT-29732

Improved performance of user interface searches

This enhancement removes all the non-operational links from the response at header level and the child lists level unless specified in the post request body. Changes are done to remove links for dynamic fields and records as well. The 'excludelinks' parameter is set to true to reduce the overall response payload for the API requests originating from the UI

Documentation Links:
Developer Guide

NXT-30614

Additional dynamic fields on the relation entity

This enhancement increases the number of single-value non-time-valid dynamic fields that can be stored on the Relation entity.

NXT-30620

Reference Sheet Lines: As-of Date & Search Filtering for Time-Based Records

This enhancement enhances the search functionality for time valid reference sheet lines by enabling users to filter data between a start and end date, as well as specify an "asOfDate" within that range. This will improve both the accuracy and convenience of retrieving time-sensitive data.

NXT-30624

View Technical Errors, System Event Logs, and Queue Information Page.

This enhancement improves operational efficiency and simplifies troubleshooting by giving users more control over error management. It includes an enhanced View Technical Errors page for a better user experience, a new System Event Logs page for easy access to system events, and a new View Queue Information page (for Claims only) to help users manage and monitor queue-related data more effectively.

NXT-30781

Additional financial message attributes on invoice and invoice lines

This enhancement extends the number of available attributes on invoice and invoice lines in the financial message by additional sixty bringing the total number of available attributes to ninety.

4.24.1.0.3

NXT-31159

Update in LogBack Configuration

In this release, the logback-core library is upgraded. As a result, the component previously named SizeAndTimeBasedFNATP is renamed to SizeAndTimeBasedFileNamingAndTriggeringPolicy.

Please update your logback.xml configuration file to reflect this change.

POL-14428

New OHI specific HTTP library to make HTTP calls from dynamic logic

The initCallOut and webTarget functions used in dynamic logic for making HTTP calls depend on Javax WS RS API libraries and expose third-party classes such as WebTarget, Client, InvocationBuilder, and Response within dynamic logic. This release introduces an OHI-specific HTTP library, this new library provides a more intuitive, and maintainable alternative for constructing HTTP calls, reducing reliance on external dependencies and improving compatibility with future OHI updates and enhancements.

While this release continues to support both initCallOut/webTarget and the new HTTP library, the initCallOut and webTarget functions will be removed in a future release. Customers are strongly encouraged to use the new HTTP library in the dynamic logic. The user guide provides detailed migration instructions and examples to facilitate this transition.

POL-15106

New page For Assigned Provider Group Label

This enhancement introduces a new UI page to manage assigned provider group labels

POL-15112

Added new input parameter for signature "policy account number generation"

This enhancement updates the policy account number generation signature to include the "policy" as an inbound bind variable.

POL-15307

Financial: Ability to Send Accounting Details Separately

OHI application sends out accounting details along with the financial message. So, the granularity of the grouping of account details is bounded by invoice grouping. That is, only the details within an invoice can be grouped. This poses challenges for customers who require accounting to be done at a different level compared to the invoice. For example, an invoice is per member, but accounting is across members for a product.

With this enhancement, it will be possible to send out accounting details as part of a separate batch

4.24.1.0.1, 4.24.1.0.2

POL-15334

Additional Data Masking Functions

This enhancement introduces two new data masking functions:

  • Text hash with seed, preserve size

  • Number hash with seed, preserve size

Along with the new masking functions:

  • New fields are added to the list of allowed native fields that can be part of the masking process.

  • Additional tables/columns are now purged as part of the masking process.

4.23.1.0.11, 4.24.1.0.7

POL-15369

4.24.1.0.1, 4.24.1.0.2

POL-15551

4.24.1.0.1

POL-15792

Memory optimization in extract activity

Improved memory efficiency when loading dynamic fields with single, non-time-valid values in extract activity.

4.23.1.0.8, 4.23.2.0.9, 4.24.1.0.1

POL-15884

User Defined Validations for Registrations

This enhancement introduces the ability to define additional validations for the registrations entity when using generic APIs to create or update registrations. A new dynamic logic of signature User Defined Validation (Registration) is introduced to support this functionality.

4.24.1.0.6

POL-16031

Start integration gateway exchange using a list of payment registrations as its payload

This enhancement introduces the ability to invoke an insurance gateway exchange, using a list of payment registrations as its payload. The exchange is invoked either by API or through a new set of controls in the user interface.

4.24.1.0.3

POL-16202

Policy level activity page

This enhancement introduces a new page to view failed policy-level activities. Users will now have the ability to view related messages, restart activities, and easily navigate to the "View and Edit Policy" page for further action.

POL-16203

Parameter maintenance, Group Client and Group Account

With this enhancement, the experience of parameter maintenance at enrolment product and policy level is improved by simplifying the user interface.

POL-16443

Ability to prevent a policy from being picked up from premium calculation.

This enhancement provides the ability to prevent a policy from being picked up for premium calculation. Ability to add or remove premium hold on a policy from the user interface.

4.24.1.0.8

POL-16447

Repeatable Generation of Accounting Details

This enhancement introduces embedded logic that ensures that the same accounting details for a given grouping value and registration combination are not generated twice.

4.24.1.0.6

POL-16484

Accounting Details Per Financial Transaction Set

This enhancement allows accounting details, as generated in the financial message, to be persisted. It also enables the inclusion or exclusion of the subject (policy/claim) and reversal indicator as bulking criteria when creating accounting details.

Note: For financial transactions created prior to this feature, the reversal indicator cannot be excluded as part of the bulking criteria.

4.24.1.0.8

POL-16608

Predefined Methods: Add/Remove Relation Identifier

This enhancement adds the following two new predefined methods to add/remove modifiers:

  1. addRelationIdentifier

  2. removeRelationIdentifiler

This enhancement enables updates to relation identifier in policy validation rules and policy callout rules.

4.24.1.0.7

POL-16645

Additional Dynamic Fields on Policy Enrollment and Policy Enrollment Product

This enhancement increases the number of single-value non-time-valid dynamic fields that can be stored on the Policy Enrollment and Policy Enrollment Product entities.

4.24.1.0.6

POL-16651

Memory optimization in premium calculation activity

Optimized memory footprint of schedule dimension value configuration data during premium calculation.

4.24.1.0.9

POL-17046

Policies in progress reporting view

This release introduces a new reporting view: Policies in progress.

This operational report enables to identify and resolve issues with policies in status Edit, Pended, or Pending File Review and take appropriate actions to move them to a final status, such as Approved or Cancelled.

Additional Upgrade Steps

Pre-Upgrade Phase

1) Groovy 4 upgrade

Migration Details for groovy.util Classes

The following classes are removed from groovy.util package in Groovy 4. Update the dynamic logic to import the classes from groovy.xml package instead:

  • groovy.util.XmlNodePrinter

  • groovy.util.XmlParser

  • groovy.util.XmlSlurper

  • groovy.util.XmlUtil

  • groovy.util.slurpersupport.Attribute

  • groovy.util.slurpersupport.Attributes

  • groovy.util.slurpersupport.FilteredAttributes

  • groovy.util.slurpersupport.FilteredNodeChildren

  • groovy.util.slurpersupport.GPathResult

  • groovy.util.slurpersupport.NamespaceAwareHashMap

  • groovy.util.slurpersupport.NoChildren

In Groovy 3, classes from groovy.util package are automatically imported. With Groovy 4, these classes in groovy.xml package require explicit import statements.

To identify dynamic logic scripts that require modification, use the following POST request to api/generic/dynamiclogic/search:

{
    "resource": {
        "q": "logic.like('%XmlNodePrinter%').or.logic.like('%XmlParser%').or.logic.like('%XmlSlurper%').or.logic.like('%XmlUtil%').or.logic.like('%groovy.util.slurpersupport%')"
    }
}

Make these changes before upgrading to this release. The minimum required OHI version to apply these changes is 4.23.1. So, perform these changes if you are currently on version 4.23.1, 4.23.2, or 4.24.1.

Code Migration Examples
Example 1: Using XmlSlurper Without Import

Current dynamic logic: Uses XmlSlurper without an explicit import (implicitly relying on groovy.util):

def result = new XmlSlurper().parseText(response)

Updated dynamic logic: Add an explicit import for groovy.xml.XmlSlurper:

import groovy.xml.XmlSlurper

def result = new XmlSlurper().parseText(response)

Or use the fully qualified name:

def result = new groovy.xml.XmlSlurper().parseText(response)
Example 2: Explicitly Importing groovy.util.XmlSlurper

Current dynamic logic: Imports groovy.util.XmlSlurper explicitly:

import groovy.util.XmlSlurper

def result = new XmlSlurper().parseText(response)

Updated dynamic logic: Update the import to groovy.xml.XmlSlurper:

import groovy.xml.XmlSlurper

def result = new XmlSlurper().parseText(response)
Example 3: Correct Use of groovy.xml.XmlSlurper

Current dynamic logic: Already imports groovy.xml.XmlSlurper, so no changes are needed:

import groovy.xml.XmlSlurper

def result = new XmlSlurper().parseText(response)

Post-Deploy Phase

1) New OHI specific HTTP library for dynamic logic

Migration details
Identify the existing dynamic logic

To identify dynamic logic that require modification, use the following POST request to api/generic/dynamiclogic/search:

{
    "resource": {
        "q": "logic.like('%.path(%').or.logic.like('%.request(%').or.logic.like('%.invoke(%')"
    }
}

If the number of dynamic logic is large, use the (new) Data Transfer IP to query and export all the impacted dynamic logic.

Conversion of impacted dynamic logic to new format

Follow the Developer User Guide and Conversion Examples provided in the product documentation to update the identified dynamic logic.

Thoroughly review, validate, and test the dynamic logic changes before deployment.

Upgrade Steps for Installation

To perform the upgrade, perform the following steps:

  1. Perform any pre-upgrade steps.

  2. Stop all the managed nodes running the existing version of the application.

  3. Perform any pre-undeploy steps.

  4. Undeploy the existing version of the application.

  5. Back up the database.

  6. Perform any post-undeploy steps.

  7. Unpack the release bundle into a directory that we refer to as OHI_ROOT from now on.

  8. Change Installation Configuration: In <OHI_ROOT>/util/install, make a copy of ohi_install.cfg.template and name it ohi_install.cfg.

  9. Edit ohi_install.cfg to contain your specific database connection data and other configuration settings. The settings are explained in the file itself.

  10. Make sure NO connections are present to the database using the OHI_xxx_USER account (where xxx is the abbreviation of the application)

  11. Run the Upgrade script:

    1. Open a command window and browse to <OHI_ROOT>/util/install.

    2. Run the upgrade by executing ./ohi-update.sh .

  12. Make the required changes to the ohi properties file

  13. Perform any post-upgrade steps

  14. Start WebLogic application server

  15. Deploy the Application

  16. Perform any post-deploy steps

Additional Upgrade Steps for Installation

The following phases are defined:

  1. pre-upgrade: Application is still running.

  2. pre-undeploy: Application is stopped, but not undeployed.

  3. post-undeploy: Application is undeployed. Database is backed up.

  4. post-upgrade: Released upgrade script run is complete.

  5. post-deploy: New application is deployed, and is up and running.

Pre-Upgrade phase

  1. Execute the below SQL statement with the user: OHI_POLICIES_OWNER and commit.

delete from ohi_policies_owner.ohi_boilerplate_texts_b where id = 104312220;
commit;

Post-Undeploy Phase

1) Create a new database user ohi_policies_rpt_user

As an admin user, create a new user ohi_policies_rpt_user, which is used to run operational report queries.

create user ohi_policies_rpt_user identified by <password>;
grant create session to ohi_policies_rpt_user;
grant create synonym to ohi_policies_rpt_user;

2) Create a data source ohi-operational-reporting-datasource

Configure a new data source named ohi-operational-reporting-datasource in the WebLogic Server to connect to ohi_policies_rpt_user. For detailed steps, refer to the Installation Guide.

3) Configure Data Transfer

  1. On-premise deployments:

    1. Follow the steps mentioned in Configure Database Directories and Properties

    2. Install DBMS_CLOUD package in on-premise deployments. Refer to My Oracle Support Doc ID 2748362.1 for details.

  2. SaaS deployments:

    1. Follow the steps mentioned in Configure Object Storage Buckets and Properties

    2. As an admin user, grant the following permission to ohi_policies_owner in SaaS deployments only.

grant select on v$pdbs to ohi_policies_owner;

4) Update fin_registrations table

If registrations of type G(eneric) are present, update the type to another: like P(ayment) or B(ill) using either the API or the following SQL statement with user ohi_policies_owner (and commit):

update fin_registrations
set    type = 'P'
where  type = 'G'
;

5) Apply WLS PATCH SET UPDATE and Coherence 14.1.1 Feature Pack 22.06 Cumulative Patch

Refer Required Software for details.

Post-Upgrade Phase

1) Configure Antivirus scanning property

On-premise deployments

Set the property ohi.antivirus.scan.enabled to false in the properties file.

SaaS deployments

Set the property ohi.antivirus.scan.enabled to true in the properties file.

2) Update logback configuration file

In this release, the logback-core library is upgraded. As a result, the component previously named SizeAndTimeBasedFNATP is renamed to SizeAndTimeBasedFileNamingAndTriggeringPolicy.

Please update your logback.xml configuration file to reflect this change.

3) Configure Data Transfer

  1. On-premise deployments: Follow the steps mentioned in Configure Database Scheduler Job

  2. SaaS deployments: Follow the steps mentioned in Configure Object Storage Use Cases and Database Scheduler Job

Configuration Properties

Ref Action Description

CPN-2919

Added

ohi.views.metrics

Timer metrics to indicate time taken to execute the query.

CPN-2919

Added

ohi.reporting.fetched.rows.count.per.view

Counter metrics which indicate the number of rows fetched per view.

CPN-2919

Added

ohi.data.transfer.target.db.directory.name

Name of the database directory where the files generated for data transfer operation will be stored. Applicable only for on-premise deployments.

CPN-2919

Added

ohi.phi.logs.data.transfer.target.db.directory.name

Name of the database directory where the PHI logs will be stored. Applicable only for on-premise deployments.

CPN-3356

Added

ohi.antivirus.scan.enabled

Added a new mandatory property to enable/disable Antivirus scanning for data file uploads. Set the value of this property (in properties file, not using properties API) to true in cloud deployments and false in on-premise deployments.

NXT-24521

Added

ohi.datafile.object.storage.bucket.folder.structure

Folder structure in OCI Object Storage bucket where data files are stored. Folder structure must end with '/'. Example - CLAIMS/DATAFILES/. Default value is {appName}/DATAFILES/. This property is applicable only in SaaS deployments.

NXT-24521

Added

ohi.datafile.object.storage.part.size

Size of each data file part in bytes when data file is uploaded to OCI Object Storage using multipart upload. Big data file is split in multiple parts of mentioned size. Default size is 10000000 bytes (10 MB). This property is applicable only in SaaS deployments.

NXT-24521

Added

ohi.datafile.object.storage.enabled

Enables storing data file content in OCI Object Storage. By default, data files are in the database. This property is applicable only in SaaS deployments.

NXT-25384

Removed

ohi.service.queryapi.get.support

Removed deprecated property.

NXT-29279

Added

ohi.ui.iframe.allowlist.url

This property contains list of URLs to be allowed to load inside iFrame in OHI application.

POL-15307

Added

ohi.processing.datafilesize.GENERATE_ACCOUNTING_DETAIL_MESSAGES

Utilized to to create one or multiple data files for generated accounting detail message.

Default value = 1, allowed value: postive numeric value.

POL-15307

Added

ohi.financialmessage.create.noninvoiceaccdetail

Decides the creation of non-invoice accounting details in financial message. If set to true, activity creates non-invoice account details in financial message. If the property is set to 'false', non-invoice accounting details won’t be created

Web Services

Ref Action Description

CPN-2919

Added

reportingviews IP

Added a new IP reportingviews to generate reporting views.

CPN-2919

Added

reportingviews metadata IP

Added a new IP to query reporting views columns metadata.

CPN-2919

Added

reportingviews API

Read-only API to query reporting views metadata.

CPN-2919

Added

userviewpreferences API

Added a new API to configure search preferences for operational reporting.

CPN-2919

Added

viewfloorplans API

Added a new API to configure floorplan for operational reporting.

CPN-2919

Added

operationalreporting IP

Added a new IP to query the reporting views.

CPN-2919

Added

datatransfer IP

Added a new IP to export data from base views (including PHI data).

CPN-2919

Added

datatransferlogs API

Read-only API to query data transfer logs.

CPN-2919

Added

objectstoragecredentials API

Added a new API to configure credentials to connect to the OCI Object Storage. Applicable only for SaaS deployments.

CPN-2919

Added

objectstorageapikeyusecases API

Added a new API to configure credentials to connect to the OCI Object Storage using API keys authentication method. Use objectstoragecredentials API to configure the credentials prior to creating data using this API. Applicable only for SaaS deployments.

CPN-2919

Added

objectstorageconfigurationfileusecases API

Added a new API to configure credentials to connect to the OCI Object Storage using OCI configuration file. Applicable only for SaaS deployments.

CPN-2919

Added

objectstorageresourceprincipalusecases API

Added a new API to configure credentials to connect to the OCI Object Storage using resource principal authentication method. Applicable only for SaaS deployments.

CPN-3076

Modified

logphievents API

PHI logs are retained in the database for 60 days, allowing customers to retrieve recent logs via the existing logphievents Query API. Beyond this retention period, older logs are no longer retained in the database. For cloud customers, these logs are archived in Oracle-managed OCI Object Storage, and retrieval requires submitting a request to the AMS team. In on-premise deployments, logs remain accessible in the file system according to the customer’s retention policies.

CPN-3076

Modified

autopurgemetadata API

The option to configure the retention period for PHI logs is removed.

CPN-3249

Modified

All APIs

When ohi.httpapi.cache.control.enable is set to false (or is not set), the Cache-Control header is set to no-store for API requests using cache settings PHI and REFERENCE.

CPN-3356

Modified

datafiles API

Added 2 new optional attributes status and extraInfo.

CPN-3356

Modified

Data File Sets IP

  • Added 2 new optional attributes status and extraInfo.

  • The operation to download data file is enabled only if the status is null or Ready or Skipped.

CPN-3356

Modified

datafilesets API

Added 2 new optional attributes status and extraInfo.

CPN-3377

Modified

tables API

Added a new attribute sizeCategory to tables API.

CPN-3456

Modified

All APIs/IPs

Two new custom optional headers are introduced: X-OHI-CHANNEL-TYPE and X-OHI-CHANNEL-SOURCE.

NXT-30624

Added

systemeventlogs API

Added a new API to view and update System Event Logs.

NXT-30624

Modified

taskprocessing IP

Added a new operation to restart a list of errored task in the system.

POL-15307

Added

financialtransactions/{id}/accountingdetails/undo IP

New IP to make accounting details for a specific transaction void

POL-15307

Added

accountingdetails API

Read-only API to query on accounting details (new entity).

POL-15307

Modified

financialtransactionprocessdata API

Added attribute accountingDetailsGeneratedDateTime

POL-15369

Added

Create Accounting Details from Registrations IP

New long running operation to create accounting details for the selected registrations

POL-15369

Added

registrations/{id}/accountingdetails/undo

New IP to undo accounting details for a specific registration

POL-15369

Added

registrations/{id}/accountingdetails/create

New IP to create accounting details for a specific registration

POL-15369

Modified

registrations API

New type added: "G"(eneric) and automatic generation of code. And added attributes Currency and Grouping.

GET, PUT, POST, PATCH, DELETE is enabled on the registration entity

AU specific registration type/code types are protected by BR’s.

POL-15551

Added

reinsurancetreatyenrollmentscopes API

API to select, insert, update and delete reinsurance treaty enrollmentscopes

POL-15551

Added

reinsurancetreatyreinsurers API

API to select, insert, update and delete reinsurance treaty reinsurers

POL-15551

Added

policyreinsurancetreaties API

API to select, insert, update and delete policy reinsurancetreaties

POL-15551

Added

reinsurancetreatypremiumscopes API

API to select, insert, update and delete reinsurance treaty premiumscopes

POL-15551

Added

reinsurancetreaties API

API to select, insert, update and delete reinsurance treaties

POL-15551

Added

reinsurancetreatytypes API

API to select, insert, update and delete reinsurance treaty types

POL-15551

Added

reinsurancetreatybenefitscopes API

API to select, insert, update and delete reinsurance treaty benefitscopes

POL-15551

Modified

Policy Update Request IP

Added policyReinsuranceTreatyList to attachedPolicyData

POL-15551

Modified

Attached policy data IP

Added policyReinsuranceTreatyList to attachedPolicyData

POL-15551

Modified

Policy in IP

Added policyReinsuranceTreatyList to attachedPolicyData

POL-16031

Modified

Macro IP

Attribute requestContextList is added

POL-16031

Modified

Generic API for Macro history

Subject ID is made optional

POL-16031

Modified

Generic API for Macro definition

Value REGI ("Registration" ) and list indicator are added.

POL-16329

Added

registrations API

Added header ignoreUserValidations: if true, no validation is executed, if false, and dynamic logic with signatureUserDefinedValidationRegistration is present, validation of that dynamic logic on registration is executed.

POL-16447

Added

accountinggroupingdetails API

New read-only API

POL-16447

Modified

registrations/{id}/accountingdetails/undo IP

Added removal of accounting detail groupings

POL-16447

Modified

registrations/{id}/accountingdetails/create IP

Added check if accounting detail grouping already exists: FIN-IP-REGI-007

POL-16447

Modified

registrations API

Added accountingDetailGroupingList (display only)

POL-16484

Modified

accountingdetails API

Reference to financial transaction has been replaced by financialMessageId. Attribute stampId is added. Reversal indicator has been made optional

POL-16484

Modified

basefinancialobjects API

Object has been made auditable

POL-16484

Modified

financialtransactions API

Object has been made auditable

POL-16484

Modified

Cancel Policy and Produce Invoice IP

New parameters added in the request:

  • Create Accounting Detail to Persist Dynamic Logic Function

  • Include Subject for Grouping Accounting?

  • Include Reversal Indicator In Accounting Grouping?

POL-16484

Modified

financialtransactiondetails API

Object has been made auditable

POL-16484

Modified

Run Calculation and Produce Invoice for a Policy

New parameters added in the request:

  • Create Accounting Detail to Persist Dynamic Logic Function

  • Include Subject for Grouping Accounting?

  • Include Reversal Indicator In Accounting Grouping?

POL-16484

Modified

financialtransactionprocessdata API

Attribute accountingDetailGeneratedDateTime has been removed

POL-16484

Removed

Long running operation for creating accounting details for financial transaction

Has been replaced by functionality in Generate financial message.

POL-16484

Removed

financialtransactions/{id}/accountingdetails/undo IP

Has been replaced by functionality in unsend financial message

Data Conversion

Ref Action Description

NXT-24521

Added

DataFile Storage Type

The storage type of the existing data files is set to 'DB' in dat_data_files table.

POL-16031

Added

List indicator

New indicator list on Macro definition is set to false

Dynamic Logic

Ref Action Description

CPN-3218

Modified

Groovy 4 upgrade

Upgraded Groovy from 3.x to 4.0.24.

POL-14428

Added

New HTTP Library

Introduced new OHI-specific HTTP library to make HTTP calls from dynamic logic.

POL-14428

Deprecated

webTarget

webTarget method is deprecated.

POL-14428

Deprecated

initCallOut

initCallOut method is deprecated.

POL-15369

Added

UpdateRegistration

New pre-defined method to update a registration of type "G"(eneric)

POL-15369

Added

AddRegistration

New pre-defined method to add a registration of type "G"(eneric)

POL-15369

Added

Create Accounting Detail (Registrations)

New signature for creation of accounting detail for registration

POL-15369

Added

Registration Code Generation

New signature for automatic generation of registration.code

POL-15369

Added

Create accounting detail with dual for registration

New signature for creating accountingDetail and accountingDetailDual for a specific registration

POL-15551

Added

removePolicyReinsuranceTreatyList

Predefined method on attachedPolicyData to remove all policy reinsurance treaties for that attached policy data

POL-15551

Added

removeTreaty

Predefined method on AttachedPolicyData to remove PolicyReinsuranceTreaty

POL-15551

Added

addTreaty

Predefined method on AttachedPolicyData to add a PolicyReisuranceTreaty

POL-15551

Added

getReinsuranceTreaties

Predefined method to retrieve reinsurance treaties

POL-16329

Added

User Defined Validation (Registration)

New signature UserDefinedValidationRegistration is added to specify dynamic logic that validates registration using the generic API on registrations.

UI Changes

Ref Action Description

CPN-2919

Added

Search Reports

Added page to search for reports.

CPN-2919

Added

View Floorplans

Added page to view, add, update floorplans for reporting views.

CPN-2919

Added

Operational Reports

Added page to view operational reports.

NXT-28043

Modified

Usages Page

The advance search in the Usage page is extended with more attributes

NXT-29605

Added

Claims page

Deeplink added to Authorization code and Reservation code at claimline tab (applicable only to the Claims application)

NXT-29605

Added

Episodes page

Deeplink added to Claim code (applicable only to the Claims application)

NXT-30620

Modified

Reference Sheet page

Added "asOfDate" field in quick search to filter data between a start and end date

NXT-30624

Added

Queue Information page (Claims)

New page added to view Queue Information

NXT-30624

Added

System Event Logs page

New page added to view System Event Logs

NXT-30624

Modified

View Technical Errors page

Page is enhanced to provide efficiency and simplifies troubleshooting

POL-15307

Added

FI0027 Accounting Details

Added Accounting Details page as object navigation link in claims page (Claims application) and policies page (Policies application)

POL-15307

Modified

FI0014 Registrations

Create, Update, Delete support is added in Registrations page (Policies application)

POL-15307

Modified

FI0027 Accounting Details

Custom UI properties i.e. 'segmentsJET' and 'accountingAttributesJET' are introduced for the accounting details in claims page (Claims application) and policies page (Policies application)

POL-15551

Added

PO0219 Reinsurance Treaty types

Added Reinsurance Treaty Types View Edit Object List page

POL-15551

Added

PO0220 Reinsurance Treaties

Added Reinsurance Treaties Search Object and View Edit page

POL-15551

Added

Policyattacheddata

Added policy reinsurance treaties tab under attached data section of policies detail page

POL-16031

Added

Macro Definitions

New page added to create, update, delete Macro Definitions in Claims Application

POL-16031

Modified

Payment Registrations

Registrations page renamed to Payments registrations to support create, update, delete Registration and also to start a macro and view macro history

Breaking Changes

Ref Action Description

CPN-3076

Modified

logphievents API

PHI logs are retained in the database for 60 days, allowing customers to retrieve recent logs via the existing logphievents Query API. Beyond this retention period, older logs are no longer retained in the database. For cloud customers, these logs are archived in Oracle-managed OCI Object Storage, and retrieval requires submitting a request to the AMS team. In on-premise deployments, logs remain accessible in the file system according to the customer’s retention policies.

CPN-3076

Modified

autopurgemetadata API

The option to configure the retention period for PHI logs is removed.

CPN-3218

Modified

Groovy 4 upgrade

Upgraded Groovy from 3.x to 4.0.24.

NXT-30624

Modified

Error Messages

The following error messages have been modified as follows,

  1. OHI-TASK-IP-001 to OHI-IP-TASK-001

  2. OHI-TASK-IP-002 to OHI-IP-TASK-002

  3. OHI-TASK-IP-003 to OHI-IP-TASK-003

Note: These message codes are used in Oracle Health Insurance Claims Adjudication.

POL-17036

Modified

Date format

The APIs/IPs accept value for date fields in ISO 8601 format (YYYY-MM-DD), for example 2025-01-01. Any other formats result in an error.

POL-17085

Modified

ReferenceSheetLines

When querying ReferenceSheetLine using SearchBuilder in dynamic logic, ensure that the query parameters match the data types defined in the associated dynamic record definition of ReferenceSheet. Passing a mismatched data type such as a number for a character field may cause errors like "ORA-01722: invalid number".

Example:
If a dynamic record definition contains a flex code field usage someUsage defined as a character, the following is incorrect:

def someUsage = 4
def search = new SearchBuilder(ReferenceSheetLine.class)
    .join("someReferenceSheet")
    .by("someUsage")
    .eq(someUsage)
    .execute();

The correct way to query someUsage is to pass the value as a String, as shown below:

def someUsage = "4"
def search = new SearchBuilder(ReferenceSheetLine.class)
    .join("someReferenceSheet")
    .by("someUsage")
    .eq(someUsage)
    .execute();

Bug Fixes

BugDB SR Internal Summary

32477645

POL-7319

Base views for reference sheet lines are not created

Description:

Base views for reference sheet lines are not created using base views generator.

Resolution:

Base views generator is updated to generate base views for reference sheet lines.

33923326

3-38581095771, 3-38556860431, 3-38933128751

POL-10198

Parent activity terminates or is marked as terminated (TE) prematurely, while its child activities are still under execution

Description:

While initializing one of the groups of activities, the parent activity is marked as 'TE' while the other groups (children) are still running.

Resolution:

If a group of activities fail to initialize, the system will automatically retry the initialization process up to a configurable maximum number of attempts. If all retries fail, the group of activities will be marked as Terminated (TE). This approach ensures that the parent activity remains active until all its child groups have been successfully processed, preventing premature termination

Backports:

4.23.2.0.10, 4.24.1.0.4, 4.23.1.0.9

37685383

3-39930627461

POL-16761

Issue with premium calculation for 3-Year contracted policies involving leap years

Description:

  1. A validation error (POL-FL-CAPR-001) occurred during the execution of a Quote IP for a policy with a contract period exceeding one year, which included a leap year and started mid-year.

  2. The premium calculation was incorrect for policies with a contract period of over one year, including a leap year, and a policy calculation period length of 1.

  3. The premium calculation was incorrect for policies with a contract period of over one year, including a leap year, and a policy calculation period length greater than 1.

Resolution:

  1. The premium calculation is now accurate for policies with a contract period longer than one year, starting in the middle of the year and including a leap year.

  2. A new Business Rule (BR) - POL-CLST-004 has been introduced to prevent the use of a policy calculation period length greater than one when the policy calculation period unit of measurement (UoM) is 'Year.'

Backports:

4.24.1.0.8

37744346

3-40052010521

POL-16805

SQL to fetch premium schedule lines in Quote IP uses inefficient access path

Description:

The SQL query used for fetch premium schedule lines in the Quote IP uses inefficient access path, leading to high response time.

Resolution:

The SQL query has been optimized to follow a more efficient access path and a new index has been added to the table to enhance search performance.

Backports:

4.23.1.0.11

37323685

POL-16242

Policy update requests : re-queue status action is missing

Description:

When Policy update requests are in rejected status, re-queue action is not visible

Resolution:

Re-queue action is shown in policy update requests

Backports:

4.24.1.0.3

36551305

3-37468227341

POL-15065

Boilerplate translations are not present for some fields, buttons displayed in UI

Description:

Translations not applied at several places in UI when language is changed. This is because boilerplate text is not present for these fields, buttons and labels.

Resolution:

Translation issues are fixed in Widgets, View Commissions, Bookmarks, Policy Process Flows, Group Process Flows, Connector Configurations, Countries and Persons pages.

Backports:

4.23.2.0.10, 4.24.1.0.5

35656722

POL-13337

Person Dropdown - Formatted address JET is not displayed in title property

Description:

Person dropdown should work with formatted address JET as a title property and display the value

Resolution:

Person dropdown works fine with formatted address JET custom property as a title property and displays the value properly

35541887

POL-13052

Outbound exchange attributes are not set

Description:

When trying to build a data set the attributes exactVersionMatch and disableDeleteByOmission are not getting updated. The attribute inclusionDate is not updated when passing an empty value.

Resolution:

The attributes exactVersionMatch and disableDeleteByOmission are now being correctly applied during dataset creation. Also updates to inclusionDate are handled properly, allowing modifications even when an empty value is provided.

Backports:

4.24.1.0.2

36925389

3-37554577351

POL-14222

Evaluate Conditions not working in table Edit Mode

Description:

Evaluate condition specified in floorplan is not working for the first time in table component and edit mode. It is working fine in create mode.

Resolution:

Evaluate conditions are now working in table as expected, in edit mode as well

Backports:

4.24.1.0.1, 4.23.2.0.9

36962495

POL-15225

Medicare Advantage Part D Late Enrollment Penalty Extensibility fields should be shown under Entity dropdown

Description:

Business Event Rules page does not show the single value fields for medicare entities in the 'Entity' dropdown

Resolution:

Single Value dynamic fields are shown in 'Entity' dropdown and users can select the value

36792770

3-37171703281

POL-15722

Dynamic records are displayed in extensibility tab as well when configured to show as separate tab

Description:

When auto-include extensibility is set to 'true' and a dynamic record is configured to show in the floorplan, the expected behavior is that the Dynamic Record will not be shown in the 'Extensibility' section but it is shown in 'Extensibility' section

Resolution:

When auto-include extensibility is set to 'true' and a dynamic record is configured to show as a separate tab in the floorplan, it is not shown in the extensibility tab section as well.

Backports:

4.24.1.0.1

36968809

POL-15503

Policy Search page: Few fields are missing in downloaded file

Description:

When download is done in policies page, few fields like policy holder, person, Agents, Group Account are missing in downloaded file

Resolution:

Reference fields like policy holder, person, brand in policies page are present in downloaded file

Backports:

4.24.1.0.1

36977332

POL-15726

Remove Copy from Global activities details page

Description:

Copy action should not be shown for view only details pages

Resolution:

Copy action is removed from view only details pages

Backports:

4.24.1.0.1

36195848

POL-14360

Single-value, non time-valid dynamic records cannot be deleted

Description:

In the case of non time-valid record, 'Remove' button does not appear. So once data is entered for the record, the record itself cannot be deleted. Assuming fields are optional, clearing the values for a record does not work. After saving the cleared fields, data appears again.

Resolution:

'Clear All' action is made available on Single value non-time valid dynamic records to clear all the values in record

Backports:

4.24.1.0.9

37385780

POL-16387

The Boolean option for the Datatype field is absent in Macro Parameters.

Description:

In Macro Parameters, the Datatype field support for Boolean option was missing.

Resolution:

Boolean option for the Datatype field is added for Macro Parameters.

Backports:

4.24.1.0.3

37048300

3-37842428421

POL-15816

Enable reconcile functionality when enrolled days are less than total number of days in period span

Description:

When enrollment on the product ends before contract end date, the system is not reconciling the premium/adjustment charged for the last period. This results into difference in amounts expected to be charged Vs getting changed. System is calculating the last period amount as = Amount per Day × Total Enrolled days in the period.

Resolution:

The system is now reconciling the premium/adjustment charged for the last period. Now last period amount is calculated as = Applicable premium for the period member is enrolled within the contract - total charged till last period.

Backports:

4.23.2.0.6

36975983

3-37787970011

POL-15728

NullPointerException is thrown when running sample calculation for policies having surcharge of type amount

Description:

NullPointerException is thrown on screen on running sample calculation for policies having surcharge of type amount and policy enrollment product ending before the PCP (yearly PCP)

Resolution:

The exception was handled and the surcharge was derived based on the policy enrollment product duration.

Backports:

4.24.1.0.8

37033582

3-34391205191

POL-15789

Include stand alone catchUp periods when running APPLY_REGISTRATIONS activity

Description:

During the APPLY_REGISTRATIONS activity, periods are (re)generated and used to apply registrations. CatchUp periods are defined as periods that start before the reference input date. When the system generates periods, the catchUp periods are only generated in combination with the first regular cycle, which is the period starting on the reference date. If the first regular cycle is not generated, neither are the catchUp periods, causing gaps when the first regular cycle is never generated (for example when the reference date is after the end date of the collection setting).

Resolution:

The Apply Registrations activity does not make a distinction between catchUp periods and regular periods so registrations can be applied to catchUp periods only.

Backports:

4.24.1.0.1, 4.23.1.0.8, 4.23.2.0.9

37055935

3-37852540711

POL-15837

Global Activities page taking lot of time to retrieve results.

Description:

When a query is performed without any filters on the global activities page, it takes a lot of time to load the search results.

Resolution:

Updated the search criteria for the page to load results only when filters are applied.

Backports:

4.23.1.0.8, 4.24.1.0.1, 4.23.2.0.10

37068063

POL-15878

FileRow Class not compilable for unit testing in Dynamic Logic

Description:

FileRow class in not recognized when testing the dynamic logic because it’s not part of the meta model accessible by customer

Resolution:

FileRow class is now made auto discoverable using annotation

37098735

3-38127982261

POL-15953

Yearly amount is coming as null for last calculation period when using amount prorate function

Description:

When the adjustment is calculated using prorated dynamic logic, the yearly amount was coming as null. This was causing an error during the adjustment calculation for the last calculation period. Instead of the reconciled amount for the enrolled days, the total amount was incorrectly applied to the last calculation period.

Resolution:

The yearly amount is now properly populated and correctly utilized by the dynamic logic. As a result, the reconciled adjustment amount is now accurately calculated for the last calculation period.

Backports:

4.24.1.0.1, 4.23.2.0.8

37056433

POL-15838

Action items missing on inbound and outbound exhange pages

Description:

Action items such as 'build', 'message', and 'download' are missing on the activity pages

Resolution:

The missing action items have been added to the inbound and outbound exchange pages

Backports:

4.24.1.0.1, 4.23.1.0.7, 4.23.2.0.6

37195915

POL-16115

Restrictions on amount, type etc. from the generic registations resource API are not removed properly

Description:

For POL-15396: it was decided to lift restrictions on update of amount, type etc. from the generic registations resource API, as a new business rule was introduced for AU-implementations: FIN-REGI-002. But the restrictions on the properties are not removed properly.

Resolution:

All restrictions on attributes are removed for generic registrations API.

Backports:

4.24.1.0.2

33430533

POL-9253

Dynamic fields values are displayed incorrectly when configured in more than one floorplan region 'set'

Description:

When a dynamic field is configured in multiple 'sets' in the floorplan, the values are not displayed in the page as expected. The dynamic field should have been displayed at only one set(section) in UI.

Resolution:

When a dynamic field is added to the floorplan in a more than one section, the application detects any prior usage of that field and updates the floorplan with the latest configuration. As a result, there are no longer multiple occurrences of the same dynamic field in UI

37135680

POL-15995

Create policies page is not working on reload using browser

Description:

Create policies page not working when reloaded from the same page. This issue occurs with custom floorplan having table component within Form component

Resolution:

Create policies page loads without throwing any errors when a page refresh is done.

Backports:

4.24.1.0.1

37109497

3-38290202691

POL-15963

Reconciliation is not applied when enrollment period ends in the mid of calculation period

Description:

When the enrollment period ends in the middle of a calculation period, meaning the calculation period segment’s end date does not match the span end date, reconciliation is not applied. Instead, the amount is calculated as the product of the daily rate and the total days enrolled within the segment. This leads to discrepancies between the expected and actual outcomes.

Resolution:

Reconciliation is now applied to the calculation period segment where the enrollment ends, treating it as the last period segment. This has resolved the discrepancy between the expected and actual outcomes.

Backports:

4.24.1.0.2, 4.24.1.0.2, 4.23.2.0.9

37152723

POL-16026

Fees schedule/Adjustment/Surcharge amount get saved only in default currency during patch operation

Description:

When performing patch operation by only specifying amount value and not the currency, then the default currency is used instead of the currency defined for the existing record.

Resolution:

An additional check was introduced to differentiate between add and replace operations, ensuring that the default currency is set only during add operations when the currency is not specified in the payload

Backports:

4.24.1.0.5

37003949

POL-15566

Usages - Null pointer exception on trying to update the time validity field

Description:

Null Pointer Exception is observed while attempting to update a dynamic record/flex code/dynamic field from single value time valid to multi value time valid field

Resolution:

Additional SQL query has been added to prevent implicit flushes from occurring when native queries are executed. This ensures that the updated attributes are not flushed prematurely, thereby avoiding Null Pointer Exceptions.

Backports:

4.24.1.0.5

37135896

3-36700304951

POL-15997

New nodes in the cluster remain unresponsive when added during ongoing application activities

Description:

Node startup fails due to a NullPointerException caused by premature invocation of ServiceLocator while loading ReferenceSheets objects

Resolution:

The NullPointerException was fixed by replacing ServiceLocator with required objects during node startup

Backports:

4.24.1.0.2

37248259

POL-16206

Referencesheet Query API works erroneously in some cases

Description:

Referencesheet Query API did not return correct result set when a comparison operation like gte (greater than or equal to) or lte(less than or equal to) was used because the passed value was being interpreted as a string instead of a number

Resolution:

The query logic for gte (greater than or equal to) and lte(less than or equal to) operations is updated to return the correct the results in the referencesheetlines Query API

Backports:

4.24.1.0.3

37306202

POL-16293

Values are not displayed in Service Address dropdown field in Rendering Addresses tab in the Individual Provider Page

Description:

List of values are not shown in Service Address dropdown when a search is done using search criteria

Resolution:

Values are now displayed in Service Address dropdown and user will be able to select the value from the dropdown

Backports:

4.24.1.0.3

37425191

POL-16405

Unable to change macro definition while starting the macro

Description:

When navigating to the Payment Registrations page and starting a macro, the system retains the previously selected macro definition even after canceling and selecting a new macro definition.

Resolution:

The "Start Macro" dialog displays details of the newly selected macro definition.

Backports:

4.24.1.0.4

37046162

3-36700304951

POL-15815

Processing of activities stuck with NPE on AggregateResumableActivityTask during node initialization

Description:

The Coherence service started processing activities too early, before the node was fully initialized, causing the ServiceLocator to initialize prematurely and resulting in a NullPointerException (NPE), which destabilized the entire application.

Resolution:

Delayed Coherence session creation until system initialization is complete, ensuring a stable environment for subsequent operations.

Backports:

4.24.1.0.4, 4.23.2.0.10

37193126

:3-38423134371

POL-16101

Access restriction grant is applied on PO0001 Policies JET access restriction but allows user to cancel policy

Description:

When a access restricted role is created for PO0001 Policies JET with only 'retrieve' checked, it is still possible to cancel a policy

Resolution:

It is not possible to cancel a policy in UI with readonly access to PO0001 Policies JET

Backports:

4.24.1.0.2

37189426

POL-16098

Reconciliation is not being applied for the last period of the second policy enrollment product

Description:

Reconciliation is not occurring for the last policy calculation period of the second policy enrollment product, resulting in a discrepancy between the expected and actual calculation outcomes. However, reconciliation has been correctly applied for the last period of the first policy enrollment product.

Resolution:

Reconciliation is now applied to the last period of the second policy enrollment product. The expected and actual calculation results now match perfectly.

37216067

POL-16163

Reconciliation is not being applied when the policy enrollment begins after the span’s start date

Description:

Reconciliation is not occurring for the last policy calculation period of the policy enrollment product when the policy enrollment begins after the span’s start date, resulting in a discrepancy between the expected and actual calculation outcomes.

Resolution:

Reconciliation is now applied to the last period of the policy enrollment product when the policy enrollment begins after the span’s start date. The expected and actual calculation results now match perfectly.

37038193

POL-15735

Batch jobs consisting extracts fails when OHI Extract purge runs concurrently

Description:

Policies daily exchange batch job fails when OHI policies extract data file purge is triggered concurrently because foreign key index for foreign key constraint on extract table was missing.

Resolution:

This issue was resolved by adding a foreign key index for the foreign key constraint on the extract table.

Backports:

4.23.1.0.8, 4.23.2.0.10, 4.24.1.0.5

37434546

POL-16412

Macro Definition : Unable to create macro definition on a subsequent (second) attempt

Description:

Create Macro definition page is not loading for on a subsequent (second) attempt. User has to refresh the page to create the record

Resolution:

Users can create macro using Create Macro definition page on subsequent multiple attempts

Backports:

4.24.1.0.5

37612070

3-39376576361

POL-16661

Parameter values are getting reset to blank/default/random values on edit, save

Description:

Parameter values are getting reset to blank/default/random values on edit and save action on the policy. This is seen while saving the Policy without doing any change to parameter values

Resolution:

Parameter values are not set randomly to blank values on edit and save

Backports:

4.24.1.0.7

37399638

3-38579945171

POL-16395

Issue with using "attach and next" for group client billing allocations

Description:

Create a custom group client Floor plan and added the bill receivers in bill allocation tab itself. Create another custom Floor plan for Premium bill allocations and add Bill Allocations using attach and next and save the group client. After saving the Bill account is shown twice in both tab level and View Bill Allocation.

Resolution:

Bill Account details are shown properly when adding group client billing allocations using 'Attach And Next' button

Backports:

4.24.1.0.7

37521714

POL-16509

Connector configuration: Nothing is showing on hovering error icon and issue with table height on click of edit

Description:

Navigate to connector configuration and open any record. Click on add button in change list tab. One error icon is showing in left of row. On hovering on error icon, no error message is shown

Resolution:

Error messages are displayed properly in Connector configuration page

37095395

3-38082342431

POL-15951

Improve the Activity recovery query when node crashes

Description:

When a node is crashed, the other nodes try to recover the activities from the crashed node. During this recovery the select query on activities was too costly resulting in SQLException "Socket read interrupted" - i.e connection timeout.

Resolution:

The SELECT query was optimized, and the index on the activity table was updated to prevent a full table scan. This significantly reduced the recovery cost and effectively resolved the connection timeout issue.

Backports:

4.24.1.0.7, 4.23.1.0.10, 4.23.2.0.11

37185695

POL-16091

Init Condition not working for TabTable

Description:

In policyenrollmentproducts floorplan tab level (policy Addon), configure an init condition between a dynamic field usage and policy code. Init condition not working for usage defined in tab table

Resolution:

Init Condition works fine for tab table

Backports:

4.24.1.0.5

37413384

3-39027664311

POL-16406

Value in flexcode field vanishes after saving on defaulting and with readonly as true

Description:

On any detail floorplan, if we default a flex Code and also used readOnly as true, but after saving the page record, the value of the flexCode is disappearing. So, the combination of readOnly and default properties is not working on flex code fields.

Resolution:

Value in flexcode field retains as is after saving on defaulting and with readonly as true

Backports:

4.24.1.0.4

37296454

3-38629251051

POL-16279

Direct debit details on the policy bill receivers missing in JET UI

Description:

More section is not visible in Bill Receivers tab when only single value dynamic fields are present

Resolution:

More section is visible in Bill Receivers tab when only single value dynamic fields are present

Backports:

4.24.1.0.5

37372432

3-38809589757

POL-16377

policyAddOn parameter is not available for dynamic logic with signature "Premium"

Description:

For add-on premium amounts based on function, policyAddOn is not available to be used in dynamic logic.

Resolution:

Bind parameter policyAddOn is added for calculation of amounts based on dynamic logic functions of type Premium: this is applicable only in case of add-on premium.

37406096

3-39093009551

POL-16400

Data file deletion operation during extract run is expensive

Description:

The data-file deletion operation is a costly affair during extract execution. The query perform index fast full scan causing slowness

Resolution:

The select and delete query on dat_data_files was improved by joining with data file-set id

Backports:

4.23.1.0.10, 4.24.1.0.5, 4.23.2.0.11

37534243

3-39465955281

POL-16549

Revert bug fix for issue with Change Event Rule (Function) new/old Object

Description:

When updating a PolicyEnrollment (with at least one dynamic record) that has a linked PolicyEnrollmentMedicareDetail, the system throws an InvalidDataAccessApiUsageException during the Policy Validation Rule dynamic logic execution. As a result, the policy fails to be approved. This issue was introduced by the bug fix 36450509/POL-14922, which was implemented in 4.24.1.0.0 release.

Resolution:

The fix for 36450509/POL-14922 has been reverted, effectively reintroducing the bug. A proper fix will be scheduled for a future release.

Backports:

4.24.1.0.5

37660894

3-39289517481

POL-16729

Getting row lock contention when running sampleinvoice IP

Description:

sampleinvoice IP taking more than 60s to return the response. The Api call internally invokes a plsql procedure that puts record under lock for the current transaction. When sampleinvoice is triggered for same policy ID, response time of more than 60s is observed.

Resolution:

A NOWAIT clause was incorporated into the PL/SQL procedure to immediately terminate any concurrent process waiting for the lock to be released. This fix optimizes the response time of the sampleinvoice IP call

Backports:

4.24.1.0.8, 4.23.1.0.11

37307967

3-38820853421

POL-16290

Null pointer Exception while fetching data from Non-Entity cache

Description:

When application in critical memory state, memory protector kicks in which leads creates possibility of L2 cache corruption. When trying to fetch DynamicFieldUsage from a corrupted cache, getting null values.

Resolution:

To prevent the L2 cache from returning stale or corrupted data, L2 cache for DynamicFieldUsage is cleared before querying it during cache rebuild.

Backports:

4.24.1.0.8

37738808

3-40052010521

POL-16798

Database query to validate policy account in Quote IP uses inefficient access path

Description:

The database query to validate policy account in Quote IP uses inefficient access path, leading to high response time.

Resolution:

The database query is optimized to use a more efficient access path.

Backports:

4.23.1.0.11

37833617

3-40355957991

POL-17042

API access restriction parameterdomain missing when a role has PO0012 Enrollment page access

Description:

When a user with a specific access role that includes the PO0012 Enrollment Products JET access restriction tries to view a parameter domain value, an error message stating "Not Authorized on this resource" is displayed.

Resolution:

Added missing API access restrictions for page access and floorplan resource updated from parameterdomain to enrollmentproductparameterdomain to resolve the issue. The same modification should be applied to custom floorplans, if configured.

Backports:

4.24.1.0.10

37871391

POL-17064

Accounting details are not assembled correctly in financial message when signature 'Create accounting detail with dual for financial transaction' is used.

Description:

When the signature 'Create accounting detail with dual for financial transaction' is used to create and generate non-invoiced accounting details, the same accounting detail is showed twice (so either the dual or non-dual one) in the financial message, while it should be one entry for non-dual and one for dual accounting detail.

Resolution:

The non-accounting details show both the dual and non-dual accounting details.

Backports:

4.24.1.0.10

37386973

POL-16389

Flex Code Group Details Page - End date is missing in the table

Description:

Navigate to object navigation: "Flex Code Group Details" of Flex Code group page. In the table, only 2 fields - Start Date and Flex Code is displayed, end date is missing

Resolution:

End date field is added to Flex Code Group Details Page

Backports:

4.24.1.0.5

37478123

3-39147707741

POL-16468

Concurrent Modification Exception is thrown when SearchBuilder results of ReferenceSheetLine is sorted and iterated in dynamic logic by multiple threads

Description:

SearchBuilder queries on reference sheet lines are cached in the JVM. If multiple threads use the same query criteria, the cached List is returned. So, if one thread is iterating over the List and if another thread performs the sort operation on the List, this error could happen.

Resolution:

A copy of cached list is now returned by the searchBuilder which allows multiple thread to simultaneously modify the list, preventing concurrent modification exception

Backports:

4.24.1.0.5

37093044

3-38446669831

POL-15945

Parameter Amount Value is saved With Default Value instead of zero

Description:

Parameter Amount Value is saved With Default Value when value zero is sent.

Resolution:

Parameter Amount Value is saved with value zero instead of default value

Backports:

4.24.1.0.1, 4.23.1.0.8, 4.23.2.0.9

37004418

POL-15609

No success message or pop up on clicking resend/cancel notification and getting console error

Description:

No success message appears when clicked on send notifications /cancel notifications option

Resolution:

A success message or popup is shown on clicking resend/cancel. There are no console errors when performing these actions.

Backports:

4.24.1.0.1

37004108

POL-15659

Linking Relation: A relation link is not deleted when a relation is deleted

Description:

When a relation link was deleted using the generic person API, the corresponding counterpart remains intact.

Resolution:

Deleting one of the relation links via the generic person API will now also remove its counterpart.

Backports:

4.24.1.0.1

36943659

3-37715853681

POL-15679

ID of single value flex code is returned as "null" (String) in the generic API response

Description:

ID of single value flex code is returned as "null" (String) in the generic API response.

Resolution:

ID attribute of single value flex code is now excluded from the generic API response

Backports:

4.24.1.0.1, 4.23.1.0.8, 4.23.2.0.10

36919102

POL-15624

MA: Usages added to table are visible in more section

Description:

Usages added to table are visible in more section of the table

Resolution:

Dynamic property for table is handled properly by introducing new variable to validate from table

36882974

3-37479307981

POL-15567

Decimals are not shown on premium schedule lines for dimensions of datatype number.

Description:

When a premium schedule line with dimensions of datatype number is configured, decimals values cannot be entered and saved.

Resolution:

When a premium schedule line with dimensions of datatype number is configured, decimals values are shown properly

Backports:

4.23.2.0.10, 4.24.1.0.1

37090897

POL-15941

Sorting at tab table is not working

Description:

Create a Dynamic record. Add the record to tab table in floorplan. On Saving the data at tab table the records should be sorted but it is not.

Resolution:

Sorting is now applied at tab table

Backports:

4.24.1.0.1

37082458

POL-15913

Unable to assign invoice date in create invoice XML dylo

Description:

invoiceDate is expected to be copied from financial transaction process data, but groovy operations are not supported on java.xml package

Resolution:

Security rules are added to allow groovy operations on java.xml package and invoiceDate is populated from current date

37118410

3-38128005468

POL-15974

Title is not coming in summary and detailed view of list view Tabs

Description:

Title property is not enhanced for the dynamic record when added as tab result. As well as in the title property of the corresponding detail page

Resolution:

Title property is now displayed for dynamic record when added as tab result

Backports:

4.24.1.0.2

37286414

POL-16262

Business Event Rules - "Unsaved changes" pop up on search page

Description:

"Unsaved changes" popup appears on the Business Event Rules page after performing a '%' search, even though no changes have been made.

Resolution:

The "Unsaved changes" popup doesn’t appear after performing a search without any modifications to data.

Backports:

4.24.1.0.3

36977985

3-38820404001

POL-13102

Add-on error message not displayed when deleted

Description:

When user tries to delete an add-on which cannot be deleted because it’s being used, the screen is not presenting any message

Resolution:

Error message is displayed in UI when a row is deleted and there is a business rule error.

Backports:

4.24.1.0.4

37533789

POL-16546

Accounting detail message is getting generated for already handled records when incremental is not mentioned

Description:

Accounting detail message is getting generated for already handled records when incremental is not mentioned. Default value "true" for incremental is not getting considered for accounting detail message generation. Default value is not set.

Resolution:

Default value "true" is set for the attribute incremental if no value is provided. This resolved the issue

Backports:

4.24.1.0.6

37390960

POL-16386

Group Client page - When filling date field in Additional Fields drawer, getting error in the console and not able to save the record

Description:

Open any record of group client. Click on Edit button. Click on Additional fields link. Enter a value in any date field and click on Apply button. Getting converter error in console and not able to save the record

Resolution:

Date field values can be filled in Additional Fields drawer in Group Clients page

Backports:

4.24.1.0.5

37558196

POL-16584

Null pointer exception at startup while constructing dynamic field mapping

Description:

At startup, a NullPointerException (NPE) was encountered while constructing dynamic field mappings due to the presence of a null object. Additionally, another NPE occurred during the invalidation of process cache.

Resolution:

Added null checks before performing operations on potentially null objects.

Backports:

4.24.1.0.6

37647435

3-39093831091

POL-16714

GEN-TMVL-011 is thrown during Person Covered Service generation

Description:

When submitting a policy, Person Covered Services are generated if the dynamic logic with signature 'Person Covered Service' is configured. In that dynamic logic a user can configure the setPersonCoveredService method which regenerates Person Covered Services. This operation is sometimes throwing a GEN-TMVL-011 error, indicating a time overlap in Person Covered Services. This error is thrown when an existing Person Covered Service is first updated, then deleted and re-inserted.

Resolution:

Person Covered Service generation is not throwing a GEN-TMVL-011 error when an existing Person Covered Service is being updated, then deleted and re-inserted.

36867155

POL-15535

Reference sheet lines - LOV values are not displayed in search option after selecting from lov

Description:

LOV values are not displayed in search option of AND mode quick search after selecting from lov

Resolution:

LOV values are displayed in search option of AND mode quick search after selecting from LOV in reference sheet lines page

36867693

3-37391765051

POL-15536

Parameters are ignored when building CMT sets

Description:

When building any CMT sets, the values in the dialog are not being applied

Resolution:

The parameters inclusionDate, exactVersionMatch, disableDeleteByOmission are sent in payload if values are entered while building CMT sets

Backports:

4.24.1.0.2

37576280

3-33766349291

POL-16611

Registrations are not re-applied

Description:

Policy calculation periods are deleted based on look back date in order to (re-)apply registrations. This is to trigger recalculation. First the initial look back date is determined to select applicable registrations. Then existing registrations are unzipped (applied registration status is set to N(ew)). But then policy calculation periods are deleted based on the initial look back date, not the look back date that is based on the 'unzipped ' registrations. This is causing the registrations not to be re-applied.

This bug is present apply registrations activity only, not the integration points.

Scenario to reproduce: 1) Create Policy with a Policy Collection Setting starting on 01/01 and Span Reference Date 15/01; 2) Create a single enrollment and a premium of $10 a day; 3) Create (and apply) Registration accounting for the first period ($142) and a Pay Date of 01/01; 4) Calculate Premium with Calculation Input Date 14/01 5) Create (and apply) Registration accounting for the first period ($138) and a Pay Date of 15/01; 6) Create (and apply) Registration accounting for the first period ($142) and a Pay Date of 14/01;

Expected: Look Back Date should be set to 01/01 and all registrations need to be re-applied.

Instead: look back date is not updated.

Resolution:

After unzip of registrations, the look back date is recalculated first before policy calculation periods are deleted, so the registrations are re-applied.

Backports:

4.24.1.0.8

37745533

POL-16807

Activities are not purged when auto-purge job is enabled for Policies.

Description:

Following errors are being experienced in policies environment during the usage of Auto purge.

Error starting at line : 25 in command - BEGIN ohi_auto_purge_pkg.purge_all; END; Error report - ORA-20000: Failed jobs detected, check the table user_scheduler_job_run_details for details ORA-06512: at "OHI_POLICIES_OWNER.OHI_PARALLEL_JOBS_PKG", line 114

Cause for the error -

ORA-02292: integrity constraint (OHI_POLICIES_OWNER.FIN$ACTIVITY_BUCKET_FK1) violated - child record found ORA-06512: at "OHI_POLICIES_OWNER.OHI_ACT_PURGE_PKG", line 42 ORA-06512: at line 1

Resolution:

Ordering the PL/SQL script to delete child records before parent records resolved the issue.

Backports:

4.24.1.0.8, 4.23.1.0.11

37643488

POL-16708

Conflicting keyboard shortcuts

Description:

Users can set up custom shortcuts using existing key combinations, which may lead to conflicts when the key combination is used.

Resolution:

A new business rule is introduced to ensure that all custom shortcuts have unique key combinations.

37779136

POL-16873

"Usages" header cannot be translated to other languages in Usages page

Description:

It is not possible to translate the "Usages" header in usages page in any other languages because boilerplate is not available for that header

Resolution:

Translations are added to "Usages" header in Usages page

Backports:

4.24.1.0.8

37146939

POL-16002

Search component improvements for Activity pages

Description:

Search experience has to be improved in Financial Transaction Set , Group Account (Activities) pages. Criteria mandatory must be applied for quick search and advance search must be extended with date fields

Resolution:

Financial Transaction Set , Group Account (Activities) pages are modified for quick search and advance search to enable better search experience

37098690

POL-12834

Priority field incorrectly accepts only up to a maximum value of 999 in the Floorplan Edit Page

Description:

When editing a Floorplan, the tooltip shown while hovering over the Priority field is "Enter a number between 0 and 9999". However, it allows only up to a maximum value of 999.

Resolution:

The range has been updated to correctly accept the maximum allowed value. It now allows a priority of 9999 when editing the Floorplan.

37135304

3-38073502601

POL-15992

Anomaly in generic patch operation for Time Valid dynamic records

Description:

When performing generic patch operation for a time valid dynamic record to update the endDate, the operation fails, getting a time valid error thrown. In some instances, when updating both startDate and endDate, other dynamic records are getting affected.

Resolution:

Generic patch operation on all resources is isolated from policies in IP patch operation. Apart from this a time validity check is added per dynamic records per resource which resolves the issue.

Backports:

4.23.1.0.8, 4.23.2.0.10, 4.24.1.0.3

37200375

3-38363602931

POL-16129

Policies parameter values sequence incorrect when not using the toggle

Description:

Policies parameter values sequence incorrect when not using the toggle to expand view format

Resolution:

Policies parameter values are being sorted on display sequence and code in expanded and old view

Backports:

4.24.1.0.2, 4.23.2.0.10, 4.23.1.0.9

37215126

3-38065813361

POL-16158

Calculation result lines are not displayed under each calculation period

Description:

Calculation result lines are not displayed under each calculation period. Calculation result (including all the calculation result lines under it) per calculation period is visible under the row displaying the member name (used for looking up products to be used for premium calculation)

Resolution:

Calculation result lines are getting displayed under each calculation period

Backports:

4.23.2.0.10, 4.24.1.0.2, 4.23.1.0.9

37773863

POL-16841

Zero is Not Allowed as Display Sequence for a Macro Parameter

Description:

The system previously allowed the display sequence of a macro parameter to be set to 0 within a macro definition.

Resolution:

Setting the display sequence to 0 for macro parameters in a macro definition is no longer allowed.

37201746

POL-16135

Policy events for a policy are not all "cleared" when executing the policies invoice IP

Description:

Policy events of type 'R' and eventType 'I' were not getting cleared, on invoking invoice IP. The issue occurred because the deletion of policy events was dependent on a condition requiring the associated policy ID to be null.

Resolution:

The issue was resolved by modifying the condition to permit the policy ID to be either null or non-null. Additionally, the condition for the associated insurable entity ID was updated to target specific insurable entities linked to the corresponding policy.

Backports:

4.24.1.0.6, 4.23.2.0.11

37351078

POL-16342

Registration: Code is set as mandatory field, it should be autopopulated

Description:

In payment registration page, code is set as a mandatory field. It should be mandatory false and the value should be auto populated.

Resolution:

Registration code is autopopulated when left empty

Backports:

4.24.1.0.3

37367120

3-38933143561

POL-16363

Query API returns partial JSON response when large volume of data is queried

Description:

When querying the policies API and fetching one or more dynamic fields/records of attached policy data, if the volume of dynamic records on attached policy data is high, the Query API may return a partial JSON response. This occurs when the memory consumption is high, leading to a TooManyRequestsException error on the server side, which interrupts the response generation.

Resolution:

The memory footprint when fetching attached policy data dynamic records is optimized.

Backports:

4.24.1.0.4, 4.23.2.0.10, 4.23.1.0.9

37350492

3-38913319921

POL-16343

GEN-PROC-ERR is raised occasionally when accessing parameter values API

Description:

A GEN-PROC-ERR error intermittently occurs when accessing certain APIs. Once this error occurs, all subsequent API calls to the same resource fail with the same error. The only workaround is to restart the specific node/JVM.

Resolution:

To prevent the error when accessing certain APIs, the necessary initialization is now performed during startup instead of waiting for the first API call.

Backports:

4.24.1.0.4, 4.23.2.0.10

37093946

POL-15949

Policy - Premium bill allocation: JET UI is setting the active field by default to "false" whereas in ADF UI and API, the default is "true"

Description:

Navigate to policies page and click on create policy button click on add button in premium bill allocations section By default, active field should be true but its reflecting as false

Resolution:

The system floor-plan is updated with active indicator to true

Backports:

4.23.1.0.8, 4.23.2.0.10, 4.24.1.0.2

37893369

3-40605372396

POL-17085

Querying ReferenceSheetLine in dynamic logic using SearchBuilder with mismatched parameter types causes ORA-01722 error

Description:

Querying ReferenceSheetLine using SearchBuilder in dynamic logic fails with "ORA-01722: invalid number" error when query parameters have mismatched data types. For example, providing a numeric value for a character type field defined in the dynamic record definition of ReferenceSheet causes this issue.

Resolution:

The SQL is generated based on the data type defined in the dynamic record definition of ReferenceSheet, not from the query parameter type. This works as expected only when the parameter type matches the defined field type. Refer to the "Breaking Changes" section for more details.

Backports:

4.24.1.0.9

37883282

POL-17071

Base View generation fails for an entity which has an apostrophy character in the display name

Description:

For entities which have dynamic attributes, base view generation adds column remark using display name. If display name has apostrophy character ('), it fails with following exception: java.sql.SQLSyntaxErrorException: ORA-00933: SQL command not properly ended

Resolution:

No SQL exception is thrown when a display name has apostrophy character (')

37359366

POL-16359

Percentage is shown twice in Parameter Domain values tab

Description:

Percentage is shown twice in Parameter Domain values tab

Resolution:

Percentage and Condition is shown properly in Parameter Domain values tab

Backports:

4.24.1.0.4

37377022

POL-16382

Title is displayed twice on Group Client detail Page

Description:

The 'Enrollment File' title is displayed twice on Group Client detail Page

Resolution:

'Enrollment File' title is displayed only once on Group Client Page

37442628

POL-16438

Policies EnrollmentProduct post api intermittently failing

Description:

Policies EnrollmentProduct POST api was intermittently failing as instead of id, object was getting passed in the query parameter

Resolution:

A fix has been added to pass correct id in query parameter

37548199

POL-16558

PL/SQL function uses inefficient access path

Description:

The statistics were not associated with the function preventing optimizer from making better decisions when executing queries.

Resolution:

The statistics are associated for ohi_return_collection which allowed function to access efficient path and allows queries to run faster

Backports:

4.24.1.0.6

37521587

POL-16506

Connector configuration: Error is shown in tab instead of page header on clicking delete

Description:

Navigate to connector configuration. Open any record, click on delete Error is shown in tab

Resolution:

Error is shown at page header level in Connector configuration page

37601771

3-39640191621

POL-16643

Dynamic Fields is not getting set in dynamic logic with signature testUnit

Description:

When trying the perform read/write operation on dynamic field usages in dynamic logic of signature testUnit, getting security violation error

Resolution:

Security context for dynamic logic signature testUnit was added to allow read/write operation on dynamic field usages. This resolved the issue.

37905792

3-40174643941

POL-17093

User information is not available as a parameter in deepLink (external URL)

Description:

An external link created with param to display logged in user information doesn’t gets replaced by user’s displayName

Resolution:

Logged in user information can be used as param in external Links in JET UI

Backports:

4.24.1.0.9

37603652

3-39727327231

POL-16646

Incorrect matching of start dates for policy enrollment products with reverse order

Description:

In Policy IN IP, submitting multiple Policy Enrollment Product spans for the same enrollment product results in an error if the latest span appears first. However, arranging the spans from oldest to latest allows the policy to be submitted successfully.

Resolution:

Added a check to distinguish matching of policy enrollment products for automatically ending in patch operations from that in non-patch updates.

Backports:

4.24.1.0.6

37743376

3-39391191701

POL-16802

Default value of startdate of time valid flex code fields mentioned in the floorplan is not applied in UI

Description:

The start date in time-valid flex code fields and list resource is not defaulting to the system date as expected when a trigger condition is applied to set the value.

Resolution:

Now, the start date field defaults to the system date when a trigger condition is applied to set the value for time-valid flex code fields.

Backports:

4.24.1.0.8

37630314

3-39535643171

POL-16689

Unsaved Changes Submit pop-up message appears unnecessarily when the user switches to another tab in Group Clients page

Description:

Warning message on the Group Clients page to Submit the group client before moving away from the page is not working as expected. It appears even when user tries to add child data and save

Resolution:

The warning message on group client page is fixed now and gives clear message to user to submit the group client while navigating away from the page and doesn’t appear on Save action

Backports:

4.24.1.0.8

37812079

3-39640248381

POL-16949

Policies with enrollment end date after date paid to are not picked up for Apply Registrations

Description:

When Apply Registrations is invoked, policy selection is based on the Look Back Date of the Policy. For Australian Localization the Look Back Date is not an input parameter, but that date is calculated based on the availability of either new registrations or the effective date of a mutation. When a Policy is end dated retroactively, we need the last period(s) to be recalculated to consider the changed end date. If end dating a policy enrollment results in a mutation with effective date after the end date, the policy is not picked up for recalculation. Reasoning behind this is that a policy is only picked up for recalculation if: - The policy has an active enrollment on the look back date; - The policy has a non-reversed calculation result that starts after the look back date.

Resolution:

Policy selection for Apply Registrations is changed to the following two conditions: - The policy has an active enrollment on the look back date; - The policy has a non-reversed calculation result that ends after the look back date.

Backports:

4.24.1.0.9

37837870

POL-17036

Number and Date incorrectly converted based on locale in API/IP requests

Description:

Dates are incorrectly converted based on the locale value in API/IP requests.

Resolution:

The date conversion no longer considers the locale value.

37888821

3-40493278681

POL-17077

Setting flex codes on registrations in dynamic logic of policy validation signature is not allowed.

Description:

Setting dynamic field on Registration entity in Policy Validation Rule dynamic logic throws UnsupportedOperationDynamicLogicException error.

Resolution:

All types of dynamic fields can be set on registrations in dynamic logic of policy validation signature.

Backports:

4.24.1.0.10

35730765

3-40617866901

POL-13016

Regenerate of a baseviews throws 405 response

Description:

POST http://{hostname}/<context>/baseviews/<baseViewName>/regenerate gives a 405 Method not allowed error.

Resolution:

The regenerate operation now generates a GET link using /generic/baseviews/{baseViewId}

Backports:

4.24.1.0.10

Issues that were backported in previous Release / Patch

BugDB Internal Summary Backport BugDB SR

33923326

POL-10198

Parent activity terminates or is marked as terminated (TE) prematurely, while its child activities are still under execution

4.23.2.0.10

37231507

3-38581095771, 3-38556860431, 3-38933128751

33923326

POL-10198

Parent activity terminates or is marked as terminated (TE) prematurely, while its child activities are still under execution

4.24.1.0.4

37231503

3-38581095771, 3-38556860431, 3-38933128751

33923326

POL-10198

Parent activity terminates or is marked as terminated (TE) prematurely, while its child activities are still under execution

4.23.1.0.9

37231508

3-38581095771, 3-38556860431, 3-38933128751

35730765

POL-13016

Regenerate of a baseviews throws 405 response

4.24.1.0.10

37925950

3-40617866901

35541887

POL-13052

Outbound exchange attributes are not set

4.24.1.0.2

37303033

36977985

POL-13102

Add-on error message not displayed when deleted

4.24.1.0.4

37326684

3-38820404001

36925389

POL-14222

Evaluate Conditions not working in table Edit Mode

4.24.1.0.1

36925397

3-37554577351

36925389

POL-14222

Evaluate Conditions not working in table Edit Mode

4.23.2.0.9

36925407

3-37554577351

36195848

POL-14360

Single-value, non time-valid dynamic records cannot be deleted

4.24.1.0.9

37812755

36551305

POL-15065

Boilerplate translations are not present for some fields, buttons displayed in UI

4.23.2.0.10

36547800

3-37468227341

36551305

POL-15065

Boilerplate translations are not present for some fields, buttons displayed in UI

4.24.1.0.5

37374755

3-37468227341

36968809

POL-15503

Policy Search page: Few fields are missing in downloaded file

4.24.1.0.1

36968812

36867693

POL-15536

Parameters are ignored when building CMT sets

4.24.1.0.2

37342904

3-37391765051

37003949

POL-15566

Usages - Null pointer exception on trying to update the time validity field

4.24.1.0.5

37270893

36882974

POL-15567

Decimals are not shown on premium schedule lines for dimensions of datatype number.

4.23.2.0.10

36921293

3-37479307981

36882974

POL-15567

Decimals are not shown on premium schedule lines for dimensions of datatype number.

4.24.1.0.1

36921298

3-37479307981

37004418

POL-15609

No success message or pop up on clicking resend/cancel notification and getting console error

4.24.1.0.1

37004426

37004108

POL-15659

Linking Relation: A relation link is not deleted when a relation is deleted

4.24.1.0.1

37004112

36943659

POL-15679

ID of single value flex code is returned as "null" (String) in the generic API response

4.24.1.0.1

37084665

3-37715853681

36943659

POL-15679

ID of single value flex code is returned as "null" (String) in the generic API response

4.23.1.0.8

36943702

3-37715853681

36943659

POL-15679

ID of single value flex code is returned as "null" (String) in the generic API response

4.23.2.0.10

36943678

3-37715853681

36792770

POL-15722

Dynamic records are displayed in extensibility tab as well when configured to show as separate tab

4.24.1.0.1

36968835

3-37171703281

36977332

POL-15726

Remove Copy from Global activities details page

4.24.1.0.1

36977357

36975983

POL-15728

NullPointerException is thrown when running sample calculation for policies having surcharge of type amount

4.24.1.0.8

36992173

3-37787970011

37038193

POL-15735

Batch jobs consisting extracts fails when OHI Extract purge runs concurrently

4.23.1.0.8

37038210

37038193

POL-15735

Batch jobs consisting extracts fails when OHI Extract purge runs concurrently

4.23.2.0.10

37038212

37038193

POL-15735

Batch jobs consisting extracts fails when OHI Extract purge runs concurrently

4.24.1.0.5

37038205

37033582

POL-15789

Include stand alone catchUp periods when running APPLY_REGISTRATIONS activity

4.24.1.0.1

37091050

37033582

POL-15789

Include stand alone catchUp periods when running APPLY_REGISTRATIONS activity

4.23.1.0.8

37039410

37033582

POL-15789

Include stand alone catchUp periods when running APPLY_REGISTRATIONS activity

4.23.2.0.9

37091028

37046162

POL-15815

Processing of activities stuck with NPE on AggregateResumableActivityTask during node initialization

4.24.1.0.4

37072824

3-36700304951

37046162

POL-15815

Processing of activities stuck with NPE on AggregateResumableActivityTask during node initialization

4.23.2.0.10

37067536

3-36700304951

37048300

POL-15816

Enable reconcile functionality when enrolled days are less than total number of days in period span

4.23.2.0.6

37048316

37055935

POL-15837

Global Activities page taking lot of time to retrieve results.

4.23.1.0.8

37082016

37055935

POL-15837

Global Activities page taking lot of time to retrieve results.

4.24.1.0.1

37082025

37055935

POL-15837

Global Activities page taking lot of time to retrieve results.

4.23.2.0.10

37082021

3-37852540711

37056433

POL-15838

Action items missing on inbound and outbound exhange pages

4.24.1.0.1

37056652

37056433

POL-15838

Action items missing on inbound and outbound exhange pages

4.23.1.0.7

37056493

37056433

POL-15838

Action items missing on inbound and outbound exhange pages

4.23.2.0.6

37056480

37090897

POL-15941

Sorting at tab table is not working

4.24.1.0.1

37090899

37093044

POL-15945

Parameter Amount Value is saved With Default Value instead of zero

4.24.1.0.1

37093050

37093044

POL-15945

Parameter Amount Value is saved With Default Value instead of zero

4.23.1.0.8

37093056

37093044

POL-15945

Parameter Amount Value is saved With Default Value instead of zero

4.23.2.0.9

37093053

37093946

POL-15949

Policy - Premium bill allocation: JET UI is setting the active field by default to "false" whereas in ADF UI and API, the default is "true"

4.23.1.0.8

37211072

37093946

POL-15949

Policy - Premium bill allocation: JET UI is setting the active field by default to "false" whereas in ADF UI and API, the default is "true"

4.23.2.0.10

37211040

37093946

POL-15949

Policy - Premium bill allocation: JET UI is setting the active field by default to "false" whereas in ADF UI and API, the default is "true"

4.24.1.0.2

37210853

37095395

POL-15951

Improve the Activity recovery query when node crashes

4.24.1.0.7

37436358

3-38082342431

37095395

POL-15951

Improve the Activity recovery query when node crashes

4.23.1.0.10

37436372

3-38082342431

37095395

POL-15951

Improve the Activity recovery query when node crashes

4.23.2.0.11

37436369

3-38082342431

37098735

POL-15953

Yearly amount is coming as null for last calculation period when using amount prorate function

4.24.1.0.1

37098754

3-38127982261

37098735

POL-15953

Yearly amount is coming as null for last calculation period when using amount prorate function

4.23.2.0.8

37106417

37109497

POL-15963

Reconciliation is not applied when enrollment period ends in the mid of calculation period

4.24.1.0.2

37157973

3-38290202691

37109497

POL-15963

Reconciliation is not applied when enrollment period ends in the mid of calculation period

4.24.1.0.2

37147501

37109497

POL-15963

Reconciliation is not applied when enrollment period ends in the mid of calculation period

4.23.2.0.9

37157979

3-38290202691

37118410

POL-15974

Title is not coming in summary and detailed view of list view Tabs

4.24.1.0.2

37153250

37135304

POL-15992

Anomaly in generic patch operation for Time Valid dynamic records

4.23.1.0.8

37204953

3-38073502601

37135304

POL-15992

Anomaly in generic patch operation for Time Valid dynamic records

4.23.2.0.10

37204948

3-38073502601

37135304

POL-15992

Anomaly in generic patch operation for Time Valid dynamic records

4.24.1.0.3

37204943

3-38073502601

37135680

POL-15995

Create policies page is not working on reload using browser

4.24.1.0.1

37135683

37135896

POL-15997

New nodes in the cluster remain unresponsive when added during ongoing application activities

4.24.1.0.2

37136049

3-36700304951

37152723

POL-16026

Fees schedule/Adjustment/Surcharge amount get saved only in default currency during patch operation

4.24.1.0.5

37152727

37185695

POL-16091

Init Condition not working for TabTable

4.24.1.0.5

37185725

37193126

POL-16101

Access restriction grant is applied on PO0001 Policies JET access restriction but allows user to cancel policy

4.24.1.0.2

37193145

3-38423134371

37195915

POL-16115

Restrictions on amount, type etc. from the generic registations resource API are not removed properly

4.24.1.0.2

37196579

37200375

POL-16129

Policies parameter values sequence incorrect when not using the toggle

4.24.1.0.2

37200392

3-38363602931

37200375

POL-16129

Policies parameter values sequence incorrect when not using the toggle

4.23.2.0.10

37200393

3-38363602931

37200375

POL-16129

Policies parameter values sequence incorrect when not using the toggle

4.23.1.0.9

37200394

3-38363602931

37201746

POL-16135

Policy events for a policy are not all "cleared" when executing the policies invoice IP

4.24.1.0.6

37201752

3-38101497351

37201746

POL-16135

Policy events for a policy are not all "cleared" when executing the policies invoice IP

4.23.2.0.11

37201760

37215126

POL-16158

Calculation result lines are not displayed under each calculation period

4.23.2.0.10

37215139

3-38065813361

37215126

POL-16158

Calculation result lines are not displayed under each calculation period

4.24.1.0.2

37215130

3-38065813361

37215126

POL-16158

Calculation result lines are not displayed under each calculation period

4.23.1.0.9

37215144

3-38065813361

37248259

POL-16206

Referencesheet Query API works erroneously in some cases

4.24.1.0.3

37248268

37323685

POL-16242

Policy update requests : re-queue status action is missing

4.24.1.0.3

37323686

37286414

POL-16262

Business Event Rules - "Unsaved changes" pop up on search page

4.24.1.0.3

37286430

37296454

POL-16279

Direct debit details on the policy bill receivers missing in JET UI

4.24.1.0.5

37296460

3-38629251051

37307967

POL-16290

Null pointer Exception while fetching data from Non-Entity cache

4.24.1.0.8

37496451

37306202

POL-16293

Values are not displayed in Service Address dropdown field in Rendering Addresses tab in the Individual Provider Page

4.24.1.0.3

37309930

37351078

POL-16342

Registration: Code is set as mandatory field, it should be autopopulated

4.24.1.0.3

37351082

37350492

POL-16343

GEN-PROC-ERR is raised occasionally when accessing parameter values API

4.24.1.0.4

37350509

3-38913319921

37350492

POL-16343

GEN-PROC-ERR is raised occasionally when accessing parameter values API

4.23.2.0.10

37350510

3-38913319921

37359366

POL-16359

Percentage is shown twice in Parameter Domain values tab

4.24.1.0.4

37359374

37367120

POL-16363

Query API returns partial JSON response when large volume of data is queried

4.24.1.0.4

37367140

3-38933143561

37367120

POL-16363

Query API returns partial JSON response when large volume of data is queried

4.23.2.0.10

37367133

3-38933143561

37367120

POL-16363

Query API returns partial JSON response when large volume of data is queried

4.23.1.0.9

37367128

3-38933143561

37390960

POL-16386

Group Client page - When filling date field in Additional Fields drawer, getting error in the console and not able to save the record

4.24.1.0.5

37390967

37385780

POL-16387

The Boolean option for the Datatype field is absent in Macro Parameters.

4.24.1.0.3

37379873

37386973

POL-16389

Flex Code Group Details Page - End date is missing in the table

4.24.1.0.5

37502124

37399638

POL-16395

Issue with using "attach and next" for group client billing allocations

4.24.1.0.7

37460458

3-38579945171

37406096

POL-16400

Data file deletion operation during extract run is expensive

4.23.1.0.10

37406102

3-39093009551

37406096

POL-16400

Data file deletion operation during extract run is expensive

4.24.1.0.5

37406109

3-39093009551

37406096

POL-16400

Data file deletion operation during extract run is expensive

4.23.2.0.11

37406105

3-39093009551

37425191

POL-16405

Unable to change macro definition while starting the macro

4.24.1.0.4

37424969

37413384

POL-16406

Value in flexcode field vanishes after saving on defaulting and with readonly as true

4.24.1.0.4

37447187

3-39027664311

37434546

POL-16412

Macro Definition : Unable to create macro definition on a subsequent (second) attempt

4.24.1.0.5

37434548

37478123

POL-16468

Concurrent Modification Exception is thrown when SearchBuilder results of ReferenceSheetLine is sorted and iterated in dynamic logic by multiple threads

4.24.1.0.5

37473493

3-39147707741

37533789

POL-16546

Accounting detail message is getting generated for already handled records when incremental is not mentioned

4.24.1.0.6

37601039

37534243

POL-16549

Revert bug fix for issue with Change Event Rule (Function) new/old Object

4.24.1.0.5

37534266

3-39465955281

37548199

POL-16558

PL/SQL function uses inefficient access path

4.24.1.0.6

37548208

37558196

POL-16584

Null pointer exception at startup while constructing dynamic field mapping

4.24.1.0.6

37558211

37576280

POL-16611

Registrations are not re-applied

4.24.1.0.8

37576319

3-33766349291

37603652

POL-16646

Incorrect matching of start dates for policy enrollment products with reverse order

4.24.1.0.6

37603667

3-39727327231

37612070

POL-16661

Parameter values are getting reset to blank/default/random values on edit, save

4.24.1.0.7

37638353

3-39376576361

37630314

POL-16689

Unsaved Changes Submit pop-up message appears unnecessarily when the user switches to another tab in Group Clients page

4.24.1.0.8

37630681

37660894

POL-16729

Getting row lock contention when running sampleinvoice IP

4.24.1.0.8

37749682

3-39289517481

37660894

POL-16729

Getting row lock contention when running sampleinvoice IP

4.23.1.0.11

37660902

3-39289517481

37685383

POL-16761

Issue with premium calculation for 3-Year contracted policies involving leap years

4.24.1.0.8

37685393

37738808

POL-16798

Database query to validate policy account in Quote IP uses inefficient access path

4.23.1.0.11

37739254

3-40052010521

37743376

POL-16802

Default value of startdate of time valid flex code fields mentioned in the floorplan is not applied in UI

4.24.1.0.8

37743381

3-39391191701

37744346

POL-16805

SQL to fetch premium schedule lines in Quote IP uses inefficient access path

4.23.1.0.11

37749025

3-40052010521

37745533

POL-16807

Activities are not purged when auto-purge job is enabled for Policies.

4.24.1.0.8

37749552

37745533

POL-16807

Activities are not purged when auto-purge job is enabled for Policies.

4.23.1.0.11

37749568

37779136

POL-16873

"Usages" header cannot be translated to other languages in Usages page

4.24.1.0.8

37779138

37812079

POL-16949

Policies with enrollment end date after date paid to are not picked up for Apply Registrations

4.24.1.0.9

37812081

3-39640248381

37833617

POL-17042

API access restriction parameterdomain missing when a role has PO0012 Enrollment page access

4.24.1.0.10

37833675

3-40355957991

37871391

POL-17064

Accounting details are not assembled correctly in financial message when signature 'Create accounting detail with dual for financial transaction' is used.

4.24.1.0.10

37872667

37888821

POL-17077

Setting flex codes on registrations in dynamic logic of policy validation signature is not allowed.

4.24.1.0.10

37888926

3-40493278681

37893369

POL-17085

Querying ReferenceSheetLine in dynamic logic using SearchBuilder with mismatched parameter types causes ORA-01722 error

4.24.1.0.9

37898382

3-40602279631

37905792

POL-17093

User information is not available as a parameter in deepLink (external URL)

4.24.1.0.9

37905797

3-40174643941

Known Issues

BugDB SR Internal Summary

34169826

POL-10586

Execution of callout rule dynamic logic fails from test unit

Description:

For callout rule dynamic logic, the endpoint placeholder is set on callout rule code and not dynamic logic code (ohi.{0}.endpoint.request), This leads to execution error in unit test.

34175340

POL-10596

Recent policy holder (formatted name) header/ column is missing in Widgets

Description:

In Policies search page add a widget Application InProgress(Edit) Search results table Recent Policy Holder (formatted name) header/ column is missing.

34401147

3-29621579461

POL-11019

CMT recovery process fails exception

Description:

During restart, the data set processes for CMT are cleaned up. As a result, the CMT recovery process fails with a null pointer exception.

34543324

POL-11184

Change event rules on person’s maritalStatusList are not triggered via POST request on generic/maritalstatuses

Description:

Given that we have a change event rule configured on update of person. When we add a marital status via a PATCH or PUT request on api/generic/persons, then change event rule correctly gets triggered. However, when we add a marital status via a POST on the child resource itself (that is: api/generic/maritalstatuses), then, the change event rule is incorrectly not triggered. This also affects this update to person (adding a maritalStatus) via JET UI.

34579712

3-30561689958, 3-30460458241

POL-11323

Errors in the policies object model for classes in policyversionchangedetection package

Description:

We can generate the groovy objects model of the application from the Objects Integration Point or via ADF UI → ConfigurationSystemView ObjectsGenerate Objects button. The problem is the groovy object model does not compile out-of-the-box. In particular, there are compilation errors in the policyversionchangedetection package.

36440999

POL-11663

While Rejecting or Accepting an enrollment file, the system does not wait and show if backend process is completed or failed

Description:

No indication to user that activity is completed when Rejecting or Accepting an enrollment file

34871685

POL-11741

Auto Include Extensibility Error Handling

Description:

When there is an error in any multivalue dynamic field or dynamic record the error path is not indicating the particular property along with the index as shown for other multivalue list items present in the metadata.

35685322

POL-11830

When opening the Account Details page from the Policy sub- menu with Edit, the policy code is not displayed.

Description:

When opening the Account Details page from the Policy sub- menu with Edit (pencil), the policy code is not displayed. When opened to view (eye), the policy code is displayed. When in Edit mode the policy accounts page is saved, then the policy code becomes visible.

35686861

POL-13355

Dynamic logic unit test statistics are incorrect

Description:

When the user queries something in the testunit dynamic logic and then tests another dynamic logic in the same testunit dynamic logic, the value/count for all query parameters displays incorrect

35676529

3-33383356981

POL-13383

Message republish should not happen whereas URI is not set or empty

Description:

For connector configuration if URI is not set or is empty in the configured endpoints and message republishing is ON. The messages keeps on republishing endlessly instead of stopping when not found an endpoint URI.

35691448

POL-13405

Boilerplates not loading when 2 widgets with same resource is added of type data table

Description:

Create 2 widget with same resource of type data table or find any 2 seeded data table widget with same resource. When both widgets are added, boiler plates are not loading for one of the widgets.

36369698

POL-13754

Re-login is blocked when user use the same session by entering the env url

Description:

Logging out from the second tab causes the first tab to become unresponsive when trying to navigate to any other page. This issue is specific to cloud environments

36041732

POL-14010

Business event rules that monitor a person create two policy enrollment events if a person is a member and policyholder on a policy.

Description:

Business event rules that monitor a person create two policy enrollment events if a person is a member and policyholder on a policy instead of one.

36089571

POL-14080

Configuration migration returns error on 'Supported Insurable Entity Type'

Description:

An error is thrown when merging the setup of two enviroments in which an insurance type and an insurable entity type are configured independently.

36112016

3-34938069431

POL-14165

Process policy activity gets stuck when the processing policy is reverted

Description:

Process Policy activity gets stuck in "InProcess" status if we revert one of the policies(In Edit status) that have been queued for the Process Policy activity.

The activity must have ended in error (end state) which is not happening.

36424923

POL-14209

Enrollments NewView: When deeplink configured as tab in Policy Enrollments tab, unsaved changes pop up not showing when member is viewed

Description:

When the user navigates out of the Policy Enrollments tab in new view the user does not get an unsaved changes dialog prompting the user to save.

36301775

POL-14610

NullPointerException occurred during the generation of base views while selecting the referenceSheetLines baseview

Description:

NullPointerException occurred during the generation of base views while selecting the referenceSheetLines baseview.

36895410

POL-14634

Advanced search is not working in widgets

Description:

Advanced search is not allowing to select a value when configured in widgets.

36981690

POL-15004

Loading Create page using system specific floorplan is showing error

Description:

When an errored floorplan is active and create page is loaded with non errored floorplan, the page doesn’t load and shows error.

36600678

POL-15151

Activity is not behaving as expected during testing recovery mechanism

Description:

When submission from processing grid is removed for a InProcess (IP) stuck activity using clearsubmissioncache IP, the activity goes to TechnicalError (TE) state. On recovering activity, it is not immediately completing. It takes some time and often throws timed out error.

36915456

POL-15251

Mandatory check missing for Total Premium Currency field

Description:

Mandatory Check is missing for currency fields

36844414

POL-15483

Display error message for url parameter limit exceeding 1024 characters on search pages

Description:

Console error is showing up when url parameter is exceeding limit. Error message needs to be displayed in UI when parameter limit exceeding 1024 characters on search pages.

36946576

POL-15484

Activities remain in QD status after OutOfMemoryProtector is triggered

Description:

After exceeding the critical memory threshold and having recovered the application memory, the queued activities are not dequeued and remain in QD status.

36861261

POL-15526

Policy enrollment base view doesn’t have flexcodes as columns.

Description:

Policy enrollment base view doesn’t have flexcodes as columns

36890553

3-37549087361

POL-15611

Exclude certain attribute options from the business event rule page

Description:

When creating a Business Event Rule, certain non-monitored attributes (e.g., Status, Creation Date, GID) should be excluded from the drop-down menu. This ensures users can only select relevant attributes for monitoring. These exclusions are due to specific reasons, such as consistency across versions.

36903242

3-37528423931

POL-15631

Additional Field values when filled are not retained after save

Description:

Additional field values of a dynamic record for a policy cannot be nullified by passing in empty tags

36930049

3-37582942001,3-37641895001,3-37634081651

POL-15668

Application logs are not persisted in the database in rare scenarios

Description:

Application logs are internally queued before writing to the database. In rare cases, these logs are not successfully written, causing the internal queue to grow significantly in size - several GBs in some instances. This led to a loop in the log persistence mechanism, impacting system performance.

36981727

POL-15694

Edit action is not persisting the data

Description:

Edit action is not persisting when we save and come back to the page in medi assist policies

36970155

3-37743857111

POL-15724

Incorrect use of ohi.ws.client.readtimeout propperty to set the entire request/response timeout

Description:

The system property ohi.ws.client.readtimeout is intended to control the time (in milliseconds) that the client will wait for a response from the server after sending a request. However, it is currently being incorrectly applied to set the timeout for the entire request/response conversation, rather than just the response wait time.

37067284

POL-15876

Fix reconciliation logic for Monthly and Evenly amount distribution based calculation periods

Description:

Reconciliation logic for Monthly and Evenly amount distributions returns incorrect amounts for partial enrollments. It calculates using the full period’s day factor instead of the actual enrolled days, leading to overestimation.

37261618

POL-15886

Extracts creates datafiles more than configured count

Description:

Extract process creates more number of datafiles than the configured count (ohi.extract.datafilecount)

37897400

POL-16072

Table Data is lost when the window screen is resized

Description:

A new row added in table is lost when the window screen is resized

37766160

POL-16076

Search value in Advance Search is not cleared for Date and Time configured field.

Description:

In Advance Search, unable to clear search value for date and time field

37229586

POL-16183

An exception occurs when an empty messages list is returned from a Message Transformation Dynamic Logic Function

Description:

This issue arises when events are filtered in the Message Transformation dynamic logic function using aggregateEvents, and no events match the filter criteria. As a result, the messages object is returned as an empty list. Although the IntegrationTransformation task completes successfully, an ArrayIndexOutOfBoundsException is logged in the application log.

37257460

3-38637505211

POL-16213

Query API does not return correct results when the search criteria contains an apostrophe

Description:

Query API does not return correct results when the search criteria contains an apostrophe.

37276485

POL-16248

Heartbeat update query causes deadlock on perf env

Description:

upgrade/downgrade scenario4 failed with error : org.springframework.scheduling.support.TaskUtils$LoggingErrorHandler - Unexpected error occurred in scheduled task org.springframework.transaction.TransactionSystemException: Could not commit JPA transaction; nested exception is javax.persistence.RollbackException: Transaction "rolled back" because transaction was set to RollbackOnly.)

37281664

POL-16254

Connector configuration’s change list cannot be nullified using API

Description:

A change list can be configured on connector configuration in order to control the change events which should be transmitted to external system. Currently, it is not possible to nullify this list using a generic API PUT request.

37831089

POL-16270

Policy process flow: Extra field showing for each row in policy rule steps

Description:

Either Policy Validation Rule or Callout Rule field is expected to be visible in each row, but currently both fields are displayed.

37380943

3-38943334671

POL-16384

An empty change list is created for connector configurations when a connector is created using JET UI.

Description:

When creating a connector configuration through JET UI, an empty change list is added by default. This empty list blocks any change event from getting transmitted to external systems.

37766061

POL-16385

Search on Single Value Non Time Valid and Multi Value Non Time Valid flexcodes is not working

Description:

A multi-value flex code usage is created and configured on a page, with data added using the flex code field and the same usage is configured in Advanced Search. Searching with valid flex code values returns no results, though matching data exists. Expected behavior is to return relevant records.

37400030

3-38989900081

POL-16396

Members page should show policy code instead of status

Description:

Members search page should show policy code. The color of the policy code should be based on the status.

37414669

3-38835614611

POL-16407

adjustmentRule.scheduleDefinition returns Null in dynamic logic with adjustment rule signature

Description:

adjustmentRule.scheduleDefinition returns null when used within an adjustment rule evaluation condition in dynamic logic. This prevents access to schedule definition fields despite a valid schedule definition being associated.

37455508

POL-16440

Widget record count incorrect

Description:

The widget 'Policies per Fatal Messages' does not display the correct value for the record count

37490303

POL-16477

Add business rule to validate the length of CHAR fields for non referencesheet record definitions

Description:

Record definitions with Field having Field code as C4000 are incorrectly allowed for non referencesheet record definitions. This leads to a database error when inserting values over 1000 characters due to database storage limitations.

37577924

POL-16618

Node state capture files are not generated when system runs into critical memory state

Description:

The issue of node state capture files not being generated when the system runs into a critical memory state, which can aid in debugging, troubleshooting, and diagnosing issues related to OOM and not crash

37637030

POL-16634

Populate ACT_ACTIVITIES.EXTRA_INFO column when activities are marked to TE by Heart-beat service

Description:

Activities when marked to TE are not populating the extra_info column and hence leaving no trace for the change in status

37605486

3-39664837951,3-39711991321

POL-16652

Plan Objects Not Cleaned Up When OutOfMemoryProtector Triggers During Calculate Premium Activity

Description:

Necessary configurations for Calculate Premium activity are fetched once and stored in plan objects within the distributed Coherence cache. When OutOfMemoryProtector triggers, activity remains stuck in IP status and plan cache does not get cleared, overtime this degrades JVM performance.

37633452

3-40449586751

POL-16696

Prefilter criteria is retained when multiple custom floorplans are configured in Payment Registrations page

Description:

In Payment Registrations page, when multiple custom floor plans are configured with at least one floorplan with prefilter option, prefilter criteria is retained and not cleared while switching between the floorplans

37744870

POL-16731

Unable to search for 'Premium Hold equals to false' in generic API request

Description:

A Premium Hold is an indicator set on the Attached Policy Data, which value equals either 'true' or 'false'. Using the generic query API, querying on the Premium Hold translates in either 'attachedPolicyData.premiumHold.eq(true)' or 'attachedPolicyData.premiumHold.eq(false)'. The latter condition, in combination with a search on all results (e.g. "totalResults": true) throws an exception. A temporary solution for this is using 'attachedPolicyData.premiumHold.eq(null)'. Similar behaviour is observed for the disableUpdateFromQueue indicator on Attached Policy Data

37689169

3-39953000191

POL-16765

PCPs with forward billing are skipped for apply registrations

Description:

A change in Collection Setting can result in consecutive Policy Calculation Periods (based on the start- and end date of those Policy Calculation Periods) having different pay dates. In most cases the pay date of the latest Policy Calculation Period will also be later compared to the pay date of the earliest Policy Calculation Period. But, when the earliest Policy Calculation Period was not paid for in the first place, the pay date will be pushed according to the principle of forward billing. This could result in a scenario where the latest Policy Calculation Period (based on start date), has a pay date which is earlier compared to its predecessor. When a registration is processed, the system starts applying the registration to the Policy Calculation Period with the earliest pay date and skip the forward billed Policy Calculation Period.

37779299

POL-16779

Error Message is shown while performing Advance search on Premium Hold with value as 'No' in Policies page

Description:

In policies search page, performing a Advance search on Premium Hold with value as 'No' throws error

37830709

POL-16831

Retention of Code Value in Group Client View with Unsaved Changes Popup

Description:

After editing the code on the Group Client page and navigating away, clicking 'No' on the unsaved changes popup retains the modified code when returning to the Group Client details page, instead of reverting to the original value.

37780125

3-40209488891

POL-16878

Policies without a brand are not picked up by calculate premium activity.

Description:

If a policy does not have a brand specified and the calculate premium activity is started also with no brand specified, then these policies are not included.

37789722

POL-16897

Add error handling for duplicate columns in base view generation

Description:

Add a Business Rule to throw a clear and descriptive error message when duplicate columns are detected in views during base view generation. Currently, if a table has duplicate columns in its view, the base view generation fails silently without any error message and making it difficult to identify the root cause.

37892156

POL-16922

Tooltip displays incorrect minimum and maximum values for Reinsurance related percentage fields

Description:

The allowed value range for the following attributes should be: Minimum: 0.01 Maximum: 100.00

Applicable attributes: ReinsuranceTreatyReinsurerPersistable.reinsurancePercentage ReinsuranceTreatyPersistable.commissionPercentage ReinsuranceTreaty.retentionPercentage

However, the current tooltip displays the following incorrect ranges: ReinsuranceTreatyReinsurerPersistable.reinsurancePercentage: 0 to 999.99 ReinsuranceTreatyPersistable.commissionPercentage and ReinsuranceTreaty.retentionPercentage: -999.99 to 999.99

37796099

POL-16923

Unable to set new default in Policy Process Flows page

Description:

In Policy Process Flows page, unable to set new default and unable to view current default

37832877

POL-16935

Attributes, Segments, More Section retain previous search result values in Accounting details page

Description:

In policy accounting details page, when a new search is done without closing Attributes, Segments and more section from previous search, these sections are not refreshed. It retains previous data.

37801463

POL-16936

PCPs are not being generated as expected when the span reference date falls on February 29th in a leap year

Description:

When a policy is created with a contract period starting in a leap year, the system fails to generate PCPs beyond the first year. The issue occurs when the span reference date is set to February 29th of a leap year, and despite having an advance period of three years, the PCPs are only generated for the first year.

37807209

POL-16941

ohiHttpRequest and initCallout methods work with any destination code value if correct credentials are set for that value

Description:

The ohiHttpRequest and initCallout methods accept any destination code value when correct credentials are set for that specific value.

37809976

3-40316251991

POL-16947

Default value of Flex code doesn’t get saved when LOV floorplan have only descriptor.

Description:

Default value of Flex code doesn’t get saved when LOV floorplan have only descriptor.

37812725

POL-16955

Unsaved changes dialog is not displayed for tabs in expanded view mode

Description:

Unsaved changes pop up is not displayed when user updates any value in the tab in expanded view mode and tries to navigate away from the page

37834546

3-40316102201

POL-16971

Expand/Collapse is shown even when there is no tab configured

Description:

When there lot of fields to be displayed in page and there are no tabs configured, UI still displays Expand/collapse option and user has to click to expand and view all fields

37841851

3-40216895161

POL-17040

Group Account Adjustments are not shown for a group account with no end date in time period

Description:

When a group account has a time period without end date, in Group Account Adjustment Overrides page, no rows are displayed for that time period. So the user cannot add overrides for the Group Account Adjustments

37869333

3-40008658091

POL-17058

Apply Registrations functionality leaves gaps when regenerating Policy Calculation Periods for over a year.

Description:

Policy Calculation Periods are generated based on the Policy Collection Settings. Each period has a calculation date based on the reference date and offset of the collection setting. Periods that start before the reference date are referred to as 'catch up' periods. These 'catch up' periods usually belong to a span starting before the start date of the collection setting. When Policy Calculation Periods are generated, the system uses the calculation date of the span to determine if the Policy Calculation Period should be persisted. As the 'catch up' period belongs to a different span compared to the first regular cycle, it will be generated at an earlier time. In case of Premium Calculation (activity), we decided that 'catch up' periods should not be generated on a stand alone base and should always be part of the first regular cycle. For Apply Registrations we do not have such a restriction, because we want the 'catch up' period to be generated on a stand alone base if the registration covers the period. As a result, 'catch up' periods of new collection settings will be generated before the system finished generating regular Policy Calculation Periods of a predecessing collection setting.

37867800

3-40372816341

POL-17063

Conditional loading of value does not work in List Of Values dropdown once the value is selected

Description:

Filter is not getting applied correctly to the dependent List Of Values dropdown whenever a conditional trigger is used to update the filter.

37875416

3-40104949171

POL-17066

View members page throws gen-proc-err when title component with label is configured in floorplan.

Description:

When title is configured in foldout for folds section with label, the enhanced floorplan IP throws GEN_PROC_ERR and normal floorplan is used as the fallback floorplan.

37876419

POL-17068

Flex Code Base Views are both removed and updated at the same time

Description:

During Base View generation, the system removes all Base Views related to Flex Codes and creates new ones for all the configured Flex Codes. Sometimes the system removes a Flex Code Base View while generating a new one with the same name, resulting in an error saying "table or view does not exist". This issue happens intermittently.

37882151

POL-17069

Zip and Unzip operations in Data File Sets IP return HTTP 405 in SaaS

Description:

The Zip and Unzip operations in Data File Sets IP return HTTP 405 (Method Not Allowed) in SaaS.

37888201

POL-17074

Generateaccountingmessage IP populates reversal as false for null reversal accounting details

Description:

Reversal has been made optional for POL-16484 since an option is added to not group accounting details on reversals, but the generate account message operation was not adjusted to reflect that the reversal indicator could be empty.

37893330

POL-17084

Run example calculation returning 500 status when member has a relation link

Description:

Run example calculation API returning 500 status when member has a relation link record.

37902306

POL-17091

Premium calculation is incorrect in final year for 3-year contracts when calendar month splitting is disabled.

Description:

The calculated premium amount for the final year of a 3-year contract is slightly exceeding the expected value when the split on calendar month setting is disabled. This affects policies using evenly distributed premiums with non-calendar-aligned contract dates. The issue does not occur when calendar month splitting is enabled.

37907040

3-40346571471

POL-17097

Not able to retrieve parent context values in view mode of the page in a tab

Description:

For a use case when a user wants to filter out a field in the tab, based on the type of the claim, the following condition works correctly in create mode : "condition": "context.claim.type === 'R'". It does not work when the page is opened in view mode

37908280

3-38056877861

POL-17103

Labels for regular flex code fields are not working while configuring it in search page

Description:

Labels are not getting displayed in search page, it works fine in hierarchical recursive page

37924910

POL-17140

Data File Sets IP does not return the message text in the response for error codes DAT-IP-DAFI-013 and DAT-IP-DAFI-014

Description:

When encountering error codes DAT-IP-DAFI-013 and DAT-IP-DAFI-014, the associated error messages are not being displayed in the response. The expected behavior is that the error messages corresponding to these error codes should be returned in the response, providing more context and information about the error

37931723

3-40662938551

POL-17155

user information is not available to use in floorplans using userJET property

Description:

the userJET property in the floorplan does not support setting default values or filtering data based on the current user.

33166667

3-26374448851

POL-8747

Generated dynamic logic signature groovy files contain compilation errors

Description:

Groovy files for dynamic logic signatures can be generated from either the Objects Integration Point or via the Generate Objects button on the View Objects page. Some of these files have compilation errors.

33186031

3-26374448851

POL-8781

Generated dynamic logic signature groovy files do not compile in a Gradle project

Description:

Groovy files for dynamic logic signatures can be generated from either the Objects Integration Point or via the Generate Objects button on the View Objects page. Some of these files have compilation errors specific to Gradle, such as variable names containing a dollar sign or dependencies being added with an @Grab annotation.

Deprecated Items

These features will be removed in a future release. Customers are advised to review the documentation and take timely action.

JIRA Key Announced Release Announced Summary

NXT-25000

3.22.2.0.0

The use of parameters that influence the resource representation in the 'Accept' header of an HTTP request is deprecated.

POL-13546

4.23.2.0.0

The Attached Data Integration Point is deprecated

POL-14578

4.24.1.0.0

ohi.ws.enrollmentresponse.request.lob property is deprecated. This property is added to support backward compatibility for Line Of business to Insurance Type in Policy In (Patch) IP

CPN-3249

4.25.1.0.0

HTTP API Caching override feature is deprecated in this release and will be removed in a future release.

POL-14428

4.25.1.0.0

The webTarget and initCallOut functions, which are used to make HTTP calls from dynamic logic, have been deprecated.