Release Notes for Oracle Health Insurance Value-Based Payments Release 3.21.1.0.0

This document contains the release notes for Oracle Health Insurance Value-Based Payments Release 3.21.1.0.0.
NOTE: Version compatibility: Oracle Health Insurance Value-Based Payments Release 3.21.1.x is only compatible with other Oracle Health Insurance applications release version 3.21.1.x unless explicitly stated otherwise.
NOTE: 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 Description Included in Patch

CPN-1239

New Configuration pages added

The following pages are added to capitation application’s JET UI

  • Provider Assignment Types

  • Provider Group

  • Individual Providers

  • Organization Providers

  • Service Address

  • Person

  • Organization

  • Banks

  • Identifyer Types

  • Titles

  • Prefixes

  • Countries

  • Specialties

  • Currencies

  • Boilerplate Texts

  • Floorplan

  • Access Restrictions

  • Access Roles

  • Data Access Groups

  • Messages

  • Message Groups

NXT-18299

JET: Page Access Functions

For JET pages, menu access is based on the function codes, and explicit resource level access is needed to be able to view/edit data. Example: Granting view access to function code FN0002, will enable menu item for message configuration. Now, for a user to search and view messages, explicit access must be granted to 'get' (view) messages resource. Explicit get (view) access must also be granted to all its sub resources. In the case of 'update' grants, all the linked resources must also have 'get' access for LOVs to work.

With this enhancement, access to all the api/ip resources needed to operate the JET UI page will be granted implicitly by the system. This implicit api/ip access grant will follow the authorization level of the function access grant. For example, view only access grant to FN0002, will grant only GET access to generic resource /messages.

Access to special operations like submitting a policy or a group client would require explicit authorizations to api/ip. The api/ip access that must be explicitly granted is specified in the user access section of the security guide.

NXT-20012

HTTP Query API response only includes requested fields

Before this release, HTTP API resources allowed for payload content customization through the expand and fields accept header parameter, however still some defaults were always included.
This enhancement allows for having total control on the payload content by adding another parameter to the Accept header: defaultoverride=true.

NXT-20013

Allow traversing of more levels for referenced fields for Generic HTTP APIs

Before this release, in HTTP API, only two levels of references from any resource level were allowed. All details were allowed at any level but the references were only allowed up until 2 levels. This restriction was put in place for not having memory pressures. It is seen from customer feedback and JET implementation that it can be restrictive sometimes, example being: claim→person→addressList→countryRegion→country→code. Since person is a reference from claim, it is only possible to go to addressList but not further. Allowing for more levels can still cause memory pressures if done for the entire object graph. The solution is to lift restrictions on certain references:

  • Person

  • Country

  • ClaimForm

  • ServiceAddress

  • RenderingAddress

  • CountryRegion

  • Provider : IndividualProvider and OrganizationProvider

NXT-20490

Reporting views: Base view generator + specific IP

The base view generator is now included into the OHI applications itself and can be triggered from the Base View Generation IP. This new base view generator is going to replace the existing (script based) view generator which is now deprecated and will be removed in a future release.

NXT-20854

Improvements for Logging to the Database

For logging to the database using the OHI Database Appender, the following capabilities are added:

  • OHI applications automatically remove customer-defined loggers if these are not explicitly marked as durable.

  • Purging log messages: customers can configure the retention period for log event types. Frequently purging log messages helps to limit the amount of log messages stored in the database.

  • It is now possible to bundle log messages in a data file set. An HTTP API resource is made available to define the criteria for selecting the messages that will be bundled.

NXT-20935

Display application version and enviroment tag in JET UI

With this enhancement, the environment tag is added to application title. In addition, environment tag and application version are also added to the about dialog. The system property ohi.environment.identifier needs to be set in order to display the environment name in the application.

NXT-21006

Add alternate user identifier and OAuth2-specific mapping to that user identifier based on OAuth token issuer; JWK Set token validation (RFC 7517) is now using OpenID Connect

Some systems identify a user by a technical unique identifier that is not suitable to be displayed in user interface pages. With this enhancement, it is possible to use the User Provisioning IP to specify an alternate, unique user identifier (alternateUserIdentifier attribute), next to the existing loginName, for uniquely identifying and resolving users.

This enhancement also allows configuration to map a specific claim in an OAuth2 access token to the OHI User based on the issuer of the token.

