Dynamics 365のブログ
2019.03.11

Dynamics 365 機能拡張 – Workflow Tools

Dynamics 365 カスタマイズ

1291842949
Author: Takafumi Noguchi
 LinkedIn

Dynamics 365 ワークフローの機能を大きく拡張する Dynamics 365 Workflow Tools をご紹介します。以前、サードパーティ製のおすすめソリューションは何か でおススメしたソリューションの利用方法になります。

重要事項:これからご紹介する Dynamics 365 Workflow Tools はサードパーティー製ソリューションです。もしご自身の環境で利用される場合は、十分な検証を行った上、自己責任でご利用ください。また、当サイトに掲載された内容によって生じた損害等の一切の責任を負いかねますので、ご了承ください。

 

目次

  • Dynamics 365 Workflow Tools について
    • Workflow Tools 機能一覧 (1.0.54.1)
  • Dynamics 365 Workflow Tools のインポート
  • Workflow Tools の利用
    • レコードの共有設定と解除
    • レコード ID を取得
    • 数値フィールドの四則演算
  • その他の機能も

Dynamics 365 Workflow Tools について

Dynamics 365 Workflow Tools は、Demian Raschovan 氏により開発された Dynamics のソリューションで、Dynamics 365 のワークフローの機能を大きく改善します。今回インポートするのは、バージョン 1.0.54.1 ですが、72 もの機能が追加されます。

その中でも、特定のユーザーやチームへの共有設定や、2つのフィールドの四則演算、レコードIDの取得などの機能は便利で私の環境でもよく利用しています。

Workflow Tools 機能一覧 (1.0.54.1)

Dynamics 365 Workflow Tools の機能一覧になります。

1: Force Calculate Rollup Field
2: Apply Routing Rules
3: Query Values
4: Share Record With Team
5: Share Record With User
6: Unshare Record With Team
7: Unshare Record With User
8: Check If User is in Role
9: Check If User is in Team
10: Add To Marketing List
11: Remove From Marketing List
12: Clone Children 
13: Clone Record
14: Set Process
15: Rollup Functions
16: Entity Attachment To Email
17: Pick From Queue
18: Queue Item Count
19: Add Role To User
20: Add Role To Team
21: Remove Role From User
22: Remove Role From Team
23: Set User Settings
24: String Functions
25: Delete Record
26: Entity Json Serializer
27: Qualify Lead
28: Add Marketing List To Campaign 
29: Copy Marketing List Members 
30: Copy To Static List

31: Is Member Of Marketing List
32: Remove From All Marketing Lists
33: Numeric Functions
34: Email To Team
35: Set Process Stage
36: Entity Mobile Deep Link
37: Send Email 
38: Geocode Address
39: Add User To Team
40: Remove User From Team
41: Associate Entity
42: Goal Recalculate
43: Get Initiating User
44: Encrypt Text
45: Check Associate Entity
46: Set State
47: Update Child Records
48: Disassociate Entity
49: Insert Option Value
50: Delete Option Value
51: Sales Literature To Email
52: Send Email From Template To Users In Role
53: Send Email To Users In Role
54: Calculate Price
55: Execute Workflow By ID Thanks to Steve Mordue
56: JSON Parser
57: Date Functions
58: Calculate Agregate Date
59: OrgDBSetting Update
60: OrgDBSetting Retrieve 

61: Translate Text
62: Currency Convert
63: Get Record ID
64: Retrieve User’s BU Default Team
65 Get App Module ID
66 Get App Record Url
67 Is Member Of Team 
68 Count Child Entity Record 
69 Get Multi Select OptionSet
70 Map Multi Select OptionSet
71 Set Multi Select Option Set
72 Delete Record Audit History

引用元:Dynamics 365 Workflow Tools  (1.0.54.1)

英語ですが各機能の説明は、上記のページがご確認ください。ここでは触れません。

Dynamics 365 Workflow Tools のインポート

Dynamics 365 Workflow Tools をインポートします。Dynamics 365 Workflow Tools は、App Store で検索すると表示されますが、ここから「今すぐ入手する」をクリックしても、うまくインポートできません。

そのため、Dynamics 365 Workflow Tools の .zip ファイルがある GitHub へアクセスします。

URL はこちら:https://github.com/demianrasko/Dynamics-365-Workflow-Tools

まずは、バージョンですが、左側の 「Branch:master」を展開して、「Tags」より 1.0.54.1 をチェックします。

そして右側にある「Clone or download」で「Download ZIP」をクリックします。

Dynamics 365 のソリューションで「インポート」からダウンロードした .zip ファイルをアップロードします。

ファイルが正しければ、以下のような画面になるので「インポート」をクリックします。

正常に完了すれば、ソリューション一覧に Dynamics 365 Workflow Tools が表示されているはずです。

これでソリューションがインポートされました。

 

Workflow Tools の利用

それでは、ワークフローを作成して、Dynamics 365 Workflow Tools を実際に使ってみます。「設定」の「プロセス」から新規にワークフローを作成します。そして「ステップの追加」を開くと、下図のように Workflow Tools がインポートされて利用できる状態になっていることがわかります。

 

   

それでは、以下のワークフローを作成してみます。

レコードの共有設定と解除

この共有機能はどうしても必要だったので Dynamics 365 Workflow Tools で実現できることがわかった時、歓喜した記憶があります(笑)

