Question
Tech Mahindra
CA
Last activity: 25 May 2016 9:07 EDT
There was a database problem when performing an RDBExecute: code: 0 SQLState: <none> Message: No value has been inserted
Hi, We are using PRPC 6.1 SP2. We used summary view with drill down and when the dril down is clicked we are getting the below error
"There was a database problem when performing an RDBExecute: code: 0 SQLState: <none> Message: No value has been inserted"
We are facing the issue only in PROD but is fine in all non PROD environments including Pre-prod.
-
Like (0)
-
Share this page Facebook Twitter LinkedIn Email Copying... Copied!
Accepted Solution
Oracle TimeStamp column type is only supported from Pega 7.1.8 onwards.
Below PDN links mention the same
https://community.pega.com/knowledgebase/release-note/support-oracle-timestamp-data-types
https://docs-previous.pega.com/database-management/datetime-property-mapping-oracle-pega-7
Setting J2EE13Compliant to true/false using below procedure can make the report run without error if it has an oracle column set to TIMESTAM.
Note that this is up to customer to set it and Pega will not recommend it.
For a TIMESTAMP in oracle the ResultSet.getObject method returns java.sql.Timestamp for the TIMESTAMP SQL type, only when the connection property oracle.jdbc.J2EE13Compliantis set to TRUE. This property has to be set when the connection is obtained. If this connection property is not set or if it is set after the connection is obtained, then theResultSet.getObject method returns oracle.sql.TIMESTAMP for the TIMESTAMP SQL type.
Oracle TimeStamp column type is only supported from Pega 7.1.8 onwards.
Below PDN links mention the same
https://community.pega.com/knowledgebase/release-note/support-oracle-timestamp-data-types
https://docs-previous.pega.com/database-management/datetime-property-mapping-oracle-pega-7
Setting J2EE13Compliant to true/false using below procedure can make the report run without error if it has an oracle column set to TIMESTAM.
Note that this is up to customer to set it and Pega will not recommend it.
For a TIMESTAMP in oracle the ResultSet.getObject method returns java.sql.Timestamp for the TIMESTAMP SQL type, only when the connection property oracle.jdbc.J2EE13Compliantis set to TRUE. This property has to be set when the connection is obtained. If this connection property is not set or if it is set after the connection is obtained, then theResultSet.getObject method returns oracle.sql.TIMESTAMP for the TIMESTAMP SQL type.
The oracle.jdbc.J2EE13Compliant connection property can also be set without changing the code in the following ways:
• Including the ojdbc5dms.jar or ojdbc6dms.jar files in the CLASSPATH. These files set oracle.jdbc.J2EE13Compliant to TRUE by default. These are specific to the Oracle Application Server release and are not available as part of the general JDBC release. They are located in $ORACLE_HOME/jdbc/lib.
• Setting the system property by calling the java command with the flag -Doracle.jdbc.J2EE13Compliant=true. For example,
java -Doracle.jdbc.J2EE13Compliant=true
Below articles that will help you on finding these settings
https://docs.oracle.com/cd/B28359_01/java.111/b31224/datacc.htm
Pegasystems Inc.
AU
Hi Naveen,
I believe you have the DB2 database and you have a list view with one of the filed as date.
As the DB2 DATE type is not supported. Please try one of the following local change for the list view to work with the DATE type:
Create a DB2 View on the table that cast either with the TIMESTAMP function or the CAST function the DB2 Date column to a TIMESTAMP value and then use normal PRPC methods to access that PRPC datetime property.
Syntax for creating the view would be
CREATE VIEW READ_CLASS AS SELECT TIMESTAMP(RPT_DATE, '00.00.00') AS ".RPT_DATE"”
OR
Create a custom getcontent activity with the same casting of datatypes to a TIMESTAMP when you specify the query to generate should also work for you. And use this getcontent activity in the List view.
Tech Mahindra
CA
Thanks for update.
We are using Oracle DB and we have few date columns like pxcreatedatetime and pxupdatedatetime and we never faced this issue in any of the non PRODs but only having the issue consistently in PROD.
Pegasystems Inc.
US
I would compare the differences between your Prod and other working envs, including db side as well as runtime environment. Timestamp is not supported for 61sp2 Oracle included.
Pegasystems Inc.
US
Thank you Naveen Mekala! I have updated the thread and connected this with your SR!
Accepted Solution
Oracle TimeStamp column type is only supported from Pega 7.1.8 onwards.
Below PDN links mention the same
https://community.pega.com/knowledgebase/release-note/support-oracle-timestamp-data-types
https://docs-previous.pega.com/database-management/datetime-property-mapping-oracle-pega-7
Setting J2EE13Compliant to true/false using below procedure can make the report run without error if it has an oracle column set to TIMESTAM.
Note that this is up to customer to set it and Pega will not recommend it.
For a TIMESTAMP in oracle the ResultSet.getObject method returns java.sql.Timestamp for the TIMESTAMP SQL type, only when the connection property oracle.jdbc.J2EE13Compliantis set to TRUE. This property has to be set when the connection is obtained. If this connection property is not set or if it is set after the connection is obtained, then theResultSet.getObject method returns oracle.sql.TIMESTAMP for the TIMESTAMP SQL type.
Oracle TimeStamp column type is only supported from Pega 7.1.8 onwards.
Below PDN links mention the same
https://community.pega.com/knowledgebase/release-note/support-oracle-timestamp-data-types
https://docs-previous.pega.com/database-management/datetime-property-mapping-oracle-pega-7
Setting J2EE13Compliant to true/false using below procedure can make the report run without error if it has an oracle column set to TIMESTAM.
Note that this is up to customer to set it and Pega will not recommend it.
For a TIMESTAMP in oracle the ResultSet.getObject method returns java.sql.Timestamp for the TIMESTAMP SQL type, only when the connection property oracle.jdbc.J2EE13Compliantis set to TRUE. This property has to be set when the connection is obtained. If this connection property is not set or if it is set after the connection is obtained, then theResultSet.getObject method returns oracle.sql.TIMESTAMP for the TIMESTAMP SQL type.
The oracle.jdbc.J2EE13Compliant connection property can also be set without changing the code in the following ways:
• Including the ojdbc5dms.jar or ojdbc6dms.jar files in the CLASSPATH. These files set oracle.jdbc.J2EE13Compliant to TRUE by default. These are specific to the Oracle Application Server release and are not available as part of the general JDBC release. They are located in $ORACLE_HOME/jdbc/lib.
• Setting the system property by calling the java command with the flag -Doracle.jdbc.J2EE13Compliant=true. For example,
java -Doracle.jdbc.J2EE13Compliant=true
Below articles that will help you on finding these settings
https://docs.oracle.com/cd/B28359_01/java.111/b31224/datacc.htm