Morning Girl

Web API, Windows, C#, .NET, Dynamics 365/CRM etc..

【Dynamics CRM】【8.0】Wordテンプレートの利用

Dynamics CRM 2016(8.0)の新機能紹介です。

今回はWord連携のテンプレート機能について紹介します。

概要

Dynamics CRMは初期のころからWordの連携機能として差し込み印刷というものが付属していました。

差し込み印刷テンプレートによる作業

しかし、2013のころからでしたでしょうか。機能としては残っているものの、リボン(コマンドバー)から差し込み印刷出力ボタンが消えてしまい、実質標準提供のもの以外は使えない状態となっていました。

それが今回のリリースでは、この差し込み印刷に変わる機能として、Wordテンプレート機能が提供されました。

使い方としては、以前の差し込み印刷と同様に、Dynamics CRMのデータを埋め込んだWordドキュメントを生成することができ、DMや見積もりなどが作成などに活用できるかと思います。

解説は以下のURLが一番わかりやすいかなと思います。

Using Word templates in CRM | Microsoft Dynamics CRM

サンプル

Excelテンプレートと同様に、Wordテンプレートでもいくつかサンプルが標準として提供されています。

たとえば営業案件には以下のようなテンプレートが提供されています。

f:id:sugimomoto:20160111235314p:plain

f:id:sugimomoto:20160111235326p:plain

営業案件の概要というテンプレートで、営業案件エンティティのデータと、そのデータに関連するデータも取得して表示可能です。(画面ではサンプルデータを入れてませんでした……。)

上記のように、そのエンティティだけでなく、1:N、N:1の関連データも取得可能です。

作り方

WordテンプレートはExcelテンプレートと同様に、個人用テンプレートとシステムテンプレートの2種類が存在します。

個人用テンプレートは先のコマンドバーから作成することが可能です。

システムテンプレートはExcelテンプレートと同様に[設定]→[テンプレート]→[ドキュメント テンプレート]から登録します。

f:id:sugimomoto:20160111235650p:plain

[新規]をクリックし、Wordテンプレートを選び、対象とするエンティティを選択します。

f:id:sugimomoto:20160112000059p:plain

f:id:sugimomoto:20160112000104p:plain

次の画面でエンティティの選択画面が表示されます。

1:N、N:1、N:Nの中から対象とするエンティティをそれぞれ選択することができます。

選択したエンティティの情報をWordの画面から挿入できるようになります。

f:id:sugimomoto:20160112225542p:plain

選択後、テンプレートのダウンロードを選択すると以下のようなまっさらWordファイルがダウンロードできます。

f:id:sugimomoto:20160112225330p:plain

なお、初期のWord状態ですとテンプレート開発ができませんので、[ファイル]→[オプション]→[リボンのユーザー設定]から

開発タブを表示するように設定しておきます。

f:id:sugimomoto:20160112225304p:plain

そうしますと、以下のように[開発]タブ→[XMLマッピングウィンドウ]を選択し、CRMXML情報が格納されているデータを選択できるようになります。

f:id:sugimomoto:20160112230130p:plain

リストを開いていくと、対象のエンティティのフィールド名一覧が表示されます。

右クリックメニューからそれぞれの種別に応じた挿入が可能になっています。

f:id:sugimomoto:20160112230433p:plain

フィールド一覧を下にスクロールしていくと、関連エンティティの項目が表示されます。

ここで、例えばN:Nの競合企業を挿入したい場合は、competitor_opportunityを右クリックすることで繰り返し用フィールドが挿入できます。

f:id:sugimomoto:20160112230942p:plain

実際には、表などで挿入したい行を選択して、上記コントロールを付ける形になります。

今回は単純に、営業案件名と競合企業名一覧を挿入するテンプレートを作ってみました。

f:id:sugimomoto:20160112233433p:plain

作成後はそのまま保存して、テンプレートの[アップロード]から登録するだけです。

f:id:sugimomoto:20160112233153p:plain

f:id:sugimomoto:20160112233200p:plain

こんな感じで登録したテンプレートが利用できるようになります。

f:id:sugimomoto:20160112233208p:plain

以下のようにWordをダウンロードできると、データが挿入された状態で表示されます。

f:id:sugimomoto:20160112233134p:plain

差し込み印刷を作成するときより、ずいぶん簡単になったかなと思います。

物理名称を確認するのが少し手間ですが……。

備考

そういえば、少し悲しいことがありまして、複数のレコードに対して実行はできません。

差し込み印刷ではできたんですが、、、。

以前の差し込み印刷のように連続印刷などで扱いたい要望がある場合は要注意です。