首页 > 解决方案 > 查询服务器脚本中的自定义参数错误

问题描述

我使用查询服务器脚本创建了一个名为Horas的数据源,并创建了一个名为的自定义参数。Usuario

我在一个页面中绑定了 datoasource Horas 作为

textField.value <-> datasource.query.parameters.Usuario

我得到了错误:

错误: 参数“ Usuario”在“ where”子句中使用,但未在属性“ parameters”中定义。在datasources.Horas

Horas 是一个查询服务器脚本数据源

  var query = app.models.Registros.newQuery();
  query.where = 'Usuario =? :Usuario';
  var allRegistros = query.run();

我希望得到一个数据过滤的表格Usuario,如何解决错误?

标签: google-app-maker

解决方案


当使用查询脚本而不是查询构建器时,与 where 子句结合使用时,您的查询参数实际上与 where 子句中使用的参数是分开的。您可能的解决方案是将您的数据源切换到查询构建器或调整您的查询服务器脚本中的代码,如下所示(另请注意,无需在查询脚本中声明您对数据源的查询,您只需使用查询即可使用查询脚本时,您必须使用返回):

query.where = 'Usuario =? :Usuario';
query.parameters.Usuario = query.parameters.Usuario;
return query.run();

如果这不起作用,请告诉我。是的,您实际上必须在 where 子句中声明参数 Usuario,然后将其设置为等于您使用实际查询参数的参数。这种方式有点奇怪。


推荐阅读