从文本文件向VBScript添加变量

时间:2015-02-20 00:24:54

标签: vbscript

早安男女孩,

我正在尝试创建一个VBscript来自动化SAPGUI中的一个函数

但我不确定如何让VBS读取文本文件重新连接%USERID%然后循环脚本。

目前我有:

If Not IsObject(application) Then
    Set SapGuiAuto  = GetObject("SAPGUI")
    Set application = SapGuiAuto.GetScriptingEngine
End If
If Not IsObject(connection) Then
    Set connection = application.Children(0)
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
session.findById("wnd[0]/usr/radSYSCEN").select
session.findById("wnd[0]/usr/chkORG").selected = true
session.findById("wnd[0]/usr/txtUSRID").text = "%USERID%"
session.findById("wnd[0]/usr/chkORG").setFocus
session.findById("wnd[0]/tbar[1]/btn[8]").press
session.findById("wnd[0]").sendVKey 3
session.findById("wnd[0]").sendVKey 3
session.findById("wnd[0]").sendVKey 3
session.findById("wnd[0]").sendVKey 3

哪个可行?如果我输入一个%userID%。

任何援助都会很棒。

P.S。 VBS的总菜鸟。 - 仅使用它SAP GUI可轻松集成。

2 个答案:

答案 0 :(得分:0)

您可以尝试以下操作:

'From the shell:
set wshell = createobject("Wscript.Shell")
Set WshEnv = Wshell.Environment("PROCESS")
session.findById("wnd[0]/usr/txtUSRID").text = wshEnv("USERID")

此致 ScriptMan

答案 1 :(得分:0)

获取用户ID您可以使用WScript:

Dim objNetwork
Set objNetwork = CreateObject("WScript.Network")
MsgBox objNetwork.UserName

或来自shell:

Set wshShell = WScript.CreateObject( "WScript.Shell" )
strUserName = wshShell.ExpandEnvironmentStrings( "%USERNAME%" )

或来自环境变量(它应该可以工作,但是当我测试它是错误的!):

Set WshShell = CreateObject("WScript.Shell")
Set WshEnv = WshShell.Environment
MsgBox "USERNAME=" & WshEnv.Item("USERNAME")

请注意,所有这些都取决于所使用的操作系统。