Orbeon:从不同的重复网格访问重复的网格项

Orbeon: Access repeated grid items from a different repeated grid

有 2 个重复的网格,r1(输入 ab)和 r2。在 r2 中,我想访问 r1 中的值。我可以通过将表单生成器中的计算值设置为 $r1 来访问网格的完整内容。但是,我只想要某些字段。当我使用 $a 时,我确实得到了 a 的值,但我总是得到第一次迭代。有什么方法可以在第二个网格的当前迭代中访问第一个网格的元素吗?像 $r1['a'][xxf:repeat-position()]"?

此处示例:http://demo.orbeon.com/demo/fr/orbeon/builder/edit/b4efb9f927f6a9b40876e4925d90c1740c868fe8

我将您示例的 $a$bxxf:repeat-position() 列中的表达式更改为 return 我认为您想要的:

这些表达式分别是:

  • let $i := count(../preceding-sibling::*) + 1 return $a[$i]
  • let $i := count(../preceding-sibling::*) + 1 return $b[$i]
  • count(../preceding-sibling::*) + 1

自 Orbeon Forms 2018.2 以来,同步网格变得更加容易。此功能将使将值从一个网格复制到另一个网格变得更加容易(如果需要,甚至可以双向复制),而且还可以使迭代次数保持同步。有关更多信息,请参阅页面 Synchronizing repeated content.