发现要利用的 SAP 事务字段的组件标识符
Discovering component identifiers of a SAP transaction' fields to utilize
通过大量谷歌搜索,我设法连接到 SAP 并从 VBA 代码打开一个事务。这不是问题的一部分,所以我不会在这里包含它。
我的问题如下:现在我已经打开了事务,我想从我的代码中将值输入到事务的字段中。
我假设这是通过类似于以下的代码完成的:
session.findById("wnd[0]/usr/ctxtVendor").Text
然而,/usr/ctxtVendor部分显然是错误的。如果我没理解错的话,这在公司基础上是非常不同的。
一种解决方案是使用 "SAP Script Recording & Playback" 实用程序生成 VBA 代码并提取变量名。不幸的是,我无权使用此功能,而且我不会很快使用,所以这不是一个选项。
编辑:I found a second solution:但我似乎无法访问它。
是否有其他方法可以发现此交易和其他交易的标识符?
感谢您的阅读,希望您能提供答案。
抱歉,我为您提供了错误的 VBA 脚本化名称信息。使您的 window 成为这样的变量:
Dim window As SAPFEWSELib.GuiFrameWindow
Set window = session.FindById("wnd[0]")
然后在 VBEditor 中转到 Locals window,然后在此处查看:
对我来说,/usr 区域是 window 子项的第 5 项,打开它并查找列出的所有字段。您可以使用提供的路径。例如。下面我打开了第 2 项,即帐号,您会看到 Id 属性.
中需要的字符串
然后你就这样使用它:
window.FindById("usr/ctxtRACCT-LOW").Text = "A123456"
通过大量谷歌搜索,我设法连接到 SAP 并从 VBA 代码打开一个事务。这不是问题的一部分,所以我不会在这里包含它。
我的问题如下:现在我已经打开了事务,我想从我的代码中将值输入到事务的字段中。
我假设这是通过类似于以下的代码完成的:
session.findById("wnd[0]/usr/ctxtVendor").Text
然而,/usr/ctxtVendor部分显然是错误的。如果我没理解错的话,这在公司基础上是非常不同的。
一种解决方案是使用 "SAP Script Recording & Playback" 实用程序生成 VBA 代码并提取变量名。不幸的是,我无权使用此功能,而且我不会很快使用,所以这不是一个选项。
编辑:I found a second solution:但我似乎无法访问它。
是否有其他方法可以发现此交易和其他交易的标识符?
感谢您的阅读,希望您能提供答案。
抱歉,我为您提供了错误的 VBA 脚本化名称信息。使您的 window 成为这样的变量:
Dim window As SAPFEWSELib.GuiFrameWindow
Set window = session.FindById("wnd[0]")
然后在 VBEditor 中转到 Locals window,然后在此处查看:
对我来说,/usr 区域是 window 子项的第 5 项,打开它并查找列出的所有字段。您可以使用提供的路径。例如。下面我打开了第 2 项,即帐号,您会看到 Id 属性.
中需要的字符串然后你就这样使用它:
window.FindById("usr/ctxtRACCT-LOW").Text = "A123456"