ODI脚本使用较多参数时出现的问题_Tomcat, WebLogic及J2EE讨论区_Weblogic技术|Tuxedo技术|中间件技术|Oracle论坛|JAVA论坛|Linux/Unix技术|hadoop论坛_联动北方技术论坛  
网站首页 | 关于我们 | 服务中心 | 经验交流 | 公司荣誉 | 成功案例 | 合作伙伴 | 联系我们 |
联动北方-国内领先的云技术服务提供商
»  游客             当前位置:  论坛首页 »  自由讨论区 »  Tomcat, WebLogic及J2EE讨论区 »
总帖数
1
每页帖数
101/1页1
返回列表
0
发起投票  发起投票 发新帖子
查看: 9006 | 回复: 0   主题: ODI脚本使用较多参数时出现的问题        下一篇 
yang.wang
注册用户
等级:中士
经验:217
发帖:82
精华:0
注册:2011-12-28
状态:离线
发送短消息息给yang.wang 加好友    发送短消息息给yang.wang 发消息
发表于: IP:您无权察看 2011-12-28 10:01:55 | [全部帖] [楼主帖] 楼主

ODI脚本使用较多参数时出现的问题

Applies to: 
Oracle Data Integrator - Version: 3.2.03.01
This problem can occur on any platform.


症状

在一些特定环境下需要启动特定的ODI 带大量参数的Shell 脚本

例如,当通过startscen.bat (.sh)脚本运行一个Scenario,参数传递的数量是被限制的

这种情况下,如果在命令行中设置多于6变量,Scenario执行启动不报错,但只有前6个变量被正确传入并更新。

有通过脚步在启动时可以一次传入大量的参数的方法么?

原因

在早期ODI版本中,通过标准的startscen.bat (.sh)脚本,命令行只接受9个参数。

l   参数1是Scenario的名称;

l   参数2是Scenario版本;

l   参数3是执行上下文;

follwing六个参数(第四至第九名),用于:

l   设置Session的名称,

l   设置跟踪级别,

l   设置日志级别,

l   分配的ODI变量值。

这意味着,如果多于9 个参数,刚需要对startscen.bat (.sh)脚本进行定制。

解决方案

对于运行于Microsoft Windows上的任意ODI版本

由于操作系统原因,它是不可能在命令行上使用超过9个参数('%1','%2',... ...“%9”)。

作为变通,你可以如下修改"startscen.bat"

if "%1" == "-a" goto add
%ODI_JAVA_EXE% ... ODI_START_SCEN %1 %2 %3 %4 %5 %6 %7 %8 %9
goto end
:add
set ARG1=%1
shift
set ARG2=%1
shift
...
set ARGn=%1
shift
%ODI_JAVA_EXE% ... ODI_START_SCEN %ARG1% %ARG2% ... %ARGn% %1 %2 %3 %4 %5 %6 %7 %8 %9
:end


请注意,在这种情况下,第一个参数应该是“- a”




赞(0)    操作        顶端 
总帖数
1
每页帖数
101/1页1
返回列表
发新帖子
请输入验证码: 点击刷新验证码
您需要登录后才可以回帖 登录 | 注册
技术讨论