Xpages 如何为显示字母而不是数字的视图创建寻呼机?

Xpages 如何为显示字母而不是数字的视图创建寻呼机?,xpages,Xpages,我需要一个按字母顺序排列的寻呼机来查看。我没有看到任何样本或自定义寻呼机来解决这个问题。我认为这是一件很平常的事 MJ我会这样做:按照公式@Left(value;1)对视图进行分类。然后通过repeat或某些ExtLib组件(链接列表、导航器、菜单)将@DbColumn的结果呈现为分页器。每个链接要么将显示的视图限制为“单一类别”,要么跳转到“以”字符开头。我会这样做:按公式@Left(value;1)对视图进行分类。。然后通过repeat或某些ExtLib组件(链接列表、导航器、菜单)将@Db

我需要一个按字母顺序排列的寻呼机来查看。我没有看到任何样本或自定义寻呼机来解决这个问题。我认为这是一件很平常的事


MJ

我会这样做:按照公式
@Left(value;1)
对视图进行分类。然后通过repeat或某些ExtLib组件(链接列表、导航器、菜单)将@DbColumn的结果呈现为分页器。每个链接要么将显示的视图限制为“单一类别”,要么跳转到“以”字符开头。

我会这样做:按公式
@Left(value;1)对视图进行分类。
。然后通过repeat或某些ExtLib组件(链接列表、导航器、菜单)将@DbColumn的结果呈现为分页器。每个链接要么将显示的视图限制为“单一类别”,要么跳转为“以字符开头”。

我不太确定“字母顺序寻呼机”的真正含义,但我想您可能正在寻找某种字母顺序导航器,就像我们在Notes客户机的个人NAB中看到的那样,对吗

如果是这样的话,你不是在寻找寻呼机,而是在寻找一个按字母顺序排列的视图过滤器。有一种方法可以到达那里:

  • 创建一个面板,给它一个独特的ID,如“viewContainer”或 某物将视图面板放入面板中;当然,视图的主要排序顺序必须是字母顺序
  • 在“viewContainer”上方创建第二个面板,此处不需要ID
  • 在这个新面板中放置一个repeat,并将其绑定到一个新的JavaScript数组,如下所示:

    新阵列(“a”、“b”、“c”、“x”、“y”、“z”)

  • 为重复输入集合名称,如“字母”

  • 在repeat中放置一个链接控件。链接的标签将被删除 计算到重复的集合名称,即“字母”
  • 将onclick事件分配给链接,并将sessionScope变量设置为当前集合名称的值,如下所示:

    sessionScope.filter=字母

  • 将事件的刷新模式设置为“部分”,以便刷新viewContainer面板

  • 高亮显示viewContainer中的视图控件。在其数据属性中,查找标记为“按列值筛选”的属性字段,并对其进行计算。输入以下代码:

    sessionScope.filter=null;
    
    sessionScope.filter

就这样

编辑: 当然,您可以从视图本身动态构建repeat的数据源数组。因此,除了构建静态a-to-z阵列之外,您还可以使用以下内容:

@Unique(@Left(@DbColumn(@DbName(), "yourLookupView", viewColNumber), 1));
这将返回一个数组,该数组只包含真正在视图中的字母

此外,您还可以在外部使用另一个静态链接控件,重复重置过滤器以显示所有条目。它的构建类似于调用以下代码的onclick事件的重复链接:

sessionScope.filter=null;

享受吧

我不太清楚你所说的“按字母顺序的寻呼机”到底是什么意思,但我想你可能正在寻找某种按字母顺序排列的导航器,就像我们在Notes客户端的个人NAB中找到的那样,对吧

如果是这样的话,你不是在寻找寻呼机,而是在寻找一个按字母顺序排列的视图过滤器。有一种方法可以到达那里:

  • 创建一个面板,给它一个独特的ID,如“viewContainer”或 某物将视图面板放入面板中;当然,视图的主要排序顺序必须是字母顺序
  • 在“viewContainer”上方创建第二个面板,此处不需要ID
  • 在这个新面板中放置一个repeat,并将其绑定到一个新的JavaScript数组,如下所示:

    新阵列(“a”、“b”、“c”、“x”、“y”、“z”)

  • 为重复输入集合名称,如“字母”

  • 在repeat中放置一个链接控件。链接的标签将被删除 计算到重复的集合名称,即“字母”
  • 将onclick事件分配给链接,并将sessionScope变量设置为当前集合名称的值,如下所示:

    sessionScope.filter=字母

  • 将事件的刷新模式设置为“部分”,以便刷新viewContainer面板

  • 高亮显示viewContainer中的视图控件。在其数据属性中,查找标记为“按列值筛选”的属性字段,并对其进行计算。输入以下代码:

    sessionScope.filter=null;
    
    sessionScope.filter

就这样

编辑: 当然,您可以从视图本身动态构建repeat的数据源数组。因此,除了构建静态a-to-z阵列之外,您还可以使用以下内容:

@Unique(@Left(@DbColumn(@DbName(), "yourLookupView", viewColNumber), 1));
这将返回一个数组,该数组只包含真正在视图中的字母

此外,您还可以在外部使用另一个静态链接控件,重复重置过滤器以显示所有条目。它的构建类似于调用以下代码的onclick事件的重复链接:

sessionScope.filter=null;

享受吧

这正是我想要的。谢谢,这正是我想要的。非常感谢。