Как работает приложение Logi c, пока ограничения l oop не работают? - PullRequest
0 голосов
/ 25 февраля 2020

У меня есть приложение Logi c с действием До, чтобы продолжать цикл до тех пор, пока не будет выполнено условие (в этом случае, когда экземпляр контейнера Azure имеет состояние «Завершено»). Я изменил предел «Количество» на 600. Я оставил «Время ожидания» на значении по умолчанию (PT1H). Среди других действий действие До содержит действие Задержка, которое я установил на 1 секунду. Таким образом, теоретически математика будет: 600 х 1 сек c = 10 минут макс. Правильно? Я запустил приложение Logi c ближе к вечеру и пошел домой. Проверил пробег, когда я вернулся домой, чтобы узнать, что он бежал в течение 26 минут! Смотрите скриншот:

Until action in Logic App

Итак, кто-нибудь может это объяснить? Заранее благодарим за ответ.

Обновление № 1: Для каждой информации Для каждого внутри до проходит через контейнеры в группе (которая является просто 1 контейнером) и устанавливает состояние контейнеры в переменной (которая используется для условия До). Вот и все.

Обновление № 2: Все действия Logi c Приложение Все действия Logi c Приложение:

Logic App actions part 1 Logic App actions part 2 Logic App actions part 3

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

Обновление № 3: Инициализация информации о переменной

Initialize Variable action

Примечание: это «состояние» это состояние группы контейнеров, которое просто используется для первоначального заполнения переменной. В поле До l oop он заполнен состоянием экземпляра контейнера внутри группы.

Обновление № 4: Получить свойства в каждой заметке Get Properties For Each

: Спросил в чате.

1 Ответ

0 голосов
/ 26 февраля 2020

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

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

  1. создать группу контейнеров;
  2. инициализировать переменную currentState;
  3. создать l oop , пока вы не установили правильное условие, но вам нужно поместить действие, которое получает свойство группы контейнеров, в ваш for-each l oop. Поэтому внутри for-each получите свойство, установите переменную вместе с состоянием, затем задержите.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...