我从未从事过 PEGA 应用程序,但我从事过 Web 应用程序。
通常,根据在其中键入的内容关联或生成动态搜索结果的文本框与文本框的某些事件相关联,例如当焦点位于文本框时按下任何键时触发的 onkeydown 或当键为 onkeyup 时当焦点在文本框时释放
当触发此事件时,将进行后台 ajax 调用并为您动态填充结果。
使用 QTP 设置方法,它通常设置文本框的值,其中与控件关联的事件不会被触发。
为了触发这些事件,您可以使用以下方法(无论对您有帮助,您都可以尝试使用它)
1.尝试再次单击文本框,有时这在某些应用程序中也可以解决问题
Browser("Pega7").Page("CPMInteractionPortal").Frame("PegaGadget1Ifr").WebEdit("$PpyWorkPage$pCallBackDetails$_4").Set "India"
Browser("Pega7").Page("CPMInteractionPortal").Frame("PegaGadget1Ifr").WebEdit("$PpyWorkPage$pCallBackDetails$_4").Click
2.可以尝试使用QTP中的FireEvent方法
Browser("Pega7").Page("CPMInteractionPortal").Frame("PegaGadget1Ifr").WebEdit("$PpyWorkPage$pCallBackDetails$_4").Set "India"
Browser("Pega7").Page("CPMInteractionPortal").Frame("PegaGadget1Ifr").WebEdit("$PpyWorkPage$pCallBackDetails$_4").FireEvent "onclick"
注意 - 请尝试其他事件,如 onkeydown、onkeyup、onkeypress、onblur 等
3.您可以使用您必须首先创建一个shell对象的Sendkeys(如您的评论中所述)示例
Set WshShell = CreateObject("WScript.Shell")
Browser("Pega7").Page("CPMInteractionPortal").Frame("PegaGadget1Ifr").WebEdit("$PpyWorkPage$pCallBackDetails$_4").Set "India"
WshShell.SendKeys ""
注意 - 您也可以在 sendkeys 中键入文本而不是空白
让我们知道如果没有任何效果,我们可以尝试寻找其他解决方案。