Configuration for RFC 7517 token validation is now based on OpenID Connect. The properties for it have changed. The option to specify a local key store containing a set of public key certificates was removed. The easiest way to use JWK Set based token validation is to use the OpenID Discovery URI via system property "ohi.oauth.idp.uri" in combination with system property "ohi.oauth.jwk.set.validation.audience". Alternatively, set the following system properties if OpenID Discovery cannot be used:

  • ohi.oauth.jwk.set.url

  • ohi.oauth.jwk.set.validation.audience

  • ohi.oauth.jwk.set.validation.issuer.url

  • ohi.oauth.jwk.set.validation.jws.signing.algorithm (defaults to value "RS256")

For obtaining an Access Token using OpenID Connect, specification of the clientId and secret combination was changed.

  • System property "ohi.oauth.token.introspection.endpoint.client_secret" was removed.

  • For obtaining an Access Token using OpenID Connect use system property "ohi.oauth.openidconnect.accesstoken.credential".

  • Use of the latter has to be accompanied by specifying a matching credential. For example, assuming the value for system property "ohi.oauth.openidconnect.accesstoken.credential" is "openid_token_credential", specify a credential at resource "/API_ROOT/credentials/credential/openid_token_credential" with the clientId as username and the secret as password.

NXT-21113

CMT : Floorplan

Entity floorplan and floorplan tag details are added to the list of entities that are part of configuration migration.

NXT-21120

Additional Dynamic Fields for OHI Messages table

The number of dynamic fields available on the OHI Messages table was too small. With this enhancement, the number of dynamic fields on OHI Messages table are extended to support the requirements.

NXT-21203

Provider Identifiers

This enhancement focuses on extending the ability to store one or multiple identifiers on a provider. These are used to identify the provider when processing claims and enrollment.

NXT-21306

Introduce the possibility to have aliases in fields/expand list

With this enhancement, it is possible to use aliases in fields/expand section in Generic HTTP APIs.
Integration Guide: Influence Resource Representation

NXT-21397

Ability to confirm JET UI configuration before handover

When a user with access to following API/IPs, logs in to JET UI, he ends up in the landing page without any menus (only the application banner & Sign Out are shown) to indicate successful login.

API/IP access * User Information IP * Current Properties IP

OIG-1366

Dynamic Logic Hooks/Extensions

This enhancement make it possible to extend dynamic logic delivered as part of configuration by customers to provide their specific changes/extensions. This is enabled by introducing a new signature 'Extension' for all such extensions with a reference to the base dynamic logic that it is extending. At runtime, the application finds out all the extensions and invokes them.

OIG-1434

Dynamic Logic Framework should allow to use package statement in the logic

Before this release the dynamic logic framework assumes all scripts to be written in a default package ohi.dynamiclogic. This is done to apply the security restrictions and to allow for logging only in scripts defined in the aforementioned package.

This causes problems with reusability, as every logic that requires to use the reusable code, needs to append ohi.dynamiclogic before importing it. This makes it difficult to manage and test these groovy logic in isolation. On top of that, dynamic logic framework does not play well, if the package statement is explicitly included as ohi.dynamiclogic, as it appends another ohi.dynamiclogic in front of it.

With this enhancement, it is possible to declare packages in the script and the framework will work with the package defined. It is however important, that the packages defined should start with ohi.dynamiclogic, otherwise security restrictions will be enforced.

OIG-1445

Create Rest Service to generate objects and download them as zip

Introduction of the Objects Integration Point to download the objects as a zip. This Objects Integration Point also introduces the capability to generate dynamic fields and records as just a plain key-value pair, to avoid having to regenerate these after every introduction of dynamic data.

OIG-419

Conditional Display of property - Single/Multivalue

This enhancement adds the following possibilities using floorplans

  • Show/hide properties based on another property value

  • Alter characteristics of a property based on another property value, including the possibility to add a filter condition to LOV.

  • Show/hide tabs and tiles based on another property value

  • Support for altering properties for fields in the context of a row within a table

POL-5081

Configurable Address Types

This enhancements makes the address type a configurable domain for relations.

POL-6006

Preparation for upgrade to JET 9.0.0

JET Audit should be done and the critical/major issues needs to be fixed. Migration from knockout ojModule bindings to <oj-Module> JET custom component

POL-6794

Configurable Gender Types

This enhancement creates the possibility to capture a person’s gender identity. Gender identity is a separate configurable entity.

POL-6797

Dynamic Logic Framework should allow for reusable groovy classes to be created and used

