Извлечение уникальных значений из JSON Power BI в Power Automate

У меня есть следующий JSON, полученный из PowerBI (с помощью функции кнопки Power Automate).

[
  {
    "entity": {
      "Power BI values": [
        {
          "G-DATEMO": 4,
          "G-DATEQU": 2,
          "G-DATEYR": 2024,
          "G-PRODUCT": "Biscuit",
          "G-BAKERY": "West",
          "Year Quarter Name": "2024 Q2"
        },
        {
          "G-DATEMO": 4,
          "G-DATEQU": 2,
          "G-DATEYR": 2024,
          "G-PRODUCT": "Bun",
          "G-BAKERY": "West",
          "Year Quarter Name": "2024 Q2"
        },
        {
          "G-DATEMO": 4,
          "G-DATEQU": 2,
          "G-DATEYR": 2024,
          "G-PRODUCT": "Bun",
          "G-BAKERY": "South",
          "Year Quarter Name": "2024 Q2"
        },
      ]
    }
  }
]

Я хочу извлечь только УНИКАЛЬНЫЕ элементы для перечисленных G-PRODUCT и G-BAKERY, если это возможно, в отдельные массивы.

Я попытался применить «применить к каждому» внутри другого «применить к каждому», но в итоге массив был заполнен «Apply_to_each_2»

Необходимо добиться этого внутри Power Automate.

каков ваш ожидаемый результат?

iBeMeltin 18.07.2024 16:55

Привет. Что-то вроде: { Запад, Юг } и { Бисквит, Булочка }

BobsBugs 18.07.2024 17:13
Структурированный массив Numpy
Структурированный массив Numpy
Однако в реальных проектах я чаще всего имею дело со списками, состоящими из нескольких типов данных. Как мы можем использовать массивы numpy, чтобы...
T - 1Bits: Генерация последовательного массива
T - 1Bits: Генерация последовательного массива
По мере того, как мы пишем все больше кода, мы привыкаем к определенным способам действий. То тут, то там мы находим код, который заставляет нас...
Что такое деструктуризация массива в JavaScript?
Что такое деструктуризация массива в JavaScript?
Деструктуризация позволяет распаковывать значения из массивов и добавлять их в отдельные переменные.
2
2
54
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Я сохранил ваши данные в переменную массива:

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

{
    "type": "array",
    "items": {
        "type": "object",
        "properties": {
            "entity": {
                "type": "object",
                "properties": {
                    "Power BI values": {
                        "type": "array",
                        "items": {
                            "type": "object",
                            "properties": {
                                "G-DATEMO": {
                                    "type": "integer"
                                },
                                "G-DATEQU": {
                                    "type": "integer"
                                },
                                "G-DATEYR": {
                                    "type": "integer"
                                },
                                "G-PRODUCT": {
                                    "type": "string"
                                },
                                "G-BAKERY": {
                                    "type": "string"
                                },
                                "Year Quarter Name": {
                                    "type": "string"
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}

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

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

Последний шаг — удалить дубликаты из каждого массива. Создайте действие составления для каждого массива и используйте следующее выражение:

Спасибо, но я все еще не могу заставить это работать. Там, где у вас есть «Для каждого 1», и как только я добавляю выбор и вставляю «значения entity.power bi», он создает еще один «Для каждого». Как ты не создал его выше? Конечный результат просто: [null, null, null, null, null, null, null, null, null, null, null, null, (и т. д.)] Является ли добавление «нет» к переменным, созданным, потому что я недостаточно пьян? кофе и не понимаю, как вы помещаете их в переменные.

BobsBugs 19.07.2024 14:31

да, так что не ставьте для каждого действия самостоятельно. Сначала добавьте действие выбора и укажите необходимые параметры. Он автоматически обернет его в цикл for каждый

iBeMeltin 19.07.2024 16:43

Тогда не уверен, что я делаю неправильно. Сразу после JSON я выбираю «выбрать». Как только я выбираю «Элементы Power BI» (у меня есть выбор элемента, сущности, тела, значений Power BI), он дает мне первый цикл «Для каждого». Как только я выбираю «G-Bakery» (для этого мне нужно переключиться на отображение в текстовый режим), он сразу же переводит меня в другой «Для каждого». Таким образом, я продолжаю выдавать «ноль, ноль, ноль». Какая часть Я делаю неправильно?

BobsBugs 22.07.2024 11:40

Кроме того, сразу после For-each (первого), если я выполняю компоновку и G-Bakery, тогда переменная просто пуста.

BobsBugs 22.07.2024 11:53

Я понимаю, что ты имеешь в виду, я забыл шаг. позвольте мне обновить мой ответ для вас

iBeMeltin 22.07.2024 15:10

Я обновил его для тебя

iBeMeltin 22.07.2024 15:58

спасибо, что придерживаетесь этого. Невозможно ссылаться на «выбрать» внутри цикла. Единственный способ получить его, так сказать, - это создать композицию внутри цикла, поместить туда результат выбора, а затем скопировать его в переменную ниже, удалив композицию. Однако вход RAW в переменную Initialize пуст. Select теперь выполняет свою работу (кто знает, что он будет чувствителен к регистру!), но я не могу вывести его из цикла. Вы не можете перенести выходные данные цикла в массив, поскольку он приводит к ошибке в области действия Foreach.

BobsBugs 23.07.2024 10:25

вам не нужно ссылаться на выбор внутри цикла. Вы используете выходные данные select для инициализации массивов после цикла.

iBeMeltin 23.07.2024 14:50

Вы не можете легко ссылаться на вывод select вне цикла. В конце концов я заставил это работать для других, кто придет после меня: 1) Инициализировать переменную перед циклом 2) При добавлении выбора выберите «Значения Power BI», а затем для карты добавьте его, используя возможность выражения (в приведенном выше примере , item()?['G-Bakery]). Это остановит автоматизацию запуска еще одного добавления цикла. 2) В каждом цикле выберите «Установить переменную» и выберите результат выбора. 3) Вне цикла выполните композицию и объединение. Тогда это работает. Спасибо @IBEMeltin за помощь в этой части!

BobsBugs 23.07.2024 14:56

нет проблем, если мои ответы были полезны, вы можете проголосовать за меня и выбрать мой ответ :)

iBeMeltin 23.07.2024 15:01

Другие вопросы по теме