はじめに
私元々Microsoft FlowやPowerApps を嗜みつつ、Logic Appsもその延長線上で使っていたぐらいなのですが、ちょっとしたプロジェクトがありまして
2週間でシステムを構築しなければならないというとんでもないものでして
かつ私はメインの仕事もしながらということで、実質作業時間100時間しかない
という、超タイトなスケジュールと相成りまして
Logic Apps以外取りえる選択肢がない状況でございました。
そして、超短期間ながらもなんとかシステムをこさえた私が
その中で出てきた色々な躓きどころを、全3回に渡ってご紹介しようと思います。
注意
題名はあたかもLogic Appに変わったことで云々な感じに捉えられがちですが
実際はMicrosoft Flowでも当てはまることもございますのでご注意ください。
For each
複数のデータを元に順に処理していく
For Eachコネクタですが
ループ内で変数を使う処理を行った際
Microsoft Flowだと、1件ずつ処理するため問題ないのですが
Logic Appsだと、正しく処理されません。
フロー
結果
なぜこんなことが起きるのか
Microsoft Flowは既定では、各アクションが順次実行なのに対し
Logic Appsは既定では各アクションが並列実行されます。
どうすればいいのか?
コンカレンシー制御をオンにし、並列処理の次数を1にすることで対処可能です。
ただしデメリットも・・・
並列実行のほうが圧倒的に処理は早いです。
ループ処理させる際は、変数を使わないようにするのが一番良いかと思います。