With this enhancement, dynamic logic framework allows for coding reusable classes to be reused as structures in other groovy scripts. This enhancement also introduces a new signature name for coding such reusable classes/scripts. The name of the signature is "Reusable Code" and does not have any specific bindings.

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 has run.

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

To create a new read-only user that has access to the new Base Views run the following SQL script as a DBA user

grant connect, create synonym to ohi_capitation_bvg_vws_user identified by &give_users_password;

Install the database patch for "Bug 30806757 - ORA-8103 when inserting into a new partition with is json constraint in place (Doc ID 30806757.8)". If that is not done and the "logging to the database" feature is enabled then this results in the following error: "Problem appending events for Log Type application|dylo java.sql.BatchUpdateException: ORA-08103: object no longer exists".

Configuration Properties

Ref Action Subject Description

CPN-1294

Added

ohi.logging.fileset.max.timespan

Maximum time in days between start and end time for bundling log events in a file set.

CPN-1294

Added

ohi.logging.phi.min.retentionperiod

Minimal number of days for retaining PHI log events.

NXT-20490

Added

ohi.baseview.generation.worker.count

The number of worker threads to start for a base view generation process

NXT-20854

Modified

ohi.incident.datafileset.retentionperiod

The property ohi.incidents.datafileset.retentionperiod is renamed to ohi.incident.datafileset.retentionperiod

NXT-20854

Modified

ohi.incident.target

The property ohi.incidents.target is renamed to ohi.incident.target

NXT-21006

Added

ohi.oauth.jwk.set.validation.jws.signing.algorithm

Signing algorithm used by the Authorization Server.

NXT-21006

Added

ohi.oauth.jwk.set.validation.issuer

Issuer for token validation.

NXT-21006

Added

ohi.oauth.jwk.set.validation.audience

Client Id or audience claim for token validation.

NXT-21006

Added

ohi.oauth.token.issuer.{0}

Specific issuer identifier

NXT-21006

Added

ohi.oauth.token.issuer.{0}.user.claim

Issuer-specific user claim

NXT-21006

Added

ohi.oauth.openidconnect.accesstoken.credential

Credential associated with the OpenID Connect client that has to be present to acquire an access token.

NXT-21006

Added

ohi.oauth.openidconnect.accesstoken.validation.clockskew

Defines the maximum acceptable clock skew (in seconds) for validating timestamps of ID tokens that are issued by an OpenID Provider.

NXT-21006

Added

ohi.oauth.openidconnect.accesstoken.client_id

Client ID of the OpenID Connect client that has to be present to acquire an access token.

NXT-21006

Added

ohi.oauth.token.issuers

Comma-separated string of possible token issuers

NXT-21006

Removed

ohi.oauth.jws.verification.key.selection.jws_algorithm

NXT-21006

Removed

ohi.oauth.jws.verification.key.selection.key_id

NXT-21006

Removed

ohi.oauth.jwk.publickey.keyid.source

NXT-21006

Removed

ohi.oauth.token.introspection.endpoint.client_secret

NXT-21006

Removed

ohi.oauth.jwk.keystore.name

NXT-21006

Removed

ohi.oauth.jws.verification.key.selection.public_keys_only

NXT-21006

Removed

ohi.oauth.jws.verification.key.selection.signing_keys_only

Web Services

Ref Action Subject Description

NXT-20490

Added

Base View Generation Integration Point

New Integration Point

NXT-21006

Modified

Provisioning Integration Point

Added alternateUserIdentifier: an alternate identifier, next to the loginName, for uniquely identifying a user

NXT-21203

Modified

Provider Integration Point, Claims Integration Point & Policy Integration Point

This enhancement focuses on extending the ability to store one or multiple provider identifiers on a provider.

OIG-1445

Added

Objects Integration Point

New Integration Point

POL-5081

Modified

Relation IP and API

Added new attribute addressTypeCode

POL-6794

Modified

Relations IP and API

new attribute genderIdentityCode

Data Conversion

Ref Action Subject Description

POL-5081

Table change event rule fields updated

Change event rules on address that are using field 'type' are updated to 'addressType'.

This is applicable for Policies application only.

Dynamic Logic

Ref Action Subject Description

OIG-1366

Added

Dynamic Logic Signature

Introduced a new signature with name "Extension"

POL-5081

Modified

Dynamic logic using address.type

