将视图限制为xpages中的单个类别

时间:2014-10-20 23:23:25

标签: xpages-ssjs

我在xpages(AllCustomers)中有一个视图,当我点击此视图中的链接时,它打开文档可编辑(客户表单)。此页面中有一个视图显示与所选客户相关的所有项目,还有一个名为"在此页面中添加现有项目的按钮"。此按钮应允许用户选择先前为此客户创建的项目。他们应该只能看到与客户相同的客户和服务的项目,并将它们添加到客户。 我创建了一个视图,该视图的第一列按列值分类为Customer + services,如何过滤视图面板以显示先前为所选客户创建的项目。

提前多多感谢

<xp:viewPanel rows="30" id="viewPanel2" pageName="/Job.xsp">
                    <xp:this.facets>
                        <xp:pager partialRefresh="true" layout="Previous Group Next" xp:key="headerPager" id="pager2">
                        </xp:pager>
                    </xp:this.facets>
                    <xp:this.data>
                        <xp:dominoView var="view2"
                            viewName="Dialogue">
                            <xp:this.categoryFilter><![CDATA[#{javascript:document1.getDocument().getColumnValues("$16")}]]></xp:this.categoryFilter>
                        </xp:dominoView>
                    </xp:this.data>
                    <xp:viewColumn columnName="$16" id="viewColumn11" style="width:75.0px">
                        <xp:viewColumnHeader id="viewColumnHeader11">
                        </xp:viewColumnHeader>
                    </xp:viewColumn>
                    <xp:viewColumn columnName="$0" id="viewColumn12">
                        <xp:viewColumnHeader value="Num." id="viewColumnHeader12">
                        </xp:viewColumnHeader>
                    </xp:viewColumn>
                    <xp:viewColumn columnName="Progress" id="viewColumn13">
                        <xp:viewColumnHeader value="%" id="viewColumnHeader13">
                        </xp:viewColumnHeader>
                    </xp:viewColumn>
                    <xp:viewColumn columnName="Estimate" id="viewColumn14">
                        <xp:viewColumnHeader value="Est." id="viewColumnHeader14">
                        </xp:viewColumnHeader>
                    </xp:viewColumn>
                    <xp:viewColumn columnName="Actual" id="viewColumn15" displayAs="link">
                        <xp:viewColumnHeader value="Act." id="viewColumnHeader15">
                        </xp:viewColumnHeader>
                    </xp:viewColumn>
                    <xp:viewColumn columnName="status" id="viewColumn16">
                        <xp:viewColumnHeader value="Status" id="viewColumnHeader16">
                        </xp:viewColumnHeader>
                    </xp:viewColumn>
                    <xp:viewColumn columnName="Developer" id="viewColumn17">
                        <xp:viewColumnHeader value="Developer" id="viewColumnHeader17">
                        </xp:viewColumnHeader>
                    </xp:viewColumn>
                    <xp:viewColumn columnName="Priority" id="viewColumn18">
                        <xp:viewColumnHeader value="Priority" id="viewColumnHeader18">
                        </xp:viewColumnHeader>
                    </xp:viewColumn>
                    <xp:viewColumn columnName="Type" id="viewColumn19">
                        <xp:viewColumnHeader value="Typ" id="viewColumnHeader19">
                        </xp:viewColumnHeader>
                    </xp:viewColumn>
                    <xp:viewColumn columnName="$11" id="viewColumn20">
                        <xp:viewColumnHeader value="Request" id="viewColumnHeader20">
                        </xp:viewColumnHeader>
                    </xp:viewColumn>
                </xp:viewPanel>

1 个答案:

答案 0 :(得分:0)

您可以通过设置属性&#34; categoryFilter&#34;来过滤视图面板。如果底层的第一列被分类为客户名称,则可以将categoryFilter计算为当前用户名。现在,您只能在第一列中看到已将当前用户名作为客户的文档。

 <xp:this.data>
     <xp:dominoView var="view1" viewName="luTimes"
                categoryFilter="#{javascript:session.createName(session.getEffectiveUserName()).getCanonical();}">
     </xp:dominoView>
 </xp:this.data>