Power AutomateのBC用コネクタのトリガー When a record is created(v3) を使用して、「得意先マスタレコードが作成されたらすぐにブロック設定する」というクラウドフローを作成してみます。
1. クラウドフローを作成する
Power Automateの画面からAutomated cloud flowを新規作成。
適当に名前を付けて、BCコネクタを検索し、When a record is created トリガーを選択し、Createボタンをクリック。
Environment名、Company名を指定。APIカテゴリは V2 を指定し、テーブル名は Customers を指定。次のステップを作成。
Business Centralのコネクタは SaaS と On-Premise の2種類あるので SaaS の方を指定。Get record アクションを使ってトリガーで検知したレコードの情報を取得するのが定石。
トリガーで取得したRow IDをセット。 Environment名、Company名、APIカテゴリ、テーブル名はトリガーのステップと同じ。
続けて Update record(V3) アクションのステップを追加。 Environment名、Company名、APIカテゴリ、テーブル名、Row ID は Get record アクションのステップと同じ。
下の方にスクロールして、Blocked に ALL を指定。保存してクラウドフローの作成は完了。
2. クラウドフローの動作確認
実際に動かしてみます。BCの得意先一覧から + New で新規作成。
Cronusだとテンプレートからの選択を要求されるが、環境によっては要求されない。
新規得意先作成画面でEnterを押すと番号が採番される。ほどなく右上に Saved と表示され、レコードが作成される。(BCは保存ボタンが存在せず、定期的に保存が実行される。)
クラウドフローの実行履歴を見に行くと、実行されて完了している。
BCの得意先一覧を見ると新規作成したレコードが確認できる。番号採番しただけなので名前すら入っていない状態。このレコードを照会する。
すると、項目「Blocked」に ALL が設定されていることが確認できる。
特に難しい点はないです。これで前回指摘した「レコードができた瞬間にBlockを掛ける」が実現できました。業務的にはこの後「許可なく勝手にブロックを解除できないようにする」という仕掛けが必要になります。(これはPower AutomateではなくてBCのワークフローで実現可能。)