'type' attribute of Address is replaced by 'addressType'. Accessing type attribute on address is deprecated and will not be supported in a future release.

POL-6797

Added

Dynamic Logic Signature

Introduced a new signature with name "Reusable Code"

UI Changes

Ref Action Subject Description

CPN-1239

Added

Access restrictions, Access roles, Data access groups

Added Access restrictions, Access roles, Data access groups pages

CPN-1239

Added

TItles, Prefixes, Countries, Specialties, Currencies

Added Titles, Prefixes, Countries, Specialties, Currencies Pages

CPN-1239

Added

Provider Group, Individual Providers, Service Addresses, Organization Providers

Added Provider Group, Individual Providers, Service Addresses and Organization Providers Pages

CPN-1239

Added

Messages, Message groups, Provider assignment types

Added Messages, Message groups and Provider Assignment Types pages

CPN-1239

Added

Persons, Organizations, Banks, Identifier types

Added Persons, Organizations, Banks, Identifier types pages

CPN-1239

Added

Boilerplate texts, Floorplan, Insurable entity types

Added Boilerplate Texts, Floorplan and Insurable Entity Types pages

NXT-20490

Added

Record Definitions page

New indicator PII?

NXT-20490

Added

Tables page

New indicator PII?

NXT-21113

Modified

Floorplans page

Added floorplantagdetails tab

NXT-21113

Modified

Config Migration Sets (ADF)

Added option to select floorplan while creating a migration set

OIG-1366

Modified

Dynamic Logic Page

Added Base dynamic logic. This is done for both UI (ADF and Jet) where applicable.

OIG-419

Added

Dynamic Logic Page

Added Dynamic Logic Page in CPN and NXT

POL-6794

Added

Gender Identities, Address Types

Added Gender Identities, Address Types

POL-6794

Modified

Persons, Organizations

Added Gender Identities and address types lovs in persons and organizations page

Deprecated items (to be removed in future release)

Ref Action Subject Description

NXT-20490

Reporting Views

The reporting views as generated by the runnable jar are now deprecated.

POL-5081

Dynamic logic using address.type and generic API on address

'type' attribute of Address is replaced by 'addressType'

Breaking Changes

Ref Action Subject Description

NXT-20854

Modified

ohi.incident.target

The property ohi.incidents.target is renamed to ohi.incident.target

NXT-20854

Modified

ohi.incident.datafileset.retentionperiod

The property ohi.incidents.datafileset.retentionperiod is renamed to ohi.incident.datafileset.retentionperiod

POL-5081

Modified

Generic API search on address.type

This should be replaced by address.addressType.code

Bug Fixes

BugDB SR Internal BP Summary

30671277

CPN-1019

A Popup was being shown on switching object navigation links when there were no changes to save

Description:

When user tries to move within object navigation links in view mode or when there is nothing changed on page, a prompt is being shown to user for taking an appropriate action of 'Cancel','No','Save'. It produces undesired results when user hits Save.

Resolution:

Now, no popup is being shown as expected.

32073556

CPN-1245

Dynamic Logic exception: Restricted method invocation

Description:

When accessing the object returned by the JSON slurper, the application raises an exception, e.g.:

Error occurred in dynamic logic "DYLO_NAME" on line "xxx": "java.lang.SecurityException: Restricted method invocation."

Resolution:

The new version of Groovy packaged with the application returns a Lazymap object from the JSON slurper. Access from Dynamic Logic to objects of this type was not permitted, this has now been changed.

32173057

CPN-1298

Unable to navigate to view page after performing edit operation from HRR page.

Description:

User is not redirected to view mode after performing edit action on any HRR pages.

Resolution:

When Edit action is performed on any HRR page and the changes are saved, the page displays the Confirmation message and gets re-directed to View mode again

32462389

CPN-1339

BP

An error occurs when user tries to save the LOV value without selecting from the search results

Description:

The error occurs when a user tries to save the LOV value without selecting from the search results. If the user doesn’t select any value, the value does not get saved.

Resolution:

If the user wants to select a value from an LOV, then they must enter the complete value of the LOV and press Enter key. This will pick the first value from the search results of LOV.

32469446

CPN-1429

Task is stuck in 'PROCESSING' status if the node leaves the cluster

Description:

When the node processing a task leaves the cluster or if the node is stopped while the task is being processed, then the status of the task remains in 'PROCESSING' status. The other nodes in the cluster should have recovered/requeued that task.

Resolution:

