Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Power Automateで配列を扱う②
Search
MiyakeMito
March 05, 2022
Technology
5.2k
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Power Automateで配列を扱う②
MiyakeMito
March 05, 2022
More Decks by MiyakeMito
See All by MiyakeMito
マルチステージとAI承認について
miyakemito
0
140
Copilot Studioについて
miyakemito
7
9.9k
Dataverseの検索列について
miyakemito
2
1.7k
AI Builder について
miyakemito
3
1.1k
Microsoft Copilot Studio についてざっくり説明
miyakemito
2
1.8k
Power Automateのデータ操作(Data Operation)について (Ver.モダンデザイナー)
miyakemito
5
4.1k
JSON攻略法.pdf
miyakemito
13
7.3k
ガンダムBotを1分でつくってみせろよ
miyakemito
1
890
Microsoft Copilot Studio について
miyakemito
0
8.5k
Other Decks in Technology
See All in Technology
Platform Engineering as a Product: Criteria for Improvement and Multi-Tenant Design
kumorn5s
0
520
DevOps Agentで始めるAWS運用 〜フロンティアエージェントが変える運用の現場〜
nyankotaro
1
320
OCI Oracle AI Database Services新機能アップデート(2026/03-2026/05)
oracle4engineer
PRO
0
290
地元にいないローカルオーガナイザーの立ち回り
uvb_76
2
1.1k
10倍の生産性を実現するAI駆動並列エージェントのすべて
kumaiu
4
950
Databricks における 生成AIガバナンスの実践
taka_aki
1
350
もりもり新機能を一挙紹介! AgentCoreに入門して、AWS上にAIエージェントを構築しよう
minorun365
PRO
6
850
Microsoft Build Keynoteふりかえり
tomokusaba
0
110
サイバーセキュリティ概論 / Introduction to Cybersecurity
ks91
PRO
0
170
「嘘をつくテスト」の失敗例から学ぶ 良いテストコード #frontend_phpcon_do
asumikam
0
570
AI-DLCを活用した高品質・安全なAI駆動開発実践 / AI Driven Development
yoshidashingo
1
380
運用を見据えたAIエージェント設計実践
amacbee
1
3.2k
Featured
See All Featured
Highjacked: Video Game Concept Design
rkendrick25
PRO
1
380
Build your cross-platform service in a week with App Engine
jlugia
234
18k
Balancing Empowerment & Direction
lara
6
1.1k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
8.2k
My Coaching Mixtape
mlcsv
0
140
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
0
310
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
2.8k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
12
1.2k
How to optimise 3,500 product descriptions for ecommerce in one day using ChatGPT
katarinadahlin
PRO
1
3.6k
Building a A Zero-Code AI SEO Workflow
portentint
PRO
0
560
The Illustrated Children's Guide to Kubernetes
chrisshort
51
52k
HDC tutorial
michielstock
2
690
Transcript
Power Automate における配列② 気ままに勉強会 #09
今日の目標 関数を使って 配列を使いこなそう
アジェンダ 1. 配列(array)とは 2. 関数(function)とは 3. Power Automateの配列関数 4. Power
Automateで配列操作
Miyake Mito https://www.icsoft.jp/ @MiTo60448639 https://qiita.com/MiyakeMito
本日の参考サイト ▪ Azure Logic Apps および Power Automate のワークフロー式関数のリファレン ス
ガイド https://docs.microsoft.com/ja-jp/azure/logic-apps/workflow-definition- language-functions-reference ▪ Power Automateで文字列を1文字ずつに分割する方法 https://qiita.com/h-nagao/items/e0153b9a2c700cc2c95e ▪ Power Automateでのソート (Loopなし) https://qiita.com/h-nagao/items/765826be914fbf08bd02 ▪ Power Automate で配列をシャッフルする方法 https://mofumofupower.hatenablog.com/entry/2020/10/06/160200
配列(array) とは
配列とは ① • 変数(値を入れておく箱)が複数つながったもの • それぞれの箱は、配列の「要素」と呼ばれます • また配列の要素には、「添え字」という番号が割り当てられています • Power
Automateでは添え字を0から数えます 変数 0 1 2 3 4 5
配列とは ② • 一つの配列では、 同じ型のものしか扱えません 同じ性質の値だけをいれるようにします • ブラケットで囲み、各アイテム(要素)はカンマで区切ります(JSON) • データを取得する際は、添え字(何個目のデータ)を指定します
• Powe Automate は、文字列も一つ一つの文字の連続(=配列)として 解釈できます [ 1, 3, 2, 4, 0, 2 ]
配列とは ③ ぶき ぼうぐ ▪ おや・・・? クリスタル レイク JSON パンダ男
クリスタル レイク JSON パンダ子 クリスタル レイク JSON パン太郎 N.Y. JSON パンダ美 研究所 JSON パン助 宇宙船 JSON パンダ 宛先
配列とは ④ • 各要素は、オブジェクトや配列で指 定することも可能です [ {"宛先": {"住所":"クリスタルレイク","名前":"JSON パンダ男"}, "ぶき":
{"オノ":1,"チェーンソー":3}, "ぼうぐ": {"マスク":1} }, {"宛先": {"住所":"クリスタルレイク","名前":"JSON パンダ子"}, "ぶき": {"オノ":2,"チェーンソー":1}, "ぼうぐ": {"マスク":3} }, ---- 中略---- {"宛先": {"住所":"宇宙船","名前":"JSON パンダ"}, "ぶき": {"オノ":1,"チェーンソー":0}, "ぼうぐ": {"マスク":2} } ] [ [1,2,3], [4,5,6,7], [8,9] ]
関数(function) とは
関数とは ① ▪ 関数とは自動販売機のようなものである 引数(Input) 戻り値(Output) 関数(function)
関数とは ② ▪ 関数とは自動販売機のようなものである createArray() (1,3,2) [1,3,2] createArray()
Power Automate の配列関数 変換関数
配列を作る ⚫ array() 1 つの入力から配列を返します ⚫ createArray() 複数の入力から配列を作成して返します 1つの入力からも作成可能なので ➢
常にcreateArray()を推奨 ➢ アクションの[変数を初期化する]や[作成]でも作成可能
Power Automate の配列関数 コレクション関数
配列を捜索する ⚫ contains() コレクションに特定の項目があるかどうかを確認します ⚫ empty() コレクションが空かどうかを調べます ⚫ length() 文字列または配列内の項目の数を返します
➢ 文字列の場合、全角も半角も1として数える (サロゲートペア(UTF-16)は2)
配列から要素を取得する ⚫ first() コレクションから最初の項目を返します ⚫ last() コレクションから最後の項目を返します
配列から要素を取得する ⚫ skip() コレクションの先頭から項目を削除し、"他のすべて" の項 目を返します ⚫ take() コレクションの先頭から項目を返します ➢
パラメータがStringの場合は substring() で代用可
配列から要素を取得する ⚫ join() 配列の "すべて" の項目を含み、指定された区切り記号で 各項目が区切られた、文字列を返します ➢ [結合]と同じ
配列から要素を取得する ⚫ intersection() 指定したコレクションすべてに共通する項目 "のみ" を含む コレクションを返します ⚫ union() 指定した複数のコレクションの
"すべての" 項目を含む 1 つの コレクションを返します [ ],[ ],[ ] [ ] [ ],[ ],[ ] [ ]
配列から要素を取得する ⚫ item() 配列に対する繰り返しアクションの内部で使うと、アク ションの現在の繰り返しの間に配列の現在の項目を返しま す Apply to each で
[データ操作]-[選択]や [アレイのフィルター処理]
Power Automate の配列関数 文字列関数
配列から要素を取得する ⚫ split() 元の文字列で指定された区切り文字に基づいたより大きい 文字列から、コンマで区切られた部分文字列を含む配列を 返します ⚫ replace() 部分文字列を指定した文字列で置換し、更新された文字列 を返します
Power Automate の配列関数 算術関数
配列から要素を取得する ⚫ max() 数値のセットまたは配列から最大の値を返します ⚫ min() 数値のセットまたは配列から最小の値を返します ⚫ range() 指定した整数から始まる整数の配列を返します
123 123
Power Automate の配列関数 JSON関数
配列から要素を取得する ⚫ addProperty() JSON オブジェクトにプロパティとその値または名前と値 のペアを追加し、更新されたオブジェクトを返します ⚫ setProperty() JSON オブジェクトのプロパティの値を設定し、更新され
たオブジェクトを返します ⚫ removeProperty() JSON オブジェクトからプロパティを削除し、更新された オブジェクトを返します
Power Automate で配列操作 応用編
Power Automateで配列操作 [関数] item() range() substring() union() [データ操作] 可能性(出来ること)が無限大
文字列を1文字ずつに分割 substring(outputs('target_text'),item(),1) range(0,length(outputs('target_text')))
配列をソート ① substring(outputs('mapping_Text'),item(),1) ▪ ソートマッピングを作成 range(0, length(outputs('mapping_text')))
配列をソート ② Item() ▪ ソートマッピングを基にソート output(‘mapping_array’) output(‘target_array’)
配列をシャッフル ① rand(0,length(outputs('target_array'))) ▪ ターゲットの要素数×100個の、0~要素数のランダムな 数字を含む配列を作成 range(0,mul(length(outputs('target_array')),100))
配列をシャッフル ② ▪ Union()で出力される配列は、第一引数の要素順になります union(body('random_array_work'),range(0,length(outputs('target_array'))))
配列をシャッフル ③ ▪ 生成したランダムな配列を、添え字として指定 outputs('target_array')?[item()] outputs(‘random_array')
Power Automate と Power Virtual Agents で ゲームを作ってます ⚫ オセロ
⚫ 神経衰弱 ⚫ どうぶつしょうぎ ➢ 公開中 https://github.com/MiyakeMito/Repository ➢ インポート手順 https://qiita.com/MiyakeMito/items/b2df9ca9832fbce26a0d
まとめ 配列は便利 配列を制するとPower Automateが もっと楽しくなる 使いこなして面白フローをつくろう!
ありがとうございました