如何从 perl 脚本登录 OBIEE 服务器凭据 [关闭]
Posted
技术标签:
【中文标题】如何从 perl 脚本登录 OBIEE 服务器凭据 [关闭]【英文标题】:How to login OBIEE Server credentials from perl script [closed] 【发布时间】:2012-12-03 07:04:29 【问题描述】:我需要创建一个从报告中生成 txt 文件的过程。我需要登录到 Obiee Business Intelignce,提供凭据并生成具有相应列名的报告,并将数据加载到文本文件中。我不知道 OBIEE 或 Perl。我用谷歌搜索并找到了一些相关的网址
http://gerardnico.com/wiki/dat/obiee/catalog_manager
我需要使用 Perl 脚本使用以下凭据登录到 Obiee Tool。如何使用 Perl 登录服务器?
到目前为止我尝试过的是:
use strict;
use warnings;
错误:
“-输出文件”丢失或损坏
【问题讨论】:
阅读错误信息:第一部分表示您定义了两次$request_name
:删除两个my
定义之一或将它们合并为一个。它还说$request_column
未定义但在@call
中使用。此外,标量变量(以$
开头的变量)可能只包含一个字符串(不是两个,如“Column”“Created Time”)。我建议您从简单的事情开始,例如尝试只获取一列。如果可行,您可以扩展您的请求。
嗨,是的,我发现了该错误并更改为 request_Column sclar 变量。但我还是发现了错误,请检查更新后的帖子
【参考方案1】:
我不知道这是什么或它做了什么,但从您找到的 URL 的文档中,看起来 API 允许这样的查询:
catalogmanager -online http://localhost:9704/analytics/saw.dll
-login Administrator -pwd Administrator
-cmd report -of c:\output.csv -delimiter \",\"
-type Requests \"Request Name\" \"Request Criteria Column\"
如果我没看错,那么你应该在这个电话中提供:
正确的服务器,即,如果目录管理器或任何未在本地计算机上运行的东西,请将 `localhost` 替换为您的主机名 作为 `-login` 和 `-pwd` 参数的用户名和密码 作为 `-of` 参数的输出文件名(可能是 CSV 文件) 应该提供某种请求结构来代替“请求名称”和“请求标准列”你会在 Perl 中这样的脚本中使用它:
use strict;
use warnings;
# change this to your URL
my $address = 'http://localhost:9704/analytics/saw.dll';
my $username = 'ADMIN'; # change this to your username
my $pwd = 'PASSWORD'; # change this to your password
my $outputfile = 'PATH_TO_OUTPUT_FILE'; # change this to your output file
my $delimiter = ',';
my $request_name = 'REQUEST_NAME'; # adjust this
my $request_column = 'REQUEST_COLUMN'; # and this
my @call = qq( catalogmanager -online $address -login $username
-pwd $password -cmd report -of $outputfile -delimiter $delimiter
-type Requests $request_name $request_column );
# system() returns true if the call was not successful,
# we can make use of this and let the program die if something went wrong
system(@call) and die("Could not exec @call: $!\n");
它应该希望将输出文件写入您指定的路径。这个文件你可以解析,但那是另一回事。
【讨论】:
嗨我如何访问 -type 的列。我有多个需要加载的列。非常感谢您的帮助 您好,mpe,使用您的代码,我已对其进行了修改并运行了该文件,但它没有执行 catalogmanager -online $address -login $username -pwd $password -cmd report -of $outputfile - delimiter $delimiter -type Requests $request_name $request_column 它抛出一些错误 正如我所说,我对这个程序及其 API 几乎一无所知,我只是从您链接到的页面中了解到这一点。关于列:您可能需要在$request_column
中提供这些。关于“一些错误”:请更具体。
您好,mpe,请查看我已更新完整文件的帖子和收到的错误。
我的错字:qw()
不做变量插值。以上是关于如何从 perl 脚本登录 OBIEE 服务器凭据 [关闭]的主要内容,如果未能解决你的问题,请参考以下文章
如何配置和传输 MySQL(使用登录凭据)从 XAMPP 本地网络服务器到基于 Hostgator/Linux 的托管服务器?