#MicrosoftFlow 使いが #LogicApps をつかってシステム構築を行った際に詰まったこと(その2)


この記事は・・・

#MicrosoftFlow 使いが #LogicApps をつかってシステム構築を行った際に詰まったこと(その1)
の続きです。

前回は、ループ処理のお話でしたね。
今回は、データソースのお話です。

Microsoft Flowでは・・・

私だけかもしれませんが、Microsoft Flowを作るときは、当然それで使えるデータソースであることを前提として作っていました。

  • UTF-8
  • JSON

まぁこんな感じですかね。
Office365内における業務フローを作る製品という前提なので、まぁ当たり前っちゃ当たり前なんですが・・・

しかし・・・

今回使うデータソースは、オンプレミスのシステムが吐き出す

  • SJIS
  • CSV

なわけですよ。

LogicAppsって・・・

CSV使えるのかなー?

CSVテーブルとして作成するってのはありますが・・・
要は、JSONをCSV化するってだけですね・・・。


※テストデータ生成ツールで出力したJSONを使っています。
http://tm-webtools.com/Tools/TestData

SJISってちゃんと読み込んでくれるかなぁ?

まぁ、当然文字化けするんで読めるわけないですね。

というわけで・・・

このままではどうしようもなく
「Shift-JISのCSVしか渡せない」ともいわれましたので
こちらでデータ変換せざるを得ず
Azure Functionsを使って変換する方針となりました。
⇒こちらの内容は近日中に纏めて公開する予定です。
 ※ソースコードありw

まとめ

Low-Code No-Codeでモノを作るにしても、元ネタもある程度歩み寄らないとなかなかうまいこといかない。
逆に言うと、そういうところをエンジニアにお願いするというのは非常に有益なんじゃないかということを改めて感じた次第。

ちょっとしたTips

Blobやファイルからデータ参照する時、octet-stream ってなってうまく取り出せないなんてことありませんか?
そんな時は、以下の式を使うと幸せになれますよ!

base64ToString(<欲しいデータのコネクタ名>.$content)