Попытка динамической фильтрации источника данных таблицы - PullRequest
0 голосов
/ 09 июля 2019

В конечном счете, я хочу фильтровать на основе значений, извлеченных из формы, но сейчас, жестко закодировав это, это не работает. Сложность в том, что поля, для которых выполняется подбор, также являются динамическими:

m1 и m2 - поля метаданных, v1 и v2 - поля значений.

Что у меня есть это:

function basicQuery (m1, m2, v1, v2){
  var results = [];
  var query = app.models.DATASOURCE.newQuery();
  query.filters.m1._contains = v1;
  query.filters.m2._contains = v2;
  return query.run();
}

Это выдает "TypeError: Невозможно установить свойство" _contains "из undefined в" Textvalue ". Но в то время как v1 и v2 распознаются правильно, m1 и m2 нет. Я думаю, что мне нужно что-то вроде

m1 = app.model.DATASOURCE.getField(m1);

Ни одно из учебных пособий, которые я смотрел, не было таким, как я хотел, если бы кто-то мог указать мне правильное направление, я был бы в восторге.

Мне просто нужно динамически фильтровать мою таблицу.

(добавив функцию-обработчик, хотя я не думаю, что это проблема):

function handleBasicQuery(){ 
  var m1 = "document_name";
  var v1 ="TextValue";
  var m2 = "Region";
  var v2 = "North America";
  console.log("--handleBasicQuery--");
  google.script.run.withSuccessHandler(
    function successHandler(expectedValue){
      console.Log (expectedValue);})
  .withFailureHandler(
    function failureHandler(){
      console.log("undefined");})
  .basicQuery(m1, m2, v1, v2);
}
...