在extlib中过滤iNotes日历

时间:2012-03-11 16:19:12

标签: json calendar xpages

我还需要在extlib中过滤iNotes日历控件。当我查看extlib应用程序中的示例时,我可以看到它被连接到xecalendarJsonLegacyService。

我在此服务中发现的问题是,我无法根据类别过滤内容,也无法像其他视图服务一样进行搜索。

我需要根据视图中的搜索或类别创建不同的日历/ json数据。 我已经查看了其他一些服务,但不确定是否可以使用它们。

如果您对如何创建过滤器有任何想法,请回复。

我附上的图片显示了jsonservice和calendarcontrol。

enter image description here enter image description here

这是xsCalendarJsonLegacyService

中的json数据
{
    "@timestamp":"20120311T171603",
    "@toplevelentries":"3",
    "viewentry":
    [
  {
      "@unid":"37F0330979C04AF2C12579BE004F5629",
      "@noteid":"32E1A",
      "@position":"1",
      "@read":"true",
      "@siblings":"3",
      "entrydata":
      [
        {
            "@columnnumber":"0",
            "@name":"$134",
            "datetime":
            {
                "0":"20120314T100000"
            }
        },
        {
            "@columnnumber":"1",
            "@name":"$149",
            "number":
            {
                "0":119
            }
        }, etc...

4 个答案:

答案 0 :(得分:1)

您可以在扩展程序库中实现自己的REST服务(或对现有服务的扩展),但我想您正在寻找更容易的东西。

答案 1 :(得分:1)

抱歉没有代码,但也许(希望)答案。 您是否查看了Xpages Extension Library演示中的xc:CalendarStoreCustomRestService自定义控件?看起来他们将日历控件与普通的JSON视图存储连接起来,并支持搜索关键字。

答案 2 :(得分:1)

我找到了您可以使用的代码,但您必须扩展自定义控件。我认为这是一个尚未包含在扩展库中的xe:组件的新组件。

这是您使用控件的方式:

<xc:CalendarStoreCustomRestService id="cc4ccCalendarStoreCustomRestService"
    storeComponentId="notesCalendarStore1"  databaseName="#{sessionScope.databaseName}"
    viewName="($Calendar)">

</xc:CalendarStoreCustomRestService>

这是您的日历组件,它使用上面的storeComponentId。

        <xe:calendarView id="calendarView1" jsId="cview1"
            summarize="false"
            type="#{javascript: null == viewScope.calendarType? 'M' : viewScope.calendarType }"
            storeComponentId="notesCalendarStore1">
            <xe:this.loaded><![CDATA[${javascript:if (sessionScope.databaseName == null) {
                    return false;
                } else {
                    return true;
                }}]]></xe:this.loaded>
        </xe:calendarView>

如果您需要更多信息,此示例包含在DWA_iNotesRest.xsp中。

答案 3 :(得分:0)

我google了很长时间,我找到的唯一解决方案是建立自己的休息服务

您是否设法过滤了没有这个的日历?