0

我正在使用 SAP GUI Scripting API 编写代码来自动化 SAP GUI for Windows 中的一些任务,但我需要隐藏屏幕。

有没有这样的visible = false选择?

如果没有,我该怎么办?

上下文:SAP GUI Scripting API 在 Microsoft Outlook 中从 VBA 调用,但对任何通过 SAP GUI Scripting API 自动化 SAP GUI 的语言都有效。

4

5 回答 5

4

谢谢你们。

我想通了,只需要添加

.findById("wnd[0]").iconify

再次感谢

于 2015-01-29T15:49:58.223 回答
0

根据我的经验,我知道运行 SAP 脚本的两种选择,第一种是使用 WScript.Shell,我知道这种方法的信息太多,尝试搜索一下

Sub test()
    Dim Wsh
    Set Wsh = CreateObject("WScript.Shell").Run("C:\Users\USERNAME\Desktop\Script1.vbs")
End Sub

此方法允许在您的 PC 中启动应用程序,例如:

Sub test2()
    Dim Wsh As Object
    Set Wsh = CreateObject("WScript.Shell").Exec("calc.exe")
End Sub

运行脚本的第二个,是在没有 *.vbs 文件的情况下从 MS Office 中的脚本启动代码,如下例所示

Option Explicit

Public SapGuiAuto As Object
Public ApplicationSAP As Object
Public Connection As Object
Public Session As Object

Sub start()
Set SapGuiAuto = GetObject("SAPGUI")
Set ApplicationSAP = SapGuiAuto.GetScriptingEngine
Set Connection = ApplicationSAP.Children(0)
Set Session = Connection.Children(0)

Session.findById("wnd[0]").maximize             ' max main SAP window
Session.findById("wnd[0]/tbar[0]/okcd").Text = "/n" & "IW33"    'Transaction code
Session.findById("wnd[0]").sendVKey 0               'start transaction

End Sub

我希望它能帮助您进一步搜索所需的信息

于 2015-01-29T02:17:28.827 回答
0

您可以尝试以下操作: session.TestToolMode = 1

问候, ScriptMan

于 2015-02-03T07:19:17.707 回答
0

您可以从任何应用程序自动化 Outlook,而无需显示 Outlook UI。有关详细信息,请参阅如何从另一个程序自动化 Outlook

此外,您可能会发现使用自动化发送 Microsoft Outlook 消息文章很有帮助。

于 2015-01-27T12:11:51.183 回答
0

OpenConnection您可以通过连接字符串的末尾或OpenConnectionByConnectionString使用连接字符串的末尾连接到您的服务器/INPLACE

正在恢复...而不是使用类似的东西conn = scripting_engine.Children( 0 ),尝试使用类似的东西:

conn = scripting_engine.OpenConnection( 'MYSAPCONNECTION /INPLACE' )
session = conn.Children( 0 )

顺便说一句...在链接中查看更多信息。

于 2016-02-25T17:55:12.787 回答