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

    Error during call sqlldr - ODI version 11.1.1.3 and java 1.6.0_30

    948255
      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 11.1.1.5, Except the file is mapped to local drive.
      Now below is the error message from ODI 11.1.1.3, 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')
           try:
                for line in f.readlines():
                     if line.find("MAXIMUM ERROR COUNT EXCEEDED")>=0 :
                          raise "MAXIMUM ERROR COUNT EXCEEDED", "See %s for details" % logfile
           finally:
                f.close()



      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"""
      oracle_sid=''
      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:
      reportnbrows()

      what am i missing?

      Thanks.
      Shri.