Skip to Main Content

Analytics Software

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

ODI File writing Issue

Milan Kanti Paul-OracleMar 10 2017 — edited Mar 10 2017

Hello Guys,

In an ODI mapping I am reading from 2 DB tables and writing to a file with LKM SQL to FILE.

However, during execution getting below error. Any idea?

Code Generated:

=================

INSERT INTO "D:\Project_Docs\BankMed\ODI\Dev\WorkSpace.MIB_DE_HEADERFILE"

  VALUES

  ( 

    :BRANCH_CODE  ,

    :SOURCE_CODE  ,

    :BATCH_NO  ,

    :BATCH_DESC  ,

    :USER_ID  ,

    :BALANCING  ,

    :UPLOAD_STAT  ,

    :AUTH_STAT  ,

    :RECORD_STAT  ,

    :ONCE_AUTH

  )

/*$$SNPS_START_KEYSNP$CRDWG_TABLESNP$CRTABLE_NAME=MIB_DE_HEADERFILESNP$CRLOAD_FILE=D:\Project_Docs\BankMed\ODI\Dev\WorkSpace/MIB.txtSNP$CRFILE_FORMAT=DSNP$CRFILE_SEP_FIELD=0x002cSNP$CRFILE_SEP_LINE=0x000ASNP$CRFILE_FIRST_ROW=0SNP$CRFILE_ENC_FIELD=SNP$CRFILE_DEC_SEP=SNP$CRSNP$CRDWG_COLSNP$CRCOL_NAME=BRANCH_CODESNP$CRTYPE_NAME=STRINGSNP$CRORDER=1SNP$CRLENGTH=9SNP$CRPRECISION=9SNP$CRACTION_ON_ERROR=NULLSNP$CRSNP$CRDWG_COLSNP$CRCOL_NAME=SOURCE_CODESNP$CRTYPE_NAME=STRINGSNP$CRORDER=2SNP$CRLENGTH=15SNP$CRPRECISION=15SNP$CRACTION_ON_ERROR=NULLSNP$CRSNP$CRDWG_COLSNP$CRCOL_NAME=BATCH_NOSNP$CRTYPE_NAME=STRINGSNP$CRORDER=3SNP$CRLENGTH=4SNP$CRPRECISION=4SNP$CRACTION_ON_ERROR=NULLSNP$CRSNP$CRDWG_COLSNP$CRCOL_NAME=BATCH_DESCSNP$CRTYPE_NAME=STRINGSNP$CRORDER=4SNP$CRLENGTH=105SNP$CRPRECISION=105SNP$CRACTION_ON_ERROR=NULLSNP$CRSNP$CRDWG_COLSNP$CRCOL_NAME=USER_IDSNP$CRTYPE_NAME=STRINGSNP$CRORDER=5SNP$CRLENGTH=12SNP$CRPRECISION=12SNP$CRACTION_ON_ERROR=NULLSNP$CRSNP$CRDWG_COLSNP$CRCOL_NAME=BALANCINGSNP$CRTYPE_NAME=STRINGSNP$CRORDER=6SNP$CRLENGTH=1SNP$CRPRECISION=1SNP$CRACTION_ON_ERROR=NULLSNP$CRSNP$CRDWG_COLSNP$CRCOL_NAME=UPLOAD_STATSNP$CRTYPE_NAME=STRINGSNP$CRORDER=7SNP$CRLENGTH=1SNP$CRPRECISION=1SNP$CRACTION_ON_ERROR=NULLSNP$CRSNP$CRDWG_COLSNP$CRCOL_NAME=AUTH_STATSNP$CRTYPE_NAME=STRINGSNP$CRORDER=8SNP$CRLENGTH=1SNP$CRPRECISION=1SNP$CRACTION_ON_ERROR=NULLSNP$CRSNP$CRDWG_COLSNP$CRCOL_NAME=RECORD_STATSNP$CRTYPE_NAME=STRINGSNP$CRORDER=9SNP$CRLENGTH=1SNP$CRPRECISION=1SNP$CRACTION_ON_ERROR=NULLSNP$CRSNP$CRDWG_COLSNP$CRCOL_NAME=ONCE_AUTHSNP$CRTYPE_NAME=STRINGSNP$CRORDER=10SNP$CRLENGTH=1SNP$CRPRECISION=1SNP$CRACTION_ON_ERROR=NULLSNP$CR$$SNPS_END_KEY*/

 

Error:

=================

