0

IW31

我已经录制了一个用于订购零件的自动化脚本。它工作得很好,但是,当我将它传递给另一个人时,它失败了。

我发现他的长文本窗口保持折叠状态,而我保持打开状态。(我原以为它们会是同一个控件,但不是。)

那么,如何测试显示哪个长文本窗口呢?

这是折叠的长文本窗口,

Session.findById("wnd[0]/usr/subSUB_ALL:SAPLCOIH:3001/ssubSUB_LEVEL:SAPLCOIH:1100/subSUB_KOPF:SAPLCOIH:1102/txtCAUFVD-KTEXT").Text = "BENCHSTOCK"

虽然这是扩展的长文本控件。

Session.findById("wnd[0]/usr/subSUB_ALL:SAPLCOIH:3001/ssubSUB_LEVEL:SAPLCOIH:1100/subSUB_KOPF:SAPLCOIH:1102/subSUB_TEXT:SAPLCOIH:1103/cntlLTEXT/shell").Text = "BENCHSTOCK"

我尝试创建一个变量来测试它,但无论选择如何,它都会测试 True。

设置 ShortComment = Session.findById("wnd[0]/usr/subSUB_ALL:SAPLCOIH:3001/ssubSUB_LEVEL:SAPLCOIH:1100/subSUB_KOPF:SAPLCOIH:1102/txtCAUFVD-KTEXT")

'Session.findById("wnd[0]/usr/subSUB_ALL:SAPLCOIH:3001/ssubSUB_LEVEL:SAPLCOIH:1100/subSUB_KOPF:SAPLCOIH:1102/txtCAUFVD-KTEXT").Text = "测试"

If IsObject(ShortComment) Then Session.findById("wnd[0]/usr/subSUB_ALL:SAPLCOIH:3001/ssubSUB_LEVEL:SAPLCOIH:1100/subSUB_KOPF:SAPLCOIH:1102/txtCAUFVD-KTEXT").Text = "BENCHSTOCK"

别的

Session.findById("wnd[0]/usr/subSUB_ALL:SAPLCOIH:3001/ssubSUB_LEVEL:SAPLCOIH:1100/subSUB_KOPF:SAPLCOIH:1102/subSUB_TEXT:SAPLCOIH:1103/cntlLTEXT/shell").Text = "BENCHSTOCK"

万一

提前致谢!

4

1 回答 1

0

好的,我找到了解决方案。这是与我的示例代码不同的方法。我在这里找到了提示

文本字段具有可变属性。如果长文本字段被扩展,则常规字段属性 CHANGEABLE=False。

通过测试这个属性,我可以确定长字段是否被扩展。

于 2018-10-26T19:30:51.647 回答