3

也许有人可以帮助我理解,我做错了什么,因为我被卡住了。一般来说,我有一个进程,我有一个 .vbs 文件,它触发宏文件,它连接到 Hyperion 并刷新床单。

出于某种原因,当我触发该宏时,它总是要求我输入凭据,即使我已经声明了它们(这当然会破坏自动化)。

目前我有这样的代码 - 两个声明:

Declare Function HypMenuVRefreshAll Lib "HsAddin.dll" () As Long
Declare Function HypConnect Lib "HsAddin" (ByVal vtSheetName As Variant, ByVal vtUserName As Variant, ByVal vtPassword As Variant, ByVal vtFriendlyName As Variant) As Long

然后刷新发生在这样的部分:

Public Sub Connect_OBIEE()

Dim wsSheet As Worksheet


For Each wsSheet In ActiveWorkbook.Worksheets
    x = HypConnect(wsSheet.Name, "<login>", "<password>", "<name of connection>")
Next wsSheet

lngReturn = HypMenuVRefreshAll()

End Sub

我怎样才能避免连接弹出窗口,它再次询问我的凭据,如果我要输入,当然会正常工作,然后一切都按我的需要进行。

所以一般点在这里,我的触发宏的vbs文件应该自动输入所有内容,刷新文件,保存并关闭,没有这些弹出窗口。

有什么建议么?

4

1 回答 1

0

我使用您的代码作为我的基础并遇到了与您相同的问题。我通过更改我的服务器名称来修复。我使用了以下语法:

HypConnect("Sheet1", "UserName", "Password", " http://hostname:19000/aps/SmartView|servername|Sample|Basic ")

然后,我不得不将我的 URL 从 SmartView 选项中找到的 URL 更改为出现在提示您输入密码的对话框中的那个,但略有不同

“servername|Sample|Basic”应该与 Smart View 面板上列出的用于您最近使用的连接的语法相同

于 2019-04-24T21:09:37.937 回答