Values for timestamp default XMLTable causes ORA-01843: not one month valid

When I try to provide a default value for a timestamp value in the function XMLTABLE, I am greeted with an error - ORA-01843: not one month valid -no matter how to give this default value. If there is a value in the XML or not is irrelavant to this bug occurs. It seems to be an incomplete correction of bug number 9745897 (thread).

Select x.*

Of

XMLTable ('/ DOC' from xmltype ("< DOC > < DT > 2013-08-14T 15: 08:31 < /DT > < / DOC > '"))

DT COLUMNS timestamp default sysdate) x;

Select x.*

Of

XMLTable ('/ DOC' from xmltype ("< DOC > < DT > 2013-08-14T 15: 08:31 < /DT > < / DOC > '"))

By default systimestamp timestamp COLUMNS DT) x;

Select x.*

Of

XMLTable ('/ DOC' from xmltype ("< DOC > < DT > 2013-08-14T 15: 08:31 < /DT > < / DOC > '"))

DT of COLUMNS timestamp default to_char (systimestamp, ' ' YYYY-MM-DD "T" HH24:MI:SS)) x;)

Edit: somewhat more followed.

It works:

Select x.*

Of

XMLTable ('/ DOC' from xmltype ("< DOC > < / DOC > '"))

Date of the dt of COLUMNS by default sysdate) x;

It works, too, with the exception of its just the date and not the time

Select x.*

Of

XMLTable ('/ DOC' from xmltype ("< DOC > < / DOC > '"))

DT COLUMNS timestamp default sysdate) x;

It does not work

Select x.*

Of

XMLTable ('/ DOC' from xmltype ("< DOC > < / DOC > '"))

By default systimestamp timestamp COLUMNS DT) x;

ORA-01861: literal does not match the format string

Hello

First of all, let's check the manual for the DEFAULT clause:

Function SQL/XML XMLTABLE in Oracle XML DB

The optional parameter DEFAULT clause specifies the value to use when the PATH expression results in an empty sequence (or NULL ). His expr is an XQuery expression that is evaluated to produce the default value.

According to the documentation, the DEFAULT clause must specify an XQuery expression.

However, is false, the implementation only expects an expression that matches a string, the content is not interpreted.

Bottom line is, if we specify directly a string, the expression is implicitly converted into one, and everyone knows how things can go when implicit conversions appear, especially when the dates or timestamps are involved.

Now let's focus on the impact of the DEFAULT clause on the evaluation of the query.

When a DEFAULT clause is specified, Oracle has rewritten projection differently and does not use the native format of XS: DateTime to convert the value:

Select x.*

Of

