Синтаксис параметров Data Explorer в Automation

У меня есть запрос в Data Explorer, который принимает параметр ‘group_name’

Я хочу автоматизировать его запуск для каждой соответствующей группы и отправлять результаты этой группе раз в неделю.

Но я никак не могу понять, какой синтаксис использовать для параметра. Вот что мне предлагается в новой автоматизации:

Это меня… не очень помогает.

Я пробовал несколько вариантов. Когда мои попытки не вызывают ошибок (которые можно найти в журналах ошибок), результат оказывается пустым.

Если я использую запрос без параметров, он выполняется мгновенно. Как заставить это работать для запросов, которым нужны параметры?

2 лайка

Я тоже могу воспроизвести эту проблему.

В вашем примере, если вы хотите проверить группы модераторов и администраторов, у вас должно быть:

ключ: group_name
значение: moderators,admins


Технические детали для помощи, не обращайте на меня внимания. :smile:
Я попытался разобраться, изучив код, и думаю, что здесь есть проблема:

Параметры преобразуются перед вызовом run_query.
Допустим, у вас есть исходное значение:
[{"key":"group_names","value":"admins,moderators"}]
Преобразованное значение будет таким:
{{"key"=>"group_names", "value"=>"admins,moderators"}=>nil}

Однако cast_params, похоже, ожидает {"group_names"=>"admins,moderators"}.

Я попробовал протестировать это простое изменение, и параметры заработали.

def self.params_to_hash(query_params)
  params = JSON.parse(query_params)
  params_hash = {}

  params.each do |param|
    key = param["key"]
    value = param["value"]
    params_hash[key] = value
  end

  params_hash
end
7 лайков

Вау, спасибо за отладку здесь :hugs: Мы займемся этим на следующей неделе.

5 лайков

Это просто фантастическое спелеологическое приключение, @Arkshine! :slightly_smiling_face:

Я сейчас разбираюсь с этим. Когда я читаю исходный код, у меня складывается впечатление, что он ожидает, что параметры будут массивом массивов, поэтому я немного опасаюсь просто выбросить существующий код. Постараюсь понять, когда это может произойти.

Опубликую здесь, как только что-то найду.

1 лайк

Здесь действительно была ошибка, и во многом благодаря расследованию @Arkshine её удалось относительно легко исправить:

Этот запрос уже принят в основную ветку, поэтому после развёртывания вашего сайта проблема будет решена, @ganncamp.

Если я правильно понял, вы хотите автоматизацию, которая обеспечивает прямое соответствие между группой и её отчётом? (То есть group_a получает отчёт с данными group_a и т. д.)

На данный момент нет связи между списком получателей и параметрами отчёта, поэтому для реализации такой логики потребуется настроить отдельную автоматизацию для каждой группы. В этом случае, возможно, стоит изменить параметр на group_id.

3 лайка

Отличные новости, @ted!

Да, возможность использовать foreach для набора групп была бы следующим моим запросом :smile:

3 лайка

Это действительно кажется удобным, особенно для сайтов с большим количеством групп. Я запишу этот запрос, но не могу сказать, когда мы сможем его реализовать. :folded_hands:

3 лайка

Эта тема была автоматически закрыта через 3 дня после последнего ответа. Новые ответы больше не принимаются.