When a node leaves the cluster, then the tasks that are currently being processed by that node are now recovered by the other node(s) in the cluster.

Issues that were backported in previous Release / Patch

No backports.

Known Issues

BugDB SR Internal Summary

30682384

CPN-1021

User is not able to update dimensions in rate schedule lines page as its disabled.

Description:

Rate schedule lines dimensions are disabled and user can not enter any details for the same on Rate Schedule Line page.

31520192

CPN-1105

Access: Application does not support portrait mode.

Description:

Application is not supporting portrait mode.

31539986

CPN-1109

Access: Users are not able to access menu items with 300% zoom

Description:

Access: On zooming in to 300% the menu items are not accessible.

31540050

CPN-1110

Access: Save status messages are not captured through screen reader

Description:

While saving, a save message is shown which is not being captured through screen reader.

31540221

CPN-1111

Access: Search and gear icon is not accessible on create and edit pages

Description:

User can not access search and gear icons for accessibility runs on create and edit pages

31540188

CPN-1112

Access: Advanced search functionality is not accessible on pages through keyboard.

Description:

Access: Advanced search functionality is not accessible on pages and users can not move to advanced search through keyboard.

31685804

3-23619498101

CPN-1154

FTRN_ID_ORIGINS_FROM not filled for reversals

Description:

Report is not possible because of missing link.

32007876

CPN-1161

Popup to add adjustments was not loading under contracts page

Description:

When user tries to add adjustment, page hangs on and user needs to refresh or logout

32007885

CPN-1164

Rate Schedule Lines - Add button on Rate Schedule lines is not working

Description:

Steps -

  1. Click on Manage Rate Schedules Menu Tile

  2. Click on Rate schedule lines object navigation link

  3. Click on add button for a rate schedule line.

Result - Add button does not work

32007867

CPN-1166

Adjustment schedule line conveyor belt not loading the details for time periods

Description:

On Adjustment Schedule Line page, conveyor belt does not load the details for time periods or allow to add a new Adjustment line.

32477683

CPN-1431

Base View Generator for Reference sheets is not supported

Description:

Reference sheet(line)s use a different storage structure (JSON) for the dynamic fields. The base view generator does not support that yet. So the reference sheet line columns can’t be queried using base views.

32525633

CPN-1450

Usage names with a reserved SQL word results in view generation failure

Description:

A usage name like "level" (which is a SQL reserved word) results in a failure in the view generator for the table where this usage is used.

32560465

CPN-1489

Baseview generation sometimes might result in error: ORA-01461

Description:

This happens occasionally when generating baseviews.

An error similar to the one described below is emitted to the application logfile:

java.sql.SQLException: ORA-12801: error signaled in parallel query server P007 ORA-01461: can bind a LONG value only for insert into a LONG column

32574115

CPN-1498

Un saved popup is displayed while saving the provider group with required data.

Description:

When user try to save the Provider group details, page display confirmation message along with un-saved changes popup message.

28358450

CPN-231

Access: There is no high contrast mode enabled for Capitation JET UI.

Description:

There is no high contrast mode for Capitation JET UI. Investigate how to implement and apply high contrast mode for capitation

28393599

CPN-235

Access: No documentation to define for accessibility and compatibility features

Description:

No documentation to define for accessibility and compatibility features.

30087839

CPN-669

User receives "CPN-ASLN-001" error and error details on adjustment schedule lines while system does not indicate the line causing the error.

Description:

User receives "CPN-ASLN-001" error and error details on adjustment schedule lines while system does not indicate the line causing the error. { "errorDetails" : [ { "errorCode" : "CPN-ASLN-001", "title" : "CPN-ASLN-001: Exactly one of amount, percentage and function must be specified", "errorPath" : "$" }

] }

It should be o:errorDetails, o:errorCode and so on. Also the errorPath should specify on which line the error is

29421521

CPN-890

Access: Accessibility issues in capitation UI 3.19.1.0.0

Description:

There have been number of observations during accessibility run for 3.19.1.0.0, which are documented in respective task for a suitable action.

30271566

CPN-994

Member age range not visible on JET UI for Rate Schedule Lines

Description:

Member has age range and it is not visible in UI. At IP it is member age from and member age to is present.

32007445

CPN-997

JET-Contract rate schedule lines do not show Rate schedule definition fields.

Description:

Its expected to see the Schedule definition fields in the contract rate schedule lines, which are not displayed currently.