Xpages 如何将Xpage与3个数据源绑定

Xpages 如何将Xpage与3个数据源绑定,xpages,Xpages,我的数据库中有3个表格(A、B、C)。我使用LocNumber作为将它们绑定在一起的唯一键(尽管我当然可以使用UNID) 我想向用户展示一个包含这三种表单的Xpage。我已经为a、B和C创建了一个CC,并将它们绑定到数据源中的正确形式 “保存”按钮执行验证,然后保存数据源 但是如何将页面上的三个cc“绑定”在一起?在表格B中,我有一个LocNumber字段。我是否在cc B中为LocNumber创建一个字段,将其绑定到表单上的LocNumber,但使用表单1上UNID的值加载它 这是一个必须解决

我的数据库中有3个表格(A、B、C)。我使用LocNumber作为将它们绑定在一起的唯一键(尽管我当然可以使用UNID)

我想向用户展示一个包含这三种表单的Xpage。我已经为a、B和C创建了一个CC,并将它们绑定到数据源中的正确形式

“保存”按钮执行验证,然后保存数据源

但是如何将页面上的三个cc“绑定”在一起?在表格B中,我有一个LocNumber字段。我是否在cc B中为LocNumber创建一个字段,将其绑定到表单上的LocNumber,但使用表单1上UNID的值加载它

这是一个必须解决的问题


顺便说一句,我选择这样的块,因为我将有一个单独的组来编辑每一组字段(在表格a,B,C中)

我也更喜欢使用像@Unique()这样的uniqueKey。尽管在XPages中,您需要将其包装在session.evaluate()中,以获得旧式风格

无论如何,首先你可能想重新考虑一下。不需要在3个表单/文档之间进行分组。您可以使用一个来完成所有操作,并将每个块放入一个面板中,然后计算只读属性,这样对于没有编辑器访问权限的人来说是真的,而对于有编辑器访问权限的人来说是假的。这真的很有效


用于自定义控件。我会将密钥作为自定义属性传入。然后在每个文档中使用它来计算文档,以便您可以使用它。SSJS到getdocumentbykey类型的东西。

尽管这并不能直接回答您的问题:当使用多个数据源(无论您在哪里定义它们)时,请记住将页面本身的“忽略请求参数”属性设置为“true”。否则,您的数据源将被视为“一个”,而不是单独的数据源。啊,对了。我做到了这一点,我不再有代表/保存冲突。当我保存Xpage时,第二个表单被保存,但我还不知道如何将它绑定到第一个表单。我的密钥是LocNumber,我在第二个cc中发现了它,但是我如何从第一个数据源加载loc?您只需引用第一个数据源的名称和项(如dsTwo.getDocument().replaceItemValue(“itemName”,dsOne.getDocument().getItemValue(“itemName”)读取(用于存储到第二个数据源)的值这篇文章给出了一个概述:然而,我的数据源并不“知道”关于彼此。我可以将它们提升到Xpage级别,但似乎每个CC都应该有一个数据源和一个表单。你认为如何?David,我知道你对@Unique或通过自定义属性传递的说法,但我认为你是最正确的,我应该重新考虑它。我在从使用中获取需求方面确实遇到了困难rs,以及谁拥有什么数据。在我的情况下,不需要单独的表单和文档。为了概念清晰,我可以制作子表单。我只需要制作面板并将它们粘贴在Xpage中。谢谢……没问题。很乐意提供帮助。是的,我建议先再看一看,看看有什么意义。我为一个文档做了多个自定义控件t/xpage只用于在块中工作-在这种情况下,我将数据源保留在xpage本身上。我认为,Panel readOnly属性非常适合您的需要。此外,我还制作了一个视频,介绍了与其他文档相关的可能很有趣的内容。