xpages将UNID传递给其他字段

时间:2014-06-19 08:31:36

标签: xpages

我有一个输入字段:

   <xp:inputText value="#{Cdoc.txt_UNID}" id="txt_UNID1"></xp:inputText>

字段txt_UNID的计算值为@Text(@DocumentUniqueID)

我注意到即使我只是撰写包含文档内容的xpage,inputText已经包含一些UNID,即使未保存包含doc内容的xpage。

有一个按钮显示包含字段的对话框。我希望此字段的值为txt_UNID

Cdoc.save(); // I must save first the Cdoc datasource ?
getComponent('exampleDialog').show()

该字段的代码:

<xp:inputText value="#{Pdoc.txt_CompanieUNID}"
id="txt_CompanieUNID1" defaultValue="#{Cdoc.txt_UNID}">
</xp:inputText>

感谢您的时间。

2 个答案:

答案 0 :(得分:1)

如果您的问题是您是否必须先保存文件才能获得UNID,我的回答是肯定的。在我的测试中,UNID已从新文档更改为刚刚保存的文档。所以,如果当前文档是新的,请在获取UNID之前保存。至少它是一个NotesXspDocument。

我通常也会使用JavaScript,

cdoc.getDocument().getUniversalId();

否则,我不确定你在问什么。

答案 1 :(得分:0)

如果PDoc在与CDoc相同的层次结构中可用,例如两者都是分配给XPage / Custom Control或同一Panel的数据源,您可以使用PDoc.replaceItemValue(&#34; txt_CompanieUNID&#34;,Cdoc.getDocument()。getUniversalID())在保存时更新PDoc。 setValue也应该有效。那你就不需要默认值了。

它只是帮助将所有业务逻辑保持在一个位置。您还可以检查是否已设置值。