【業務効率向上】PowerAutomateでformatDateTime関数でユニークID採番する方法

PowerAutomate
スポンサーリンク

はじめに

本記事の対象者

  • Power AutomateでユニークなIDを採番したい考えている人
  • Power AutomateでformatDateTime関数の使い方を知りたい人

本記事の目的

  • Power AutomateのformatDateTime関数を使用して、ユニークなIDを採番する方法を知る。

formatDateTime関数でユニークなIDを採番する方法

2021年2月から無料版Power Automateを使って今まで貯めてきたノウハウを解説していきます。

自分のノウハウのまとめは、「【業務効率向上】【備忘】PowerAutomateの使い方一覧」にあります。もしよろしければ確認してみてください!!

今回の紹介するフロー

今回は、formatDateTime関数をメインしています。

関数を操作するのが変数のコネクタ内なので、だいぶシンプルです。

今回の採番ルールについて

今回は、年月日+時間+分+秒の文字列を作ることでユニークをIDを作ります。

他には、SharePointのカスタムリストの項目のIDを混ぜたりした方が絶対にユニークなIDを作れると思っています。

ただ、簡易に作るという点や、他の人とIDを採番するのに秒単位で重なることは難しいという点で、今回の作り方を紹介します。

Power AutomateのformatDateTime関数について

今回のフローで主役となるのは、formatDateTime関数です。

formatDateTime関数は、以下の画像のように「式」-「日時関数」-「formatDateTime関数」にあります。

formatDateTime関数では、文字列のタイムスタンプ(2021/3/11 12:00など)の時間のフォーマットを整形することができます。

トリガー(手動でフローをトリガーします):同左

トリガーは、「手動でフローをトリガーします」です。

このコネクタでは、単にテストの起点として入れているだけなので、設定値などはありません。

本来であれば、ここはSharePointのカスタムリストの項目作成や、PowerAppsでアクションがあった際のトリガーが来ると考えています。

コネクタ1(変数を初期化する):同左

1つ目のコネクタは、「変数を初期化する」です。

このコネクタでは、utcNow関数で現在時刻を取得して、文字列タイムスタンプを整形してユニークなIDを作成します。

細かい分は以下の画像です。

やっていることは、現在日時情報で、年の末尾2桁を取得し、月・日・時・分・秒を一つの文字列として作成しています。

そのため、「2021-12-22 12:11:06」というタイムスタンプがあったとした場合は、
「211222121106」とう文字列が作成されます。

一応、表にもトリガーの設定値をまとめておきます。

No 設定項目名 設定値 備考
1 名前 ID

文字列が取得できたら、この名前で使いまわしてください。

2 種類 文字列  
3

formatDateTime(※1,※2)

※1:utcNow()

※2:’yyMMddHHmmss’

utcNow()は現在時刻を取得する関数です。

 

実行結果

今回のフローを実行してみたいと思います。

すみません。急に、元データ確認用として、中に現時刻を取得のコネクタも入れちゃっています。

これは単に変数に設定する値をutcNow()にしただけです。

正常に実行できたので、実行結果を中身を確認します。

ちゃんと、utcNow()関数が出力している現時刻の文字列を整形して、ユニークなIDが採番されていることがわかります。

ただ、日時が日本時間になっていないので、時間の調整はaddHours関数を用いたりして実施してみてください。

参考ページは以前書いた以下のページです。

参考ページ:【業務効率向上】PowerAutomateのaddHours関数で時間を操作する方法

補足情報 今回のフローの想定用途

今回のフローの想定用途は、業務上ユニークなIDを案件ごとに紐付けるために、採番システムの根幹となるロジックとして使うことです。

今回は、日時という意味で意味ありのIDですが、ローカルルールで日時と合わせて意味ありなユニークIDを作るのであれば、concat()関数を使って文字列結合することが考えられます

他にも考えられるものがある場合は、記事にしていきたいと思います。

まとめ

出典:Microsoft Power Automateより

まとめに入ります。

業務効率を上げるために提供されているMicrosoft365のツール群で、今回はPower AutomateのformatDateTime関数でユニークIDの作成方法について説明しました。

業務上ユニークなIDを案件ごとに紐付けるために、採番システムの根幹となるロジックとして使えると思っています。

ローカルルールがあるところは、concat関数を使ったりして、付与したい文字列をIDに結合していってください。※記事にするかもしれません。

最後まで読んでいただきありがとうございます。

コメント

タイトルとURLをコピーしました