T102-2015: ChemReg/BioReg database installation wizard fails with ORA-01722 errors
Chemical Registration
During the execution of the installation wizard for BIOVIA Biological or Chemical registration, as instructed by the documentation, you may find errors with the message "ORA-01722: invalid number" when trying to create a new database.
This issue has been reported on servers hosting the installation wizard (BIOVIA Foundation), where the OS locale is set to a language using comma (,) as decimal separator instead of period (.).
Even if the Oracle database and server are set up to use English settings by default, any JDBC connection to Oracle is initialized with NLS settings that correspond to the locale of the client operating system (in this case, the BIOVIA Foundation Server). This is native JRE/JDBC behavior and can not be affected by BIOVIA Foundation. With these non-English NLS settings, inserts of numeric values into the newly created database will fail because the provided values do not have the decimal separator expected.
Resolution:
Option 1
Change the locale for the OS user running BIOVIA Foundation to English (US).
Option 2
To work around this issue without changing the locale, create the following trigger in the SYSTEM schema of the Oracle database:
CREATE OR REPLACE TRIGGER DATABASE_LOGON
AFTER LOGON ON DATABASE
BEGIN
NULL;
EXECUTE IMMEDIATE 'ALTER SESSION SET NLS_NUMERIC_CHARACTERS =".,"';
EXECUTE IMMEDIATE 'ALTER SESSION SET NLS_LANGUAGE="AMERICAN"';
EXECUTE IMMEDIATE 'ALTER SESSION SET NLS_TERRITORY="AMERICA"';
END;
/
This will switch to AMERICAN settings for any login, including logins via JDBC. The installation wizard now runs to completion and the application should be working normally.
Once the installation is completed it is recommended to remove the logon trigger in the SYSTEM schema to avoid unforeseen side effects.
This issue has been logged as a Defect REG-14486 and will be considered for inclusion in a future release.
If you consider this issue to be high priority (ie. this is severely blocking your use of this BIOVIA product) please contact BIOVIA Support.
Error Mesage:
ORA-01722: invalid number