XMLTable ('/ DOC' from xmltype ('))

2013-08-14 T 15: 08:31
')

DT of COLUMNS by default systimestamp timestamp

) x

becomes:

SELECT THE EXISTSNODE (VALUE(KOKBF$), '/ DOC/DT')

WHEN 1 THEN LAUNCH (TO_TIMESTAMP (SYS_XQ_UPKXML2SQL (SYS_XQEXVAL (SYS_XQEXTRACT (VALUE(KOKBF$), '/ DOC/DT')), 50.1, 2)() as a timestamp)

ELSE CAST (TO_TIMESTAMP (TO_CHAR (SYSTIMESTAMP (6)), 'SYYYY-MM-DD "T" HH24:MI:SSXFF') AS timestamp)

END "DT".

TABLE ("SYS". "XQSEQUENCE"(EXTRACT ("SYS"." XMLTYPE"(")

2013-08-14 T 15: 08:31
(((,'/ DOC'))) ' KOKBF$ '.

See the red part: it does not use the format parameter, the conversion depends on NLS session parameters.

When there is no DEFAULT clause, the TO_TIMESTAMP function uses an explicit format:

Select x.*

Of

XMLTable ('/ DOC' from xmltype ('))

2013-08-14 T 15: 08:31
')

Dt timestamp - default systimestamp COLUMNS

) x

rewritten to:

SELECT CAST)

TO_TIMESTAMP)

SYS_XQ_UPKXML2SQL (SYS_XQEXVAL (SYS_XQEXTRACT (VALUE(KOKBF$), '/ DOC/DT'), 0,0,20971520, 0), 50.1, 2)

"SYYYY-MM-DD"T"HH24:MI:SSXFF"

)

BY timestamp - default systimestamp

) "DT".

TABLE ("SYS". "XQSEQUENCE"(EXTRACT ("SYS"." XMLTYPE"(")

2013-08-14 T 15: 08:31
(((,'/ DOC'))) ' KOKBF$ '.

So yes, maybe there is a bug here.

Edit: somewhat more followed.

It works:

Select x.*

Of

XMLTable ('/ DOC' from xmltype (""))

Date of the dt of COLUMNS by default sysdate) x;

Actually no, it does not work. Certainly, maybe it produces no error, but the result is incorrect.

As explained, the conversion is based on the NLS (NLS_DATE_FORMAT in this case) session:

SQL > show nls_date_format settings

VALUE OF TYPE NAME

------------------------------------ ----------- ------------------------------

string of NLS_DATE_FORMAT JJ/MM/RR

SQL >

SQL > select sysdate to double;

SYSDATE

--------

16/08/13

SQL > select x.*

2 from

3 xmltable ('/ DOC' passing xmltype (""))

4 COLUMNS dt date default sysdate) x;

DT

--------

13/08/16

Oracle first converts SYSDATE to a string using current NLS_DATE_FORMAT, having for result Aug 16, 13 '

Then this string is converted to a DATE as XS: date is 'YYYY-MM-DD' leading 13/08/16 (13 August, 0016) which is incorrect.

The obvious solution to this problem is to control how Oracle converts implicitly string to timestamp format:

SQL > alter session set NLS_TIMESTAMP_FORMAT = "YYYY-MM-DD"T"HH24:MI:SS."

Modified session.

SQL > select x.*

2 from

3 xmltable ('/ DOC' from xmltype ('))

2013-08-14 T 15: 08:31
')

4 dt of systimestamp default timestamp COLUMNS

(5) x;

DT

---------------------------------------------------------------------------

2013-08-14 T 15: 08:31

SQL > select x.*

2 from

3 xmltable ('/ DOC' passing xmltype (""))

4 dt of COLUMNS by default systimestamp timestamp) x;

By default systimestamp timestamp COLUMNS DT) x

*

ERROR on line 4:

ORA-01861: literal does not match the format string

SQL > select x.*

2 from

3 xmltable ('/ DOC' passing xmltype (""))

Cast of default timestamp COLUMNS dt (systimestamp timestamp) 4) x;

DT

---------------------------------------------------------------------------

2013 08-16 T 12: 32:58

Tags: Database

Similar Questions

  • Unable to compare date "ORA-01843: not one month valid."

    Hi all

    I'm trying to shoot under query, but it fails with the error. Please suggest.

    SELECT nom_de_colonne FROM tbl_name WHERE start_time < 1 January 2011 00:00:00 AM ';
    ORA-01843: not one month valid

    In the table the value of start_time is stored in format 16/02/2013 20:31:01.

    Kind regards
    Ankit

    Published by: 982193 on March 11, 2013 06:32

    You treat your date to a string rather than a date. This isn't how to treat data types, otherwise you will rely on implicit data type conversions and this means that Oracle will make assumptions about the data that you provide, such as what is the format of a date.

    You need something like...

    SELECT column_name FROM table_name  WHERE start_time < to_date('01/01/2011 00:00:00 AM','DD/MM/YYYY HH:MI:SS AM');
    
  • java.sql.SQLDataException: ORA-01843: not one month valid

    We have deployed a custom page that is displayed correctly, but results in the error below when you try to run the search. This happens for all users except one. We have a user who is not the error message and can run the query and display the results.

    Everyone ran into an issue similar to this.


    Error page
    Details of the exception.
    oracle.apps.fnd.framework.OAException: oracle.jbo.SQLStmtException: 27122 Houston: SQL error in the preparation of the statement. Statement: SELECT * FROM (SELECT ContactEO.PERSON_ID,
    ContactEO.EMPLOYEE_NUMBER,
    ContactEO.FULL_NAME,
    ContactEO.JOB_CODE,
    ContactEO.LOCATION_NAME,
    ContactEO.SUPERVISOR_NAME,
    Decode (ManageContactEO.EMPLOYEE_ID, NULL, NULL, 'Y') AS FIRST_APPROVER,
    ManageContactEO.INVOICE_CONTACT_ID,
    ManageContactEO.INVOICE_CONTACT_CODE
    OF CSXXX_CS_EMPLOYEE_LIST_V ContactEO
    Join CSCUSTOM. CSXXX_CS_AP_INVOICE_CONTACTS ManageContactEO
    On ContactEO.PERSON_ID = ManageContactEO.Employee_ID (+)) QRSLT WHERE ((UPPER (LOCATION_NAME) as UPPER(:1) AND (LOCATION_NAME like: 2 OR LOCATION_NAME as: 3 OR LOCATION_NAME as: 4 OR LOCATION_NAME as: 5)))
    at oracle.apps.fnd.framework.OAException.wrapperException(OAException.java:912)
    at oracle.apps.fnd.framework.webui.OAPageErrorHandler.prepareException(OAPageErrorHandler.java:1169)
    at oracle.apps.fnd.framework.webui.OAPageErrorHandler.processErrors(OAPageErrorHandler.java:1435)
    at oracle.apps.fnd.framework.webui.OAPageBean.processFormRequest(OAPageBean.java:2978)
    at oracle.apps.fnd.framework.webui.OAPageBean.preparePage(OAPageBean.java:1875)
    at oracle.apps.fnd.framework.webui.OAPageBean.preparePage(OAPageBean.java:543)
    at oracle.apps.fnd.framework.webui.OAPageBean.preparePage(OAPageBean.java:431)
    in OA. jspService(_OA.java:212)
    at com.orionserver.http.OrionHttpJspPage.service(OrionHttpJspPage.java:59)
    at oracle.jsp.runtimev2.JspPageTable.service(JspPageTable.java:379)
    at oracle.jsp.runtimev2.JspServlet.internalService(JspServlet.java:594)
    at oracle.jsp.runtimev2.JspServlet.service(JspServlet.java:518)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
    at com.evermind.server.http.ResourceFilterChain.doFilter(ResourceFilterChain.java:64)
    at oracle.apps.jtf.base.session.ReleaseResFilter.doFilter(ReleaseResFilter.java:26)
    at com.evermind.server.http.EvermindFilterChain.doFilter(EvermindFilterChain.java:15)
    at oracle.apps.fnd.security.AppsServletFilter.doFilter(AppsServletFilter.java:318)
    at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:621)
    at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:370)
    at com.evermind.server.http.HttpRequestHandler.doProcessRequest(HttpRequestHandler.java:871)
    at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:453)
    at com.evermind.server.http.AJPRequestHandler.run(AJPRequestHandler.java:313)
    at com.evermind.server.http.AJPRequestHandler.run(AJPRequestHandler.java:199)
    to oracle.oc4j.network.ServerSocketReadHandler$ SafeRunnable.run (ServerSocketReadHandler.java:260)
    to com.evermind.util.ReleasableResourcePooledExecutor$ MyWorker.run (ReleasableResourcePooledExecutor.java:303)
    at java.lang.Thread.run(Thread.java:619)
    # # 0 in detail
    java.sql.SQLDataException: ORA-01843: not one month valid

    at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:439)
    at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:395)
    at oracle.jdbc.driver.T4C8Oall.processError(T4C8Oall.java:802)
    at oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:436)
    at oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java:186)
    at oracle.jdbc.driver.T4C8Oall.doOALL(T4C8Oall.java:521)
    at oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.java:205)
    at oracle.jdbc.driver.T4CPreparedStatement.executeForDescribe(T4CPreparedStatement.java:861)
    at oracle.jdbc.driver.OracleStatement.executeMaybeDescribe(OracleStatement.java:1145)
    at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1267)
    at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:3449)
    at oracle.jdbc.driver.OraclePreparedStatement.executeQuery(OraclePreparedStatement.java:3493)
    at oracle.jdbc.driver.OraclePreparedStatementWrapper.executeQuery(OraclePreparedStatementWrapper.java:1491)
    at oracle.jbo.server.QueryCollection.buildResultSet(QueryCollection.java:860)
    at oracle.jbo.server.QueryCollection.executeQuery(QueryCollection.java:669)
    at oracle.jbo.server.ViewObjectImpl.executeQueryForCollection(ViewObjectImpl.java:3723)
    at oracle.jbo.server.OAJboViewObjectImpl.executeQueryForCollection (unknown Source)
    at oracle.apps.fnd.framework.server.OAViewObjectImpl.executeQueryForCollection(OAViewObjectImpl.java:4560)
    at oracle.jbo.server.ViewRowSetImpl.execute(ViewRowSetImpl.java:743)
    at oracle.jbo.server.ViewRowSetImpl.executeQueryForMasters(ViewRowSetImpl.java:892)
    at oracle.jbo.server.ViewRowSetImpl.executeQueryForMode(ViewRowSetImpl.java:806)
    at oracle.jbo.server.ViewRowSetImpl.executeQuery(ViewRowSetImpl.java:800)
    at oracle.jbo.server.ViewObjectImpl.executeQuery(ViewObjectImpl.java:3643)
    at oracle.apps.fnd.framework.server.OAViewObjectImpl.executeQuery(OAViewObjectImpl.java:439)
    at oracle.apps.fnd.framework.server.OAViewObjectImpl.initQuery(OAViewObjectImpl.java:743)
    at oracle.apps.fnd.framework.webui.OAWebBeanHelper.setCriteriaOnVO(OAWebBeanHelper.java:2334)
    at oracle.apps.fnd.framework.webui.OAQueryHelper.handleSubmitButton(OAQueryHelper.java:2871)
    at oracle.apps.fnd.framework.webui.OAQueryHelper.processFormRequestAfterController(OAQueryHelper.java:1292)
    at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processFormRequest(OAWebBeanHelper.java:851)
    at oracle.apps.fnd.framework.webui.OAWebBeanContainerHelper.processFormRequest(OAWebBeanContainerHelper.java:385)
    at oracle.apps.fnd.framework.webui.OAQueryHelper.processFormRequest(OAQueryHelper.java:1029)
    at oracle.apps.fnd.framework.webui.beans.layout.OAStackLayoutBean.processFormRequest(OAStackLayoutBean.java:370)
    at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processFormRequestChildren(OAWebBeanHelper.java:1031)
    at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processFormRequestChildren(OAWebBeanHelper.java:997)
    at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processFormRequest(OAWebBeanHelper.java:852)
    at oracle.apps.fnd.framework.webui.OAWebBeanContainerHelper.processFormRequest(OAWebBeanContainerHelper.java:385)
    at oracle.apps.fnd.framework.webui.beans.layout.OAStackLayoutBean.processFormRequest(OAStackLayoutBean.java:370)
    at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processFormRequestChildren(OAWebBeanHelper.java:1031)
    at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processFormRequestChildren(OAWebBeanHelper.java:997)
    at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processFormRequest(OAWebBeanHelper.java:852)
    at oracle.apps.fnd.framework.webui.OAWebBeanContainerHelper.processFormRequest(OAWebBeanContainerHelper.java:385)
    at oracle.apps.fnd.framework.webui.OAPageLayoutHelper.processFormRequest(OAPageLayoutHelper.java:1205)
    at oracle.apps.fnd.framework.webui.beans.layout.OAPageLayoutBean.processFormRequest(OAPageLayoutBean.java:1579)
    at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processFormRequestChildren(OAWebBeanHelper.java:1031)
    at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processFormRequestChildren(OAWebBeanHelper.java:997)
    at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processFormRequest(OAWebBeanHelper.java:852)
    at oracle.apps.fnd.framework.webui.OAWebBeanContainerHelper.processFormRequest(OAWebBeanContainerHelper.java:385)
    at oracle.apps.fnd.framework.webui.beans.form.OAFormBean.processFormRequest(OAFormBean.java:395)
    at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processFormRequestChildren(OAWebBeanHelper.java:1031)
    at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processFormRequestChildren(OAWebBeanHelper.java:997)
    at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processFormRequest(OAWebBeanHelper.java:852)
    at oracle.apps.fnd.framework.webui.OAWebBeanContainerHelper.processFormRequest(OAWebBeanContainerHelper.java:385)
    at oracle.apps.fnd.framework.webui.beans.OABodyBean.processFormRequest(OABodyBean.java:363)
    at oracle.apps.fnd.framework.webui.OAPageBean.processFormRequest(OAPageBean.java:2974)
    at oracle.apps.fnd.framework.webui.OAPageBean.preparePage(OAPageBean.java:1875)
    at oracle.apps.fnd.framework.webui.OAPageBean.preparePage(OAPageBean.java:543)
    at oracle.apps.fnd.framework.webui.OAPageBean.preparePage(OAPageBean.java:431)
    in OA. jspService(_OA.java:212)
    at com.orionserver.http.OrionHttpJspPage.service(OrionHttpJspPage.java:59)
    at oracle.jsp.runtimev2.JspPageTable.service(JspPageTable.java:379)
    at oracle.jsp.runtimev2.JspServlet.internalService(JspServlet.java:594)
    at oracle.jsp.runtimev2.JspServlet.service(JspServlet.java:518)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
    at com.evermind.server.http.ResourceFilterChain.doFilter(ResourceFilterChain.java:64)
    at oracle.apps.jtf.base.session.ReleaseResFilter.doFilter(ReleaseResFilter.java:26)
    at com.evermind.server.http.EvermindFilterChain.doFilter(EvermindFilterChain.java:15)
    at oracle.apps.fnd.security.AppsServletFilter.doFilter(AppsServletFilter.java:318)
    at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:621)
    at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:370)
    at com.evermind.server.http.HttpRequestHandler.doProcessRequest(HttpRequestHandler.java:871)
    at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:453)
    at com.evermind.server.http.AJPRequestHandler.run(AJPRequestHandler.java:313)
    at com.evermind.server.http.AJPRequestHandler.run(AJPRequestHandler.java:199)
    to oracle.oc4j.network.ServerSocketReadHandler$ SafeRunnable.run (ServerSocketReadHandler.java:260)
    to com.evermind.util.ReleasableResourcePooledExecutor$ MyWorker.run (ReleasableResourcePooledExecutor.java:303)
    at java.lang.Thread.run(Thread.java:619)
    java.sql.SQLDataException: ORA-01843: not one month valid

    at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:439)
    at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:395)
    at oracle.jdbc.driver.T4C8Oall.processError(T4C8Oall.java:802)
    at oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:436)
    at oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java:186)
    at oracle.jdbc.driver.T4C8Oall.doOALL(T4C8Oall.java:521)
    at oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.java:205)
    at oracle.jdbc.driver.T4CPreparedStatement.executeForDescribe(T4CPreparedStatement.java:861)
    at oracle.jdbc.driver.OracleStatement.executeMaybeDescribe(OracleStatement.java:1145)
    at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1267)
    at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:3449)
    at oracle.jdbc.driver.OraclePreparedStatement.executeQuery(OraclePreparedStatement.java:3493)
    at oracle.jdbc.driver.OraclePreparedStatementWrapper.executeQuery(OraclePreparedStatementWrapper.java:1491)
    at oracle.jbo.server.QueryCollection.buildResultSet(QueryCollection.java:860)
    at oracle.jbo.server.QueryCollection.executeQuery(QueryCollection.java:669)
    at oracle.jbo.server.ViewObjectImpl.executeQueryForCollection(ViewObjectImpl.java:3723)
    at oracle.jbo.server.OAJboViewObjectImpl.executeQueryForCollection (unknown Source)
    at oracle.apps.fnd.framework.server.OAViewObjectImpl.executeQueryForCollection(OAViewObjectImpl.java:4560)
    at oracle.jbo.server.ViewRowSetImpl.execute(ViewRowSetImpl.java:743)
    at oracle.jbo.server.ViewRowSetImpl.executeQueryForMasters(ViewRowSetImpl.java:892)
    at oracle.jbo.server.ViewRowSetImpl.executeQueryForMode(ViewRowSetImpl.java:806)
    at oracle.jbo.server.ViewRowSetImpl.executeQuery(ViewRowSetImpl.java:800)
    at oracle.jbo.server.ViewObjectImpl.executeQuery(ViewObjectImpl.java:3643)
    at oracle.apps.fnd.framework.server.OAViewObjectImpl.executeQuery(OAViewObjectImpl.java:439)
    at oracle.apps.fnd.framework.server.OAViewObjectImpl.initQuery(OAViewObjectImpl.java:743)
    at oracle.apps.fnd.framework.webui.OAWebBeanHelper.setCriteriaOnVO(OAWebBeanHelper.java:2334)
    at oracle.apps.fnd.framework.webui.OAQueryHelper.handleSubmitButton(OAQueryHelper.java:2871)
    at oracle.apps.fnd.framework.webui.OAQueryHelper.processFormRequestAfterController(OAQueryHelper.java:1292)
    at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processFormRequest(OAWebBeanHelper.java:851)
    at oracle.apps.fnd.framework.webui.OAWebBeanContainerHelper.processFormRequest(OAWebBeanContainerHelper.java:385)
    at oracle.apps.fnd.framework.webui.OAQueryHelper.processFormRequest(OAQueryHelper.java:1029)
    at oracle.apps.fnd.framework.webui.beans.layout.OAStackLayoutBean.processFormRequest(OAStackLayoutBean.java:370)
    at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processFormRequestChildren(OAWebBeanHelper.java:1031)
    at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processFormRequestChildren(OAWebBeanHelper.java:997)
    at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processFormRequest(OAWebBeanHelper.java:852)
    at oracle.apps.fnd.framework.webui.OAWebBeanContainerHelper.processFormRequest(OAWebBeanContainerHelper.java:385)
    at oracle.apps.fnd.framework.webui.beans.layout.OAStackLayoutBean.processFormRequest(OAStackLayoutBean.java:370)
    at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processFormRequestChildren(OAWebBeanHelper.java:1031)
    at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processFormRequestChildren(OAWebBeanHelper.java:997)
    at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processFormRequest(OAWebBeanHelper.java:852)
    at oracle.apps.fnd.framework.webui.OAWebBeanContainerHelper.processFormRequest(OAWebBeanContainerHelper.java:385)
    at oracle.apps.fnd.framework.webui.OAPageLayoutHelper.processFormRequest(OAPageLayoutHelper.java:1205)
    at oracle.apps.fnd.framework.webui.beans.layout.OAPageLayoutBean.processFormRequest(OAPageLayoutBean.java:1579)
    at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processFormRequestChildren(OAWebBeanHelper.java:1031)
    at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processFormRequestChildren(OAWebBeanHelper.java:997)
    at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processFormRequest(OAWebBeanHelper.java:852)
    at oracle.apps.fnd.framework.webui.OAWebBeanContainerHelper.processFormRequest(OAWebBeanContainerHelper.java:385)
    at oracle.apps.fnd.framework.webui.beans.form.OAFormBean.processFormRequest(OAFormBean.java:395)
    at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processFormRequestChildren(OAWebBeanHelper.java:1031)
    at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processFormRequestChildren(OAWebBeanHelper.java:997)
    at oracle.apps.fnd.framework.webui.OAWebBeanHelper.processFormRequest(OAWebBeanHelper.java:852)
    at oracle.apps.fnd.framework.webui.OAWebBeanContainerHelper.processFormRequest(OAWebBeanContainerHelper.java:385)
    at oracle.apps.fnd.framework.webui.beans.OABodyBean.processFormRequest(OABodyBean.java:363)
    at oracle.apps.fnd.framework.webui.OAPageBean.processFormRequest(OAPageBean.java:2974)
    at oracle.apps.fnd.framework.webui.OAPageBean.preparePage(OAPageBean.java:1875)
    at oracle.apps.fnd.framework.webui.OAPageBean.preparePage(OAPageBean.java:543)
    at oracle.apps.fnd.framework.webui.OAPageBean.preparePage(OAPageBean.java:431)
    in OA. jspService(_OA.java:212)
    at com.orionserver.http.OrionHttpJspPage.service(OrionHttpJspPage.java:59)
    at oracle.jsp.runtimev2.JspPageTable.service(JspPageTable.java:379)
    at oracle.jsp.runtimev2.JspServlet.internalService(JspServlet.java:594)
    at oracle.jsp.runtimev2.JspServlet.service(JspServlet.java:518)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
    at com.evermind.server.http.ResourceFilterChain.doFilter(ResourceFilterChain.java:64)
    at oracle.apps.jtf.base.session.ReleaseResFilter.doFilter(ReleaseResFilter.java:26)
    at com.evermind.server.http.EvermindFilterChain.doFilter(EvermindFilterChain.java:15)
    at oracle.apps.fnd.security.AppsServletFilter.doFilter(AppsServletFilter.java:318)
    at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:621)
    at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:370)
    at com.evermind.server.http.HttpRequestHandler.doProcessRequest(HttpRequestHandler.java:871)
    at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:453)
    at com.evermind.server.http.AJPRequestHandler.run(AJPRequestHandler.java:313)
    at com.evermind.server.http.AJPRequestHandler.run(AJPRequestHandler.java:199)
    to oracle.oc4j.network.ServerSocketReadHandler$ SafeRunnable.run (ServerSocketReadHandler.java:260)
    to com.evermind.util.ReleasableResourcePooledExecutor$ MyWorker.run (ReleasableResourcePooledExecutor.java:303)
    at java.lang.Thread.run(Thread.java:619)

    java.sql.SQLDataException: ORA-01843: not one month valid

    Check the date format in THE CSXXX_CS_EMPLOYEE_LIST_V and make sure it is correct (or convert you it correctly).

    OERR: ORA 1843 a month not valid [19167.1 ID]

    Thank you
    Hussein

  • ORA-01843 not one month valid

    Hello

    I am trying to execute the sql and getting error ORA-01843 not valid for months to find the records that fall into the slot provided.

    SELECT ZIP_cde FROM T_ZIP_CODE where ZIP_CDE_END_DTE = 12/31/9999 ';

    Can you get it someone please let me know if something is wrong.

    Thank you!

    You must use to_date() with a suitable mask date or a date - literal example

    Select to_date (' 31/12/9999 ',' mm/dd/yyyy'), dates' 9999-12-31 to double;

  • Query Builder session parameters as a resolve to ORA-01843 (not a month valid)

    Hi all! I am new to Oracle and RDBMS, sorry for a fake question.
    I'm doing a few queries to a tutorial (10 g XE) database with Query request Builder Express 2.1000039.
    I ask the column with id, order date and order status. in a column of the date as a condition command 'where' I've wrote:
     >= to_date('23-JUN-2006', 'DD-MON-RRRR') 
    and got an error "ORA-01843: not one month valid."

    Then I edited the line filter condition:
     >= to_date('23-JUN-2006', 'DD-MON-RRRR', 'NLS_DATE_LANGUAGE = american') 
    and got a decent result, BUT resulting table date format DD-MM-RR.

    So, here are a few questions:
    1. can I change settings of session (for example
    alter session set NLS_DATE_FORMAT = 'DD-MON-RRRR'
    ) so, to use it in the query designer, before you generate a request itself and do not write "NLS_DATE_LANGUAGE = american' whenever I am inserting data to a field of date data type?"
    2. I wonder why resulting table date format is "DD-MM-RRRR. How can I get a data exactly in a date format 'DD-MON-RRRR', how I am specifying in a query?

    My operating system is Windows 7 Home Basic Edition, NLS_DATE_FORMAT is DD-MON-YYYY in 2 cases, the register and, respectively, in the environment variable.

    SQL * Plus displays all tables in query mentionted correctly, corresponding to an "ALTER SESSION...". PARAMETERS.

    Hope for your help, guys. Thanks for the replies!

    >
    Can I change "Application Builder-> Application-> change security attributes" without creating applications?
    >

    No you need to create an application, and as I said application-level settings determine the application only, is not a solution. Furthermore, I'm not sure that this property is available in your version of the Apex.

    I tried to change the session using SQL commandsand then I went back to the Query Builder, but it doesn't change anything, it seems different sessions are used to connect to the database.

    Yes, I'm sorry, but I have no solution for you, maybe there is a way to change this somewhere in the admin part, but I have no rights admin here and I can't test anything.

    I hope that a few experts hops on the thread ;)

  • ORA-01843: not a valid month - no dates on the form

    When I submit a form I get the error "ORA-01843: not one month valid." I've now removed all the date of the form fields, and there is no triggers or constraints on the table concerning the date fields, so I'm at a loss on how to solve this problem. Any help much appreciated.

    Edited by: Waggers April 11, 2012 03:38

    in lspq? a default value? in a select with to_date?

  • ORA-01843: not valid month... you can help!

    Guys,
    Please help me with this query error... I can't find anything wrong with subparts...

    SELECT SUBPARTITION_NAME, TO_DATE (SUBSTR (SUBPARTITION_NAME-9), 'DD-MON-RR')
    OF ALL_TAB_SUBPARTITIONS
    WHERE TABLE_NAME = CP_FACT'
    AND TO_DATE (SUBSTR (SUBPARTITION_NAME-9), 'DD-MON-RR') < SYSDATE;

    *
    ERROR on line 4:
    ORA-01843: not one month valid

    SQL > SELECT * OF nls_session_parameters parameter WHERE = 'NLS_DATE_FORMAT;

    PARAMETER
    --------------------------------------------------------------------------------
    VALUE
    --------------------------------------------------------------------------------
    NLS_DATE_FORMAT
    DD-MON-RR


    Thank you.. Thank you!!!

    You can't assume order in which predicates are listed in the WHERE clause in the order they are applied. Subpartitions of the other tables on the assumption that all subparts of table CP_FACT not have 'DD-MON-RR' in the end, may not be. Therefore, if the condition TO_DATE (SUBSTR (SUBPARTITION_NAME-9), 'DD-MON-RR')< sysdate="" is="" evaluated="" first="" (which="" is="" most="" likely="" what="" happened="" in="" your="" case)="" it="" will="" fail.="">

    SELECT  SUBPARTITION_NAME,
            TO_DATE(SUBSTR(SUBPARTITION_NAME, -9),'DD-MON-RR')
      FROM  (
             SELECT  ROWNUM,
                     SUBPARTITION_NAME
               FROM  ALL_TAB_SUBPARTITIONS
               WHERE TABLE_NAME=CP_FACT'
            )
      WHERE TO_DATE(SUBSTR(SUBPARTITION_NAME, -9),'DD-MON-RR') < SYSDATE
    /
    

    SY.

  • ORA-01843: not a valid month in sql loader

    Hello. I am trying to insert data at the time of the date column type and send it a message ORA-01843: not one month valid.

    My setup of ctl as follows:

    (EDT) 1 ' TO_DATE (SUBSTR (: (EDT) 1, 1, 19), "yyyy-mm-dd hh24:mi:ss"), "

    Nature of the data as follows:

    19:43:52.0000000

    Any help.

    Concerning

    Irfan

    SQL > select TO_TIMESTAMP ('19:43:52.0000000 ','hh24:mi:ss.ff ') of double;

    TO_TIMESTAMP ('19:43:52.0000000)

    --------------------------------------------------------------------------------

    01.11.13 19:43:52.000000000

    SQL >

    ----

    Ramin Hashimzade

  • problem of format of date - ORA-01843: not a valid month beaked call OCIStmtExecu

    Hello
    I have a problem with the date format
    in QAS I report with only 2 columns:
    col1.date_test: casting (2999-12-31' AS DATE)
    col2. Year

    the result is:
    CAST ('31-12-2999' AS DATE )  year
    31-12-2999                    2011
    When I run exactly the same on the PRD, I get the message:
    message: ORA-01843: not a valid month in the OIC call OCIStmtExecute.

    Obi version: 10.1.3.2.1 the two QAS/PRD
    DB version: 10.2.0.5.0 the two QAS/PRD

    I checked the following and they are exatly the same QAS and PRD: (checked via SQLPLUS)
    NLS_Database_Parameters DD-MON-RR
    v$ nls_parameters DD-MON-RR


    the repostiory is the same, we moved to QAS for PRD;
    the cast_supported is checked (but I checked the NQSConfig.INI anyway, the settings are identical in the two EPS)

    IM out of ideas, what else can that check to see what the difference is in the configuration that causes the error above;
    I have already followed the advice and checked what was possible, but it seems good;
    http://gerardnico.com/wiki/dat/OBIEE/cast_as_date

    ID appreciate advice;
    Thank you
    Rgds

    Hello
    I wasn't sure on the exact reason, but what we were doing we is alligned the format of the date in the following way:

    NQSConfig:

    DATE_TIME_DISPLAY_FORMAT = "dd-mm-yyyy hh ';
    DATE_DISPLAY_FORMAT = "yyyy-mm-dd";


    kmsgLanguageName_en
    en
    locale: en
    ,
    .
    ,
    -
    :
    AM
    PM
    SS tt
    AAAA-MM-JJ - we fixed this line
    DD MMMM yyyy
    -#
    DMY
    victory: 0409
    fake
    .............

    AAAA-MM-JJ - we fixed this line

    in the repository, we have added the following command:
    Log on to:
    ALTER SESSION SET NLS_DATE_FORMAT = "DD-MM-YYYY

    Now we know all the problems with dates;
    I hope he stays this way :-)
    Rgds

  • Double Dash Mark in string causes ORA-01008: not all variables bound errors

    Hello
    I have the following text in a process of PL/SQL in APEX page: v_student_name: =: P31_LAST_NAME | ',' | : P31_FIRST_NAME | » --'|| : P31_STUDENT_ID;
    I'm under APEX 3.0.1 on Oracle Database 10 g Express Edition.

    When I use a dashboard, I don't get an error. When I use a double dash, I get the error: ORA-01008: not all variables related errors. Any suggestions on how to solve this problem would be greatly appreciated. Thanks in advance!

    Sharon

    Sharon-

    As the option - is a comment in PL/SQL, you can need to insert these characters through the function chr(). Have you tried:

     v_student_name := :P31_LAST_NAME||', '||:P31_FIRST_NAME||chr(45)||chr(45)||:P31_STUDENT_ID;
    

    Austin

  • How to value for the default text setting is all

    Hey all

    I have a requirement they want a parameter on the article number,

    This parameter as text and field as the default value as

    I tried everything but nothing doesn't work, is it possible? If so please guide me what I'm missing or hurt

    Thank you

    Yes, this can be done.

    You must handle this in your SQL code. Here is an example

    Approach 1:

    -----------

    Definition of parameter in your data model: P_ITEM_NUM

    Data type of parameter/type: text/string

    The parameter default value: white

    In the SQL: where ITEM_NUMBER = NVL(:P_ITEM_NUM,ITEM_NUMBER) - ITEM_NUMBER here is your database column

    At runtime, if no value is given for article number parameter - the NVL function will consider the incoming value with null and it will run the report for all values of report item.

    Approach 2:

    -----------

    Everything is the same as 1, except the default approach.

    The default parameter value: all the

    In this case, your SQL must DECODE statement

    Where ITEM_NUMBER = DECODE(:P_ITEM_NUM,'All',ITEM_NUMBER,:P_ITEM_NUM) - it's like an IF statement

  • Incorrect value for analog output USB-6008. Cannot not out more than 3V

    I use USB-6008 analog IO, but the analog output (AO0 or AO1) can go up to 3 - 3.5V. The output can follow accurately the value of 0 to 2, 5V, but then he start the values adjusted trolling and not can not spend you 3.5V exponentially.

    The only strange thing the entire circuit is that I connected all patterns (analog source and I/O 5V) between them, but I don't see what affect the output.

    Kind regards

    ISSOKO

    Thanks for the quick reply Ana.

    It is not the Council NOR, nor the Council of motorization. Apparently, the interface for motor control (motor spirit C: solutions - cubed.com), load the analog output. A tension following actually isolated op amp output USB-6008 and solved the problem.

    Best regards, ISSOKO

  • Get ORA-01843 not a mistake of month valid

    I'm having the reservation Board. In this table departure date, column start time and both are varchar2 columns. Values are like that in these columns,

    Departure date = 21/05/15

    Start time = 22:55

    I am train to select this table records that have departure between sysdate + 30Hrs and sysdate + 31Hrs.

    Here's my query:

    Select *.

    of xx_booking

    where to_date(depdate ||) ' ' || deptime, "DD/MM/YY HH24:MI:SS") between sysdate + 30/24 and sysdate + 31/24

    Even I tried to select using relational operators (< and >). For less than ' < ' it gives result but for more than ' > ' it gives 'a month not valid' error

    Which gives the result:

    Select *.

    of xx_booking

    where to_date(depdate ||) ' ' || deptime, "DD/MM/YY HH24:MI:SS") < sysdate + 37/24

    Gives the error:

    Select *.

    of xx_booking

    where to_date(depdate ||) ' ' || deptime, "DD/MM/YY HH24:MI:SS") > sysdate + 37/24

    So I'm confused why this query works like this. Please show little light to solve this problem.

    Hi all

    I found the problem... it's because of a few empty spaces in these columns. After TRIM it works fine.

    Thank you

    PERI

  • ORA-01843:

    CREATE TABLE TEST (T_DATE TIMESTAMP)

    ALTER TABLE TEST ALTER T_DATE DEFAULT SYSDATE

    INSERT INTO TEST VALUES (SYSDATE) T_DATE

    SELECT TO_DATE(V_DATE,'mm/dd/yyyy HH24:mi') from TEST

    ORA-01843: not one month valid

    Try this.

    -First run this and check the format
    SQL > select * from nls_database_parameters;

    Like: -.
    NLS_TIMESTAMP_FORMAT-DD-MON-RR HH.MI. SSXFF AM

    -You get timestamp data type, both to_timestamp to use to convert the static string to timestamp

    SQL > select TO_timestamp (T_DATE,' DD-MON-RR HH.MI.) SSXFF AM') test time_on

    Like: -.
    TIME_ON
    ----------------------------
    24 JUNE 13 11.20.42.000000 AM

    -Then use to_char out of desire:-
    Select to_char (to_timestamp (T_DATE,' DD-MON-RR HH.MI.)) SSXFF AM'), "dd/mm/yyyy HH24") test time_on

    Like: -.
    TIME_ON
    ----------------
    24/06/2013-11:20

    Thank you!

  • Management of ORA-01843

    Hi all

    I am writing a stored procedure and I am getting the following in the error report if the data in the tables is not correct:

    Error report:

    ORA-01843: not one month valid

    ORA-06512: at "SSM_OWNER. MIGRATE_DATA", line 8

    ORA-06512: at line 1

    01843 00000 - "not one month valid."

    * Cause:

    * Action:

    I wanted to provide the user with a more explicit message can be as "Please check the date format."

    I watched the two EXCEPTION_INIT and RAISE_APPLICATION_ERROR.

    Both need the error number, how can I do the same using the error code?

    Thanks in advance

    Praveen

    SQL > declare
    2 date of dt;
    3. start
    4 dt: = to_date('99/1/2013','mm/dd/yyyy');
    5 end;
    6.
    declare
    *
    ERROR on line 1:
    ORA-01843: not one month valid
    ORA-06512: at line 4 level

    SQL > declare
    2 not_a_valid_month exception;
    pragma 3 exception_init (not_a_valid_month,-01843);
    4 date of dt;
    5. start
    6 dt: = to_date('99/1/2013','mm/dd/yyyy');
    7 exception
    8 when not_a_valid_month
    9. can
    10 raise_application_error (-20500, 'Please check the date format');
    11 end;
    12.
    declare
    *
    ERROR on line 1:
    ORA-20500: Please check the date format
    ORA-06512: at line 10

    SQL >

    SY.

