0

我在代码行获得会话计数为零:SAPActive.SapSession = (GuiSession)SAPActive.SapConnection.Sessions.Item(0); 谁能说说原因。

4

2 回答 2

2

这意味着您没有活动会话。建立连接后,会在其上建立会话,并且要建立连接,必须在服务器上启用脚本。手动检查其对实例的日志记录的最简单方法,然后按 Alt+F12 并检查“脚本录制和播放...”是否已启用,如果它变灰,则表示在服务器端禁用脚本。要激活它们,使用 tcode RZ11 将参数“sapgui/user_scripting”设置为 True。请记住,如果您希望参数在实例重新启动后保持这种状态,则必须使用 tcode RZ10 将其添加到配置文件中。

启用该参数后,使用以下代码:

If Not IsObject(application) Then
   Set SapGuiAuto  = GetObject("SAPGUI")
   Set application = SapGuiAuto.GetScriptingEngine
End If

If Not IsObject(connection) Then
	set connection= application.openconnection("SapGui connection Descrition here", True) 'error
End If
If Not IsObject(session) Then
   Set session    = connection.Children(0)
End If
If IsObject(WScript) Then
   WScript.ConnectObject session,     "on"
   WScript.ConnectObject application, "on"
End If

这将打开一个新连接,然后选择相应的会话供您使用。

于 2015-05-10T08:23:32.793 回答
1

您是否在 RZ11 中将参数: sapgui/user_srcipting 设置为 true ?

于 2013-08-08T09:16:33.227 回答