扩展 SAP 树

问题描述

我正在使用 UFT (vbscript) 来自动化 SAP 和网页之间的流程。使用 SAP 事务 S_ALR_87013534,我在 UFT 中有一段代码,可以完全扩展树并提取与其中一个订单号关联的值:

set tree = SAPGuiSession("Session").SAPGuiWindow("Execute Drilldown Report").SAPGuiTree("TableTreeControl")
tree.OpenItemContextMenu "PRJ "&projNum,"PRJ "&projNum
tree.SelectMenuItemById "&EXPAND"
tree.SelectNode "PRJ "&projNum
colKey_plan1 = getColNameFromTitle(tree,"Plan 2--Overall")
rowContainingOrdNum = findBudget(tree,ordNum)
plannedProjectBudget = tree.Object.GetItemText(tree.Object.GetAllNodeKeys(rowContainingOrdNum(0)),colKey_plan1)

Function getColNameFromTitle(tree,title)
    set colNames = tree.Object.GetColumnNames
    For i = 1 To (colNames.length-1)
        selectedColTitle = tree.Object.GetColumnTitleFromName(colNames(i))
        If selectedColTitle = title Then
            getColNameFromTitle = colNames(i)
            Exit For
        End If
    Next
End Function

Function findBudget(tree,ordNum)
    rowContainingOrdNum = Array()
    Set columnNames = tree.Object.GetColumnNames()
    set columnKeys = tree.Object.GetColumnCol(columnNames(0))
    For i = 1 To (columnKeys.length-1)
        If InStr(columnKeys(i),ordNum)>0 Then
            AddItem rowContainingOrdNum,i
            Exit For
        End If
    Next
    findBudget = rowContainingOrdNum
End Function

Function AddItem(arr,val)
    ReDim Preserve arr(UBound(arr) + 1)
    arr(UBound(arr)) = val
    AddItem = arr
End Function

这很完美,但是当我使用不同的报告 S_ALR_87013543 时,它仍然被识别为树,但上面的代码不起作用,因为对象标题中没有 EXPAND 选项。我对 SAP 及其所有树以及如何使用自动化不太熟悉,因此感谢您提供任何指导或提示

左边是我需要展开的报告,右边是代码使用的报告:

enter image description here

enter image description here

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)