6 Replies Latest reply: Nov 16, 2012 7:36 AM by 948255 RSS

    Error during call sqlldr - ODI version and java 1.6.0_30

      Hey All,

      I have scroll thru forums for resolution of similar issue but no luck. Here is the problem this is working fine in ODI version, Except the file is mapped to local drive.
      Now below is the error message from ODI, Trying to use LKM File to Oracle(SQLLDR) and here is the error

      ODI-1226: Step LD_PARTNER_USING_SQLLDR fails after 1 attempt(s).
      ODI-1240: Flow LD_PARTNER_USING_SQLLDR fails while performing a Loading operation. This flow loads target table DRM_USER_PARTNER_NEW.
      Caused By: org.apache.bsf.BSFException: exception from Jython:
      Traceback (innermost last):
      File "<string>", line 33, in ?
      Load Error: See \\Cdpwa01a0600\e$\Hyperion\DRM\Loadfile/LD_USER_PARTNER.log for details

      here is the generated code from call sqlldr session task

      import java.lang.String
      import java.lang.Runtime as Runtime
      from jarray import array
      import java.io.File
      import os
      import re

      def reportnbrows():          
           f = open(r"\\Cdpwa01a0600\e$\Hyperion\DRM\Loadfile/LD_USER_PARTNER.log", 'r')
                for line in f.readlines():
                     if line.find("MAXIMUM ERROR COUNT EXCEEDED")>=0 :
                          raise "MAXIMUM ERROR COUNT EXCEEDED", "See %s for details" % logfile

      ctlfile = r"""\\Cdpwa01a0600\e$\Hyperion\DRM\Loadfile/LD_USER_PARTNER.ctl"""
      logfile = r"""\\Cdpwa01a0600\e$\Hyperion\DRM\Loadfile/LD_USER_PARTNER.log"""
      outfile = r"""\\Cdpwa01a0600\e$\Hyperion\DRM\Loadfile/LD_USER_PARTNER.out"""
      if len('d1odi1')>0: oracle_sid = '@'+'d1odi1'

      loadcmd = r"""D:\Oracle\product\11.2.0\client_1\bin\sqlldr 'MDM_STAGE/<@=snpRef.getInfo("DEST_PASS") @>%s' control='%s' log='%s' > "%s" """ % (oracle_sid,ctlfile, logfile, outfile)

      rc = os.system(loadcmd)

      if rc <> 0 and rc <> 2:
      raise "Load Error", "See %s for details" % logfile

      if rc==2:

      what am i missing?