共有設定

まずは「ステップの追加」で、所有ユーザーの部署が “営業部” なら という条件を設定して、さらに追加して、「msdyncrm Workflow Tools」の「Share Record With Team」を追加します。これでチームに対してレコードを共有するという設定ができます。

「プロパティの設定」をクリックします。

「Sharing Record URL」は対象のレコードですが、これは “レコード URL(動的)” を設定します。これでワークフローが実行されたレコードに対して共有を行うことができます。「Team」では共有したチームを選択して、Permission で必要な共有設定を行います。設定が完了したら保存して閉じます。

共有解除

共有解除を行う場合は「Unshare Record With Team」を使います。(ユーザーの場合は「Unshare Record With User」)

共有解除では、「Sharing Record URL」と「Team」のみを設定します。これで対象のレコードから共有解除ができます。

共有設定と解除は、1ステップで1チームもしくは1ユーザーなので、レコードに共有されているすべてのチームを解除してから共有設定を行う場合は、解除したいチーム数分、ステップを定義する必要があります。

この場合、共有解除のワークフローだけ別に作成して、子ワークフローとして呼ぶという手順でもいいかと思います。

 

レコード ID を取得

レコードの ID を取得する作業も苦労しました。Javascript や Data Export Service で Azure SQL 上にデータをエクスポートすれば ID を取得してフィールドに格納できたのですが、レコード作成時に自動的にフィールドに ID をセットすることができませんでした。

Dynamics 365 Workflow Tools も古いバージョンだとなかったようですが、1.0.54.1 では「Get Record ID」でレコードの ID を取得できるようになりました。

「プロパティの設定」をクリックして、「Record URL」に  “レコード URL(動的)”  を設定します。

「Get Record ID」でレコードのURLからIDを取得して、それを別のフィールドにセットする場合は、「レコードの更新」を後のステップに追加します。右パネルの「検索」を展開すると、「ローカル値」に「Get Record ID」のステップ名が表示されています。

「Record ID」として「追加」から「OK」をクリックすれば、フィールドに設定できます。

これでレコードのIDをフィールドに、レコードの ID をワークフローで取得できるようになりました。ワークフローを動作させてみると、下図のように ID をテキストでセットしています。

レコード作成時に動作するワークフローとして作成して利用するといいと思います。

 

数値フィールドの四則演算

10進数のフィールド A と B を計算する「Numeric Functions」をステップとして追加します。

「プロパティの設定」をクリックすると、下図のように「Number 1」と 「Number 2」 の数値フィールドをセットできるようになっています。今回は、時価総額の計算として、株価 と 発行済株式数 をそれぞれセットしました。

先ほどと同じように、「Number 1」と 「Number 2」 の掛け算をして、その結果を「時価総額」というフィールドに入力するので、「レコードの更新」をステップに追加します。右パネルの「検索」を展開すると、「ローカル値」に「株価 と 発行済株式数 をセット」のステップ名が表示されています。

四則演算を選択できるので、”Multiply” を選択します。

「時価総額」のフィールドに追加します。

これでOKです。ワークフローをアクティブ化して実行すると、以下のように「時価総額」が計算されました。

 

その他の機能も

Dynamics 365 Workflow Tools の一部の機能のみをご紹介しました。その他もかなりの機能が用意されているのでお時間がある際にお試しください。

今回はここまで。

この記事を読んだ方は他にこんな記事を読んでいます。

  • ワークフロープロセスの無限ループ対策ワークフロープロセスの無限ループ対策
  • Dynamics 365 計算フィールドの活用Dynamics 365 計算フィールドの活用
  • Dynamics 365 のライセンスコストについてDynamics 365 のライセンスコストについて
  • サードパーティ製のおすすめソリューションサードパーティ製のおすすめソリューション
  • Dynamics 365 インスタンスの管理Dynamics 365 インスタンスの管理
  • メジャーアップデート適用方法の変更【2019.08】メジャーアップデート適用方法の変更【2019.08】

人気の記事

    Ribbon Workbench:フィールド値でボタンを表示・非表示にする

    Ribbon Workbench:フィールド値でボタンを表示・非表示にする

    • 2020.05.5
    • Dynamics 365 カスタマイズ [More]
    Dynamics 365 アプリの設定

    Dynamics 365 アプリの設定

    • 2017.10.26
    • Dynamics 365 の初期設定 [More]
    オンプレミスの SQL Server からデータを取得する

    オンプレミスの SQL Server からデータを取得する

    • 2019.06.11
    • 他システム連携
    Dynamics 365 プロセスの基本操作

    Dynamics 365 プロセスの基本操作

    • 2018.07.28
    • Dynamics 365 の管理
    Dynamics 365 ポータルアドオンの利用

    Dynamics 365 ポータルアドオンの利用

    • 2019.05.13
    • Dynamics 365 の初期設定
    Dynamics 365 の製品カタログで営業力を高める

    Dynamics 365 の製品カタログで営業力を高める

    • 2018.02.6
    • Dynamics 365 for Sales [More]
Dynamics 365のブログ / Dynamics 365 カスタマイズ / Dynamics 365 機能拡張 – Workflow Tools
Dynamics 365のブログ

© Copyright ANDAZE. All rights reserved.