Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/wordpress/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Lotus notes @SetViewInfo-清除筛选器时出现问题_Lotus Notes_Lotus Formula - Fatal编程技术网

Lotus notes @SetViewInfo-清除筛选器时出现问题

Lotus notes @SetViewInfo-清除筛选器时出现问题,lotus-notes,lotus-formula,Lotus Notes,Lotus Formula,我有一个问题让我难倒了。 我一直在寻找解决方案,但还没有找到有效的解决方案。我看到的解决方案引入了其他问题 以下是场景: 我有一个有两个框架的框架集:“导航器”和“主框架”。 在“Navigator”框架中,我显示了一个名为“Navigator”的表单。它包含一个大纲,用于显示菜单。 在“主”框架中,我显示用户在导航器中选择的视图。 这是一个非常传统的Notes客户端应用程序 我现在想在视图顶部(在操作栏中)添加一个复选框,允许用户按自己的姓名筛选视图。我使用@SetViewInfo来实现这一点

我有一个问题让我难倒了。 我一直在寻找解决方案,但还没有找到有效的解决方案。我看到的解决方案引入了其他问题

以下是场景: 我有一个有两个框架的框架集:“导航器”和“主框架”。 在“Navigator”框架中,我显示了一个名为“Navigator”的表单。它包含一个大纲,用于显示菜单。 在“主”框架中,我显示用户在导航器中选择的视图。 这是一个非常传统的Notes客户端应用程序

我现在想在视图顶部(在操作栏中)添加一个复选框,允许用户按自己的姓名筛选视图。我使用@SetViewInfo来实现这一点,一切都很完美

问题是当用户切换视图时。@SetViewInfo过滤器在切换到其他视图时保持活动状态,因此经过一些搜索后,我找到了一些解决方案:

在中,IBM建议将以下代码放入QuerySave事件中:

@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)
我可以在视图中关闭应用程序,而不会出现任何问题