Lotus notes @SetViewInfo-清除筛选器时出现问题
我有一个问题让我难倒了。 我一直在寻找解决方案,但还没有找到有效的解决方案。我看到的解决方案引入了其他问题 以下是场景: 我有一个有两个框架的框架集:“导航器”和“主框架”。 在“Navigator”框架中,我显示了一个名为“Navigator”的表单。它包含一个大纲,用于显示菜单。 在“主”框架中,我显示用户在导航器中选择的视图。 这是一个非常传统的Notes客户端应用程序 我现在想在视图顶部(在操作栏中)添加一个复选框,允许用户按自己的姓名筛选视图。我使用@SetViewInfo来实现这一点,一切都很完美 问题是当用户切换视图时。@SetViewInfo过滤器在切换到其他视图时保持活动状态,因此经过一些搜索后,我找到了一些解决方案: 在中,IBM建议将以下代码放入QuerySave事件中:Lotus notes @SetViewInfo-清除筛选器时出现问题,lotus-notes,lotus-formula,Lotus Notes,Lotus Formula,我有一个问题让我难倒了。 我一直在寻找解决方案,但还没有找到有效的解决方案。我看到的解决方案引入了其他问题 以下是场景: 我有一个有两个框架的框架集:“导航器”和“主框架”。 在“Navigator”框架中,我显示了一个名为“Navigator”的表单。它包含一个大纲,用于显示菜单。 在“主”框架中,我显示用户在导航器中选择的视图。 这是一个非常传统的Notes客户端应用程序 我现在想在视图顶部(在操作栏中)添加一个复选框,允许用户按自己的姓名筛选视图。我使用@SetViewInfo来实现这一点
@SetViewInfo([SetViewFilter]; temp ; 0 ;1)
@SetTargetFrame("frameName");
@UpdateFormulaContext;
@Command([OpenView]; @Subset(@ViewTitle; -1));
@SetViewInfo([SetViewFilter]; ""; "columnName"; 1)
当我切换视图或关闭视图时,会收到错误消息“无法执行指定的命令”
在本文中,Andre Guirard建议将以下代码放入QuerySave事件中:
@SetViewInfo([SetViewFilter]; temp ; 0 ;1)
@SetTargetFrame("frameName");
@UpdateFormulaContext;
@Command([OpenView]; @Subset(@ViewTitle; -1));
@SetViewInfo([SetViewFilter]; ""; "columnName"; 1)
我修改它以匹配我的框架名称和视图中第一列的程序名称:
@SetTargetFrame("Main");
@UpdateFormulaContext;
@Command([OpenView]; @Subset(@ViewTitle; -1));
@SetViewInfo([SetViewFilter]; ""; "Adjuster"; 1)
在视图之间切换时,此操作非常有效。但是当我在这个特定的过滤视图中关闭应用程序时,应用程序会自动重新打开。无论关闭视图时是否启用过滤器,都会发生这种情况
但是,当视图重新打开时,不会重新加载框架集,它只是左侧带有内置视图导航器的视图。
我最终通过(在内置视图导航器中)选择另一个过滤数据的视图来实现这一点。这在一段时间内解决了这个问题,但随后又重新开始,并且过滤视图在导航器中处于活动状态
显然是OpenView命令导致了这一点,但是如果我只删除这一行,我会再次出现“无法执行指定的命令”错误
有什么建议/建议吗?我使用的是运行在Windows7 Professional上的Notes8.5.3
这个问题也可以在IBM developerWorks论坛的Notes 8.5中找到:
首先,我建议确保您的视图框始终称为“NotesView”。如果这样做,兼容性问题就会少很多 其次,我想当你说你把它放在QuerySave事件中时,你真的是指QueryClose事件吗?视图没有QuerySave事件 第三,我发现不需要@UpdateFormulaContext行。这就是我认为的QueryClose
@SetTargetFrame("NotesView");
@Command([OpenView]; @Subset(@ViewTitle; -1));
@SetViewInfo([SetViewFilter]; ""; "<programmaticColumnName>"; 1)
@SetTargetFrame(“NotesView”);
@命令([OpenView];@Subset(@ViewTitle;-1));
@SetViewInfo([SetViewFilter];“”;“”;1)
我可以在视图中关闭应用程序,而不会出现任何问题