Maybe you are looking for

  • Status bar at the bottom of the screen will not allow

    Status bar at the bottom of the screen will not even when I try to activate with display > verified status bar This has happened Each time Firefox opened

  • E8350 - no internet when connected to bridge modem

    Hello I put the modem from my ISP in Bridge mode and plugged into the internet port of my E8350. Then, I connected the E8350 to my PC to configure WiFi settings. It turns out that all is well... except that there is no internet connection. Strange th

  • Compatibility between Inspiron 15R N5010 (5010-7015) and black WD ^ 2 (WD1001X06XDTL) double disc 2.5 "

    Hello I own a Dell Inspiron 15R N5010 (5010-7015) / i5 / 4 GB RAM / 320 HARD drive and I am interested in the internal hard drive of the upgrade of the series dual drive WD (Black ^ 2 - WD1001X06XDTL). The system supports SATA2 and a variety of capab

  • Change IP of a device of the ACS

    What will break if I change the IP address of the device TO 4.2? I need a few of them to assume the IP addresses of our existing production boxes. Apart from the re-manual setting the IP SE through the console, reconfigure the AAA/replication server

  • Configurar como VPN para NEt virtua?

    Estou com um modem technicolor conexao com TC7110.b net virtua e Microsoft Connect I can not VPN para o trabalho access. APOs um tempo, ocorre o erro 800. Durante a conexao, travado fica na autenticacao do usuario. any hint of como liberar o trafego?