【问题标题】:Is there a way to prevent invalid row range in powerbuilder有没有办法防止 powerbuilder 中的无效行范围
【发布时间】:2015-04-21 19:45:28
【问题描述】:
有没有办法防止 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 时抛出异常。
对象 w_os0210_mantenimiento_campanya 的 ue_opcion4 事件中第 193 行的行范围无效。
【问题讨论】:
标签:
exception
powerbuilder
outofrangeexception
【解决方案1】:
您可以将此语句放在 TRY/CATCH 块中,但我认为将 GetRow() 捕获到变量中并在使用前测试它是否为 0(这是一个相当正常的状态)会更容易访问数据。
祝你好运。
【解决方案2】:
更改您的代码如下:
如果 dw_lista_campanias.ROWCOUNT() > 0 那么
如果 dw_lista_campanias.GetSelectedRow(0) > 0 AND dw_lista_campanias.object.est_camp[dw_lista_campanias.GetRow()] = 'EO020' 那么
//把你的代码放在这里
如果结束
如果结束
快乐的编码(来自 pb 开发者:))
【解决方案3】:
我会假设有一个检索。例如。 ll_rowsrtn = this.retrieve()。
If ll_rowsrtn > 0 then
//the getselectedrow script
End if
因此,除非数据窗口的行数大于 0,否则该命令不会执行