diff --git a/java/src/main/java/com/genexus/db/driver/GXDBMSdameng.java b/java/src/main/java/com/genexus/db/driver/GXDBMSdameng.java index 7435838ee..b178aff61 100644 --- a/java/src/main/java/com/genexus/db/driver/GXDBMSdameng.java +++ b/java/src/main/java/com/genexus/db/driver/GXDBMSdameng.java @@ -106,7 +106,7 @@ public void onConnection(GXConnection con) { } public java.util.Date serverDateTime(GXConnection con) throws SQLException { - ResultSet rslt = con.getStatement("_ServerDT_", "SELECT LOCALTIMESTAMP()", false).executeQuery(); + ResultSet rslt = con.getStatement("_ServerDT_", "SELECT CAST(LOCALTIMESTAMP() AS TIMESTAMP)", false).executeQuery(); rslt.next(); Date value = rslt.getTimestamp(1); diff --git a/java/src/main/java/com/genexus/db/driver/GXDBMSoracle7.java b/java/src/main/java/com/genexus/db/driver/GXDBMSoracle7.java index 7f7bf4d0d..ef04104da 100644 --- a/java/src/main/java/com/genexus/db/driver/GXDBMSoracle7.java +++ b/java/src/main/java/com/genexus/db/driver/GXDBMSoracle7.java @@ -4,6 +4,7 @@ import java.sql.*; import java.util.Date; +import com.genexus.Application; import com.genexus.CommonUtil; public class GXDBMSoracle7 implements GXDBMS @@ -127,7 +128,10 @@ public void onConnection(GXConnection con) public java.util.Date serverDateTime(GXConnection con) throws SQLException { - ResultSet rslt = con.getStatement("_ServerDT_", "SELECT SYSTIMESTAMP FROM DUAL", false).executeQuery(); + String sqlSentence = "SELECT SYSTIMESTAMP FROM DUAL"; + if (!Application.getClientPreferences().useTimezoneFix()) + sqlSentence = "SELECT CAST(SYSTIMESTAMP AS TIMESTAMP) FROM DUAL"; + ResultSet rslt = con.getStatement("_ServerDT_", sqlSentence, false).executeQuery(); rslt.next(); Date value = rslt.getTimestamp(1);