Oracle APEX:将主键指定为交互式网格ROWID,在SQL查询中使用并选择交互式网格ROWID



序言——我是个新手。

我的任务是建立一个内部组织使用的应用程序。我们有一个包含患者数据的数据库,并与医院电子病历系统接口。输入EMR的患者数据通过接口发送给我们,以更新我们数据库中的患者档案。部分比赛需要人工干预。

  1. 在暂存模式内的表中接收消息
  2. 尝试与现有患者匹配
  3. 如果只有"部分匹配",则状态设置为"不匹配">

我想:

  1. 显示所有"不匹配"状态记录的摘要。我想使用交互式网格来选择单个记录
  2. 将交互式网格行的ROWID设置为暂存表中记录的相应主键
  3. 使用所选的交互式网格ROWID(用户在交互式网格中选择特定记录(在暂存表中选择相应记录的匹配主键,以创建SQL查询,在我们的数据库中查找潜在的匹配项。潜在的匹配项显示在第二个表中

问题:

  1. 如何将Interactive网格的rowID设置为临时表的唯一键列?--一些研究表明我需要一个隐藏的项目,这是正确的吗
  2. 如何访问已在交互网格中选择的行ID以用于SQL查询

我衷心感谢

因此,您的问题有点令人困惑,但据我所知。您正在从表a中获取一些数据,试图将其与表B进行匹配。如果匹配,则与我们无关。如果找不到匹配,则需要显示它,以便手动匹配。

在apex中,为了更新表,您需要选择更新数据的主键。这通常是表中的一列,但也可以是rowid(只需像其他列一样将其包含在SQL中(。

根据我对你情况的了解,我想给你提些什么建议。

以rowid作为主键,在交互式网格中显示不匹配的行。然后,您需要有一个匹配的列,如果这些条目已经有某种键,您尝试匹配但失败了,请显示该键。并且让该列成为PopupLOV,这样用户就可以编辑该字段中的值,并将其设置为适当的匹配。有一件事你需要小心。您正在编辑一个Unique密钥,甚至可能是Primary密钥,您可能会在此处遇到冲突。即使你只在LOV中显示不匹配的数据,你仍然可以让用户编辑多行,并试图将两行匹配到相同的值,这将失败,并出现一个对用户来说不是特别友好的错误。

相关内容

  • 没有找到相关文章

最新更新