有没有办法防止 powerbuilder 中的无效行范围

Is there a way to prevent invalid row range in powerbuilder

有没有办法防止 powerbuilder 中的行范围无效。

IF  dw_lista_campanias.GetSelectedRow(0) > 0 AND    dw_lista_campanias.object.est_camp[dw_lista_campanias.GetRow()] = 'EO020' THEN

dw_lista_campanias.object.est_camp索引为0时抛出异常。

Invalid row range at line 193 in ue_opcion4 event of object w_os0210_mantenimiento_campanya.

我假设有一个检索。例如。 ll_rowsrtn = this.retrieve()

If ll_rowsrtn > 0 then 
    //the getselectedrow script
End if

所以命令不会执行除非数据窗口有大于0行

您可以将此语句放在 TRY/CATCH 块中,但我认为将 GetRow() 捕获到变量中并测试它是否为 0(这是一个相当正常的状态)会更容易) 在使用它访问数据之前。

祝你好运。

更改您的代码如下:

如果 dw_lista_campanias.ROWCOUNT() > 0 那么
IF dw_lista_campanias.GetSelectedRow(0) > 0 AND dw_lista_campanias.object.est_camp[dw_lista_campanias.GetRow()] = 'EO020' THEN
//在这里输入你的代码

如果

结束

如果

结束

快乐编码(来自 pb 开发者:))