如何管理SAP登录,对象和连接?

2020-08-27 06:50发布

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


大家好,

首先,我要感谢您对这个社区的支持。 我发现并迷恋了很多我的激情;)爱的片段:)

我有第二个问题:

如何管理SAPLOGON和其他连接?

我的意思是,如果SAP已经打开,则脚本不必再次将其打开。

如果您还可以给我一些示例,我们如何在VBA中管理对象,我将非常高兴:)

这是我编写的代码(只是开始)。

Sub SAP_OpenSessionFromLogon()'开始SAP流程

Dim SapGui

昏暗的应用

暗淡连接

昏暗会话

昏暗的WSHShell

Shell" C:\ Program Files(x86)\ SAP \ FrontEnd \ SAPgui \ saplogon.exe",vbNormalFocus

设置WSHShell = CreateObject(" WScript.Shell")

直到WSHShell.AppActivate(" SAP Logon")

Application.Wait Now + TimeValue(" 0:00:01")

循环

设置WSHShell =否

设置SapGui = GetObject(" SAPGUI")

设置应用= SapGui.GetScriptingEngine

设置连接= Applic.OpenConnection(" PE3-KC Production EMEA ERP ECC6",是)

设置会话= connection.Children(0)

session.FindById(" wnd [0]")。最大化

如果不是IsObject(App),则

设置SapGuiAuto = GetObject(" SAPGUI")

设置应用= SapGuiAuto.GetScriptingEngine

如果结束

如果不是IsObject(连接),则

设置连接= App.Children(0)

如果结束

如果不是IsObject(session),则

设置会话= connection.Children(0)

如果结束

如果IsObject(WScript),则WScript.ConnectObject会话,"在" WScript.ConnectObject应用程序,"在"

如果结束

session.FindById(" wnd [0]")。SendVKey 0

......................

....................

该脚本正在运行,但是如果已经打开,我将避免再次运行它。

也许带有" If not is .."或athor代码,我可以避免。

能请你帮我吗?

谢谢。

对不起,我的英语语言,如果脚本中有错误,但是6个月前我开始使用编码(VBA),现在我开始使用SAPgui。 :(

托木克

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


大家好,

首先,我要感谢您对这个社区的支持。 我发现并迷恋了很多我的激情;)爱的片段:)

我有第二个问题:

如何管理SAPLOGON和其他连接?

我的意思是,如果SAP已经打开,则脚本不必再次将其打开。

如果您还可以给我一些示例,我们如何在VBA中管理对象,我将非常高兴:)

这是我编写的代码(只是开始)。

Sub SAP_OpenSessionFromLogon()'开始SAP流程

Dim SapGui

昏暗的应用

暗淡连接

昏暗会话

昏暗的WSHShell

Shell" C:\ Program Files(x86)\ SAP \ FrontEnd \ SAPgui \ saplogon.exe",vbNormalFocus

设置WSHShell = CreateObject(" WScript.Shell")

直到WSHShell.AppActivate(" SAP Logon")

Application.Wait Now + TimeValue(" 0:00:01")

循环

设置WSHShell =否

设置SapGui = GetObject(" SAPGUI")

设置应用= SapGui.GetScriptingEngine

设置连接= Applic.OpenConnection(" PE3-KC Production EMEA ERP ECC6",是)

设置会话= connection.Children(0)

session.FindById(" wnd [0]")。最大化

如果不是IsObject(App),则

设置SapGuiAuto = GetObject(" SAPGUI")

设置应用= SapGuiAuto.GetScriptingEngine

如果结束

如果不是IsObject(连接),则

设置连接= App.Children(0)

如果结束

如果不是IsObject(session),则

设置会话= connection.Children(0)

如果结束

如果IsObject(WScript),则WScript.ConnectObject会话,"在" WScript.ConnectObject应用程序,"在"

如果结束

session.FindById(" wnd [0]")。SendVKey 0

......................

....................

该脚本正在运行,但是如果已经打开,我将避免再次运行它。

也许带有" If not is .."或athor代码,我可以避免。

能请你帮我吗?

谢谢。

对不起,我的英语语言,如果脚本中有错误,但是6个月前我开始使用编码(VBA),现在我开始使用SAPgui。 :(

托木克

付费偷看设置
发送
1条回答
何必丶何苦呢
1楼-- · 2020-08-27 07:43

嗨Tomek。

您可以对.BAT或.CMD使用简单的尝试,这将非常容易使用。

命令" start sapshcut -system = SID -client =(客户编号)-desc ="登录面板中的SAP系统说明" -user =用户名-pw =密码-maxgui"

此外,任何开关都可以获取帮助"启动SAPSHCUT/help"

致谢

SS

一周热门 更多>