Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-apps-script/6.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
Google apps script 如何在不清除所有筛选器的情况下清除特定筛选器?_Google Apps Script_Google App Maker - Fatal编程技术网

Google apps script 如何在不清除所有筛选器的情况下清除特定筛选器?

Google apps script 如何在不清除所有筛选器的情况下清除特定筛选器?,google-apps-script,google-app-maker,Google Apps Script,Google App Maker,背景: 我正在创建一个应用程序,用于存储公司员工在表中接受的培训记录。我想根据培训姓名和/或员工姓名筛选表中的行。我能够理解第一部分,并且能够创建一个按钮,使用clearFilters()函数清除所有过滤器并重新加载整个表 问题: 我想创建两个按钮来清除筛选选项,一个(“所有培训”)用于培训名称,另一个(“所有员工”)用于员工名称。更清楚地说,当我点击“所有培训”按钮时,我想清除培训名称上的过滤器,但不想清除员工名称上的过滤器。一旦我有了一个包含多个要筛选的字段的表,并且我希望在不必每次重置所有

背景:

我正在创建一个应用程序,用于存储公司员工在表中接受的培训记录。我想根据培训姓名和/或员工姓名筛选表中的行。我能够理解第一部分,并且能够创建一个按钮,使用clearFilters()函数清除所有过滤器并重新加载整个表

问题:

我想创建两个按钮来清除筛选选项,一个(“所有培训”)用于培训名称,另一个(“所有员工”)用于员工名称。更清楚地说,当我点击“所有培训”按钮时,我想清除培训名称上的过滤器,但不想清除员工名称上的过滤器。一旦我有了一个包含多个要筛选的字段的表,并且我希望在不必每次重置所有字段的情况下导航该表,这将变得非常有用


我试着搜索Google App Maker上可用的功能,但似乎没有什么能解决我的问题。有什么建议吗?

我相信有更好的方法可以做到这一点,因此您可能希望等待更聪明的人加入,但我相信您可以让按钮清除过滤器,但重新应用新的过滤器

因此,在我的情况下,我让表对列出为“完成”的项目进行筛选,以便在用户打开页面时隐藏这些项目

然后,当用户过滤另一个字段并希望清除该搜索时,我不希望“完整”项目再次出现(这是我刚刚使用clearFilters()函数时发生的情况。因此,我的解决方法是让“清除”按钮实际清除过滤器,但应用原始的“完整”过滤器

因此,对于我的OnClick操作,对于我的“清除按钮”,我有:


可能是多余的/不必要的。

我相信有更好的方法可以做到这一点,因此您可能希望等待更聪明的人加入,但我相信您可以让按钮清除过滤器,但重新应用新的过滤器

因此,在我的情况下,我让表对列出为“完成”的项目进行筛选,以便在用户打开页面时隐藏这些项目

然后,当用户过滤另一个字段并希望清除该搜索时,我不希望“完整”项目再次出现(这是我刚刚使用clearFilters()函数时发生的情况。因此,我的解决方法是让“清除”按钮实际清除过滤器,但应用原始的“完整”过滤器

因此,对于我的OnClick操作,对于我的“清除按钮”,我有:


可能是多余的/不必要的。

您可以在onClick处理程序中简单地执行3个步骤吗? (1) 清除所有过滤器 (2) 设置员工姓名筛选器
(3) 加载数据

能否在onClick处理程序中执行3个步骤? (1) 清除所有过滤器 (2) 设置员工姓名筛选器
(3) 从有关数据源的参考中加载数据:

与字段筛选器一样,将null指定给关系筛选器属性可以清除该限制

比如说:

datasource.query.filters.Employee._contains = null;
datasource.load();

应该对您有用。

来自数据源参考:

与字段筛选器一样,将null指定给关系筛选器属性可以清除该限制

比如说:

datasource.query.filters.Employee._contains = null;
datasource.load();

应该对你有用。

谢谢!这很有效。在我的情况下,我使用了_equals。谢谢!这很有效。在我的情况下,我使用了_equals。
datasource.query.filters.Employee._contains = null;
datasource.load();