おしえて!あきらくん!その1(empty)

こんばんは。

なんやかんやでブログ連投できてる、慣れればサクッと書けますねぇ。

 

今日は若干技術的内容かなぁと思います。

PowerAutomateのクラウドフローの内容ですね。

 

 いきさつ

仲良しのおばちゃんPowerPlatformerがいるんですが、その方からLineで、

f:id:hanakuso365:20210331235016p:plain

こんなLineいただきまして、

まぁ暇だったから教えたろうと思ったわけですね。

 

要件

簡単にヒアリングした感じだと

「DBの値を取得してきて値によって条件分岐させて『Y』なら『処理A』を行って『N』なら『処理B』を行うっていうflow作ったんだけど、値が入ってないときにエラーになるの助けて!」

 

わい「あたりまえやん・・・」

 

て思ったけど、まぁ確かに自分も何故回避方法知ってるんだろう(。´・ω・)?

って思ったので、教えてみた。

要件をまとめると下図のような感じ。

まんま書くと怒られそうなので、ちょっと再現して作ってみた。

 

例:乃木坂46の身長をカウントして人数をTeamsで報告するflow

f:id:hanakuso365:20210401002018p:plain

 

こちらを流してみると

「空白があって次に進めないんですけど!」ってエラーが出る。

f:id:hanakuso365:20210401002238p:plain

 

そんでソース見たら空白はっけん!

原因がここっぽいねー

f:id:hanakuso365:20210401010904p:plain

 

ここで詰まったらしいんですわ。

なのでサクッと解決してみた。

解決方法


  Empty()
  

「 Emptyってのを使うと回避できたよー」

ってだけの話。

わたしも元々プログラマでも何でもないので前に同じ壁にぶつかった時に、

PHPって言語(?)にEmptyっていう、

「変数が空であるかどうかを検査するやつ」

が見つかったので、試しにいれてみよう!

→マジか!できたぜ!やっほい!

ってことがあったのでたまたま記憶の片隅に残ってた。

 

それ使ってFxに書いてあげればOK。

そんで編集して差し上げたのがコチラ。

f:id:hanakuso365:20210401004137p:plain

 

(入れ子にしたのは構造が分かりやすいと思ったからです)

(そうでもないな・・・)


  empty(string(items('Apply_to_each')?['hgt']))
  

 Apply to each で使用している要素の[hgt]って列名の値が空白

って意味ですね。

これがtrueなら要素が空白です、falseなら何かしら値が入ってんぜ!

ってことですね。

文字列に変換してるのはemptyがint型読めないからです。

 

これでflow回すとエラーなしで回ることが確認できます。

14人が160cm以上らしいです。

f:id:hanakuso365:20210401010208p:plain

まとめ

ぶっちゃけもっと解決方法はありますので、色々試してみてほしいです。

私もプログラマではないですが、引くほど調べて引くほど0から検証して、

今では頼られるようになりました。

学習材料はインターネット上にいっぱい先人たちが残していますので、

擦って擦って、楽しく色んな人の話を聞いて学んでいきたいものです。

 

本日は異常です。

ちがった、以上です。

 

Anyone who stops learning is old, whether at 20 or 80. Anyone who keeps learning stays young. The greatest thing in life is to keep your mind young!

ばいばい!