【问题标题】:How to get execution details in Oracle Data Integrator如何在 Oracle Data Integrator 中获取执行详细信息
【发布时间】:2014-01-22 17:27:49
【问题描述】:

我编写了一个代码,使用过程在 Jython 中发送电子邮件。现在我已将我的程序放入一个包中,并且正在运行该包。

但是,我需要得到的是包名,包执行的开始时间和包执行的结束时间,并通过电子邮件发送。

我尝试使用 getPrevStepLog 但这不起作用

我现在的程序代码:

import smtplib
import string
BODY = string.join((
"From: %s" % 'test@gmail.com',
"To: %s" % 'admin@odi.com',
"Subject: %s" % 'Mail From ODI',
"",
'This is a mail from ODI Studio. Thank You.Previous step 
'<%=odiRef.getPrevStepLog("STEP_NAME")%>' executed in    
'<%=odiRef.getPrevStepLog("DURATION")%>' seconds'
 ), "\r\n")
 sender = smtplib.SMTP('smtp.gmail.com',587)
 sender.set_debuglevel(1)
 sender.ehlo()
 sender.starttls()
 sender.ehlo()
 sender.login('test', 'test123')
 sender.sendmail('test@gmail.com',['admin@odi.com'],BODY)
 sender.close()

【问题讨论】:

    标签: oracle email oracle-data-integrator


    【解决方案1】:

    你试过用getSession函数吗?

    public java.lang.String getSession(java.lang.String pPropertyName)
    
    pPropertyName
    
    SESS_NO = internal session ID
    SESS_NAME = session name
    SCEN_VERSION = version of current scenario
    CONTEXT_NAME = name of the execution context
    CONTEXT_CODE = code of the execution context
    AGENT_NAME = name of the physical agent
    SESS_BEG = date and hour of the begining of the session
    USER_NAME = Oracle Data Integrator user executing the session
    

    示例:获取当前会话名称

    <%=odiRef.getSession("SESS_NAME")%>
    

    【讨论】:

      猜你喜欢
      • 2021-12-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-09-24
      • 2016-09-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多