You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Progress 4GL中获取可更新动态Browse组件所有行的Row ID?

使用Buffer Handle 获取动态Browse所有行的Row ID

当然可以通过buffer handle获取可更新动态Browse组件所有行的Row ID,具体实现步骤和代码示例如下:

  • 获取动态Browse对应的buffer handle
    通过browse-handle:buffer-handle即可获取绑定到目标Browse的buffer句柄。

  • 遍历所有行并提取Row ID
    先将Browse定位到第一行,之后循环遍历每一行,用ROWID(buffer-handle)获取当前行的Row ID,直到遍历结束。

示例代码:

DEFINE VARIABLE hBrowse AS HANDLE NO-UNDO.
DEFINE VARIABLE hBuffer AS HANDLE NO-UNDO.
DEFINE VARIABLE cRowID AS CHARACTER NO-UNDO.

// 假设hBrowse是你的动态Browse句柄
hBuffer = hBrowse:BUFFER-HANDLE.

// 定位到Browse第一行
hBrowse:FIRST-ROW().

DO WHILE hBrowse:QUERY-OFF-END = FALSE:
  // 获取当前行Row ID并转为字符串
  cRowID = STRING(ROWID(hBuffer)).
  DISPLAY cRowID.
  
  // 移动到下一行
  hBrowse:NEXT-ROW().
END.
  • 注意事项
    • 确保Browse绑定的buffer是可更新状态,否则可能无法正确获取Row ID。
    • 若Browse基于多表连接,需明确指定要获取Row ID的目标buffer,避免歧义。

内容的提问来源于stack exchange,提问作者Abhinit Kumar Das

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.12 19:57:02