我尝试并尝试一段时间来解析viewPanel
功能 - var
属性设置为rowData
。
根据表单名称,我想打开文档。 (以viewPanel
列出)以正常方式列入<xe:dialog>
控件。我确实发现了这个问题Xpages Dynamic dojo dialog control,我试图让它适用于我的情况。我想在<xe:dialog>
中打开的文档也会在对话框中创建。通过这个viewpanel,我想使用这个viewPanel控件显示/打开它们。
以下是onClick
列事件的代码:
var formName = rowData.getDocument().getItemValueString("Form");
var docUNID = rowData.getDocument().getUniversalID();
var href = facesContext.getExternalContext().getRequest().getContextPath();
var pe:NotesViewEntry = rowData
if ( formName == "fmCompanie") // in this case, it works OK.
{ href + "/doc.xsp?documentId=" + docUNID + "&action=openDocument"; }
else if ( formName == "fmPersContact" ) // hmm... Still trying...
{ viewScope.put("dlgDocUnid", pe.getUniversalID())
getComponent("exampleDialog").show(); }
因此,通过此事件,我尝试设置一个viewScope
变量,该变量在我的exampleDialog
控件中使用UNID作为数据源。
另外:对话框控件(与viewPanel放置相同的自定义控件)具有documentId
:
<xp:this.data>
<xp:dominoDocument var="Pdoc" formName="fmPersContact"
ignoreRequestParams="true" scope="request">
<xp:this.documentId><![CDATA[#{javascript:viewScope.get("dlgDocUnid");}]]></xp:this.documentId>
</xp:dominoDocument>
</xp:this.data>
但是,当我试图打开文档时。 (使用form == "fmPersContact"
)对话框的所有字段都为空,即使是doc。已填充一些字段值。
感谢您的帮助。谢谢你的时间。
答案 0 :(得分:1)
对话框中的数据源不包含action
属性。因此,它不尊重documentId
参数并在对话框中创建新文档。
添加action="editDocument"
属性,它将起作用。
另外,使用onclick
事件检查您正在刷新的内容。您应该部分刷新包含数据的区域(例如对话框或对话框中的面板等)