我正在创建一个应用程序,它将帮助我们的员工管理任务。员工分为全国不同地区。我希望给定地区的员工看到仅与此地区相关的任务。
工作流程:
通过表单提交任务。表单中的字段之一是“区域名称”。
该任务进入了区域视野。
员工可以从其区域的视图中接管任务。
我有一个名为“ Service”的MAIN数据模型,其中嵌入的是用于提交任务的表格。
我也有数据字典模式,在这里我导入了有关员工及其所在地区的数据。
如何为特定区域的员工创建视图?
编辑:我试图在Service modal上做数据源,并写一些查询来做过滤器,但是我不完全了解查询的工作原理。
编辑2:这是模态的样子:
我应该建立联系吗?
答案 0 :(得分:1)
可能的解决方法是在您的服务模型下有一个数据源,该数据源通过DOT模型的子查询在Province上过滤您的服务记录。这可以通过此数据源中的查询服务器脚本来完成。
示例代码为(请记住,“ query”是当前模型服务器脚本的默认变量,因此子查询需要它自己的变量):
var DOTmodelquery = app.models.DOT.newQuery();
DOTmodelquery.filters.email._equals = Session.getActiveUser().getEmail();
var result = DOTmodelquery.run();
if (result === undefined || result.length === 0) {
throw new app.ManagedError('Could not retrieve user to perform this query!');
} else if (result[0].Province === null) {
throw new app.ManagedError('User does not have a Province value to perform this query!');
} else {
query.filters.Province._equals = result[0].Province;
}
return query.run();
不确定服务和DOT之间的关系是解决问题的方法,但是您可以考虑建立省模型,然后在省-服务和省-DOT之间建立关系,然后尝试在服务中运行查询,例如所以query.filters.Province.DOT.email._equals = Session.getActiveUser().getEmail();
。希望这会给您您所希望的。