首页 > 解决方案 > SAP Tree GetAbapImage 为不同的图标返回相同的值,如何解决?

问题描述

我有 3 种不同的图标来代表记录的状态。我需要以编程方式(使用 SAP 脚本)读取行并了解它们的状态: 在此处输入图像描述

该方法为错误(红色)和成功(绿色)状态GetAbapImage(key, name)返回相同值的问题。@5对于未处理的,它返回 value @B

演示我的方法的示例代码片段如下:

Dim container
Set container = session.findById("wnd[0]/usr/cntlMAIN_CONTAINER/shellcont/shell/shellcont[0]/shell/shellcont[2]/shell")
WScript.echo TypeName(container)        'returns: ISapTreeTarget
WScript.echo container.GetTreeType()    'returns: 2
WScript.echo container.GetAbapImage("        230", "STATUS")        'returns: @B
WScript.echo container.GetAbapImage("        235", "STATUS")        'returns: @5
WScript.echo container.GetAbapImage("        243", "STATUS")        'returns: @5

其中 ID 230、235 和 243 分别是上面屏幕截图中显示的三行的 ID。

非常欢迎关于如何更正确地获取行状态的建议!

标签: abapsap-gui

解决方案


作为一个小建议,我只能列出 SAP GUI 脚本环境中的一个解决方案。

例如:

myICON = container.getcellvalue (0, "%_ICON")
if left(myICON,3) = "@5C" then msgbox "red"
if left(myICON,3) = "@5B" then msgbox "green"
if left(myICON,3) = "@BZ" then msgbox "other"

问候, ScriptMan


推荐阅读