oracle.odi.runtime.agent.exception.ExecutionEngineException: java.sql.SQLException: ODI-40480: Malformed INSERT statement.

  at oracle.odi.runtime.agent.execution.sql.SQLCommand.doInitializeStatement(SQLCommand.java:118)

  at oracle.odi.runtime.agent.execution.sql.SQLCommand.getStatement(SQLCommand.java:147)

  at oracle.odi.runtime.agent.execution.sql.SQLCommand.getBatchCommand(SQLCommand.java:389)

  at oracle.odi.runtime.agent.execution.sql.SQLCommand.processRecord(SQLCommand.java:167)

  at oracle.odi.runtime.agent.execution.sql.SQLCommand.processRecord(SQLCommand.java:37)

  at oracle.odi.runtime.agent.execution.Executor.performAction(Executor.java:444)

  at oracle.odi.runtime.agent.execution.Executor.handleDataMovementTask(Executor.java:334)

  at oracle.odi.runtime.agent.execution.DataMovementTaskExecutionHandler.handleTask(DataMovementTaskExecutionHandler.java:51)

  at oracle.odi.runtime.agent.execution.SessionTask.processTask(SessionTask.java:206)

  at oracle.odi.runtime.agent.execution.SessionTask.doExecuteTask(SessionTask.java:117)

  at oracle.odi.runtime.agent.execution.AbstractSessionTask.execute(AbstractSessionTask.java:886)

  at oracle.odi.runtime.agent.execution.SessionExecutor$SerialTrain.runTasks(SessionExecutor.java:2225)

  at oracle.odi.runtime.agent.execution.SessionExecutor.executeSession(SessionExecutor.java:610)

  at oracle.odi.runtime.agent.processor.TaskExecutorAgentRequestProcessor$1.doAction(TaskExecutorAgentRequestProcessor.java:718)

  at oracle.odi.runtime.agent.processor.TaskExecutorAgentRequestProcessor$1.doAction(TaskExecutorAgentRequestProcessor.java:611)

  at oracle.odi.core.persistence.dwgobject.DwgObjectTemplate.execute(DwgObjectTemplate.java:203)

  at oracle.odi.runtime.agent.processor.TaskExecutorAgentRequestProcessor.doProcessStartAgentTask(TaskExecutorAgentRequestProcessor.java:800)

  at oracle.odi.runtime.agent.processor.impl.StartSessRequestProcessor.access$1400(StartSessRequestProcessor.java:74)

  at oracle.odi.runtime.agent.processor.impl.StartSessRequestProcessor$StartSessTask.doExecute(StartSessRequestProcessor.java:702)

  at oracle.odi.runtime.agent.processor.task.AgentTask.execute(AgentTask.java:180)

  at oracle.odi.runtime.agent.support.DefaultAgentTaskExecutor$2.run(DefaultAgentTaskExecutor.java:108)

  at java.lang.Thread.run(Thread.java:745)

Caused by: java.sql.SQLException: ODI-40480: Malformed INSERT statement.

  at com.sunopsis.jdbc.driver.file.SQLManager.buildInsertValues(SQLManager.java:132)

  at com.sunopsis.jdbc.driver.file.SQLManager.buildRowFromInsert(SQLManager.java:392)

  at com.sunopsis.jdbc.driver.file.FilePreparedStatement.buildGenericRow(FilePreparedStatement.java:75)

  at com.sunopsis.jdbc.driver.file.FilePreparedStatement.<init>(FilePreparedStatement.java:56)

  at com.sunopsis.jdbc.driver.file.FileConnection.prepareStatement(FileConnection.java:379)

  at sun.reflect.GeneratedMethodAccessor68.invoke(Unknown Source)

  at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

  at java.lang.reflect.Method.invoke(Method.java:498)

  at oracle.odi.core.datasource.dwgobject.support.OnConnectOnDisconnectDataSourceAdapter$OnDisconnectCommandExecutionHandler.invoke(OnConnectOnDisconnectDataSourceAdapter.java:231)

  at com.sun.proxy.$Proxy31.prepareStatement(Unknown Source)

  at sun.reflect.GeneratedMethodAccessor68.invoke(Unknown Source)

  at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

  at java.lang.reflect.Method.invoke(Method.java:498)

  at com.sunopsis.sql.SnpsConnection$ConnectionProxyInvocationHandler.invoke(SnpsConnection.java:143)

  at com.sun.proxy.$Proxy34.prepareStatement(Unknown Source)

  at oracle.odi.runtime.agent.execution.sql.SQLCommand.doInitializeStatement(SQLCommand.java:104)

  ... 21 more

Comments
Locked Post
New comments cannot be posted to this locked post.
Post Details
Locked on Apr 7 2017
Added on Mar 10 2017
1 comment
657 views