【发布时间】:2021-08-10 11:43:11
【问题描述】:
我正在尝试将 NI 编号从 Access DB 输入到 Powerbuilder 应用程序中。 每当我尝试在我的应用程序中输入“AA123456A”时,UFT 都会将该值作为 123456 传递。
If f_GetAccessFieldValue("NINumber") <> "" Then
PbWindow("w_genapp_frame").PbWindow("Client Details").PbDataWindow("dw_ap010_03_02"). SetCellData "#1","custp_ni_code",f_GetAccessFieldValue("NINumber")
End If
Access 中的值肯定是作为字符串传入的。
这是我的应用程序的限制,还是有一种简单的方法可以解决这个问题,而无需拆分字符串并使用分隔变量输入值?
编辑:刚刚注意到即使单独发送信件(“AA”)也行不通。
【问题讨论】:
-
f_GetAccessFieldValue("NINumber")的值包含什么?在尝试传递到 Powerbuilder 应用程序之前,您是否确认预期结果来自f_GetAccessFieldValue("NINumber")? -
@user692942 它返回 AA123456(字符串)
-
那么,根据official documentation for
SetCellData(),SAPGuiGrid 中的单元格可能与您期望的不匹配 - “数据的可能值 取决于单元格。例如,复选框或单选按钮单元格的值可能是“ON”或“OFF”,或者可能仅限于组合框的可用值。” -
@user692942 这一定是 VB 脚本与我的应用程序或 PowerBuilder 交互的方式。我尝试使用 WshShell.SendKeys 发送“AA123456A”,效果很好。但我需要能够从数据库中传递这个值,所以发送密钥不好
-
尝试拆分它。尝试
.Selectcell "#1","custp_ni_code"和.type f_GetAccessFieldValue("NINumber")的组合
标签: automation vbscript powerbuilder hp-uft