トピックス

知識創造研究室 by CRM(xRM)

Dynamics 365 開発者向けの新機能をご紹介

みなさん、ちわーっす!
早いもので2017年も1月が終わりを迎えようとしていますね。皆さんにとって2017年が良い一年となることを心より願っておりますm(_ _)m

さて、今回はちょっと遅くはなりましたが、Dynamics 365の新機能を簡単にご紹介したいと思います。
それでは開発者向け新機能とは何ぞや?というところから始めていきたいと思います。

開発者向け新機能とは簡単に言うと「新しいカスタマイズ方法」というのが一番ピッタリです。
例えば、Dynamics CRM 2015 Update1 にてWeb API のプレビュー版が公開され、Dynamics CRM 2016 で正式リリースになったWeb API が開発者向けの新機能です。(と、言い切ったものの線引きは難しいのでなんとなく開発者向けっぽいな~って感じで見てくださいw)

それでは機能をご紹介していきましょ~♪♪♪

データ エクスポート サービスの構成と管理設定を管理

Azure 上に用意したSQL Server にエンティティ単位にコピーをとることができる機能です。Azure 環境が必要なので詳しくは見れていませんが、Dynamics 365 のエンティティ設定で[変更履歴]が有効になっている必要があります。こちらの機能を使用すれば Azure 上のデータベースにDynamics 365のデータを(ほぼ)リアルタイムに保存できるので、分析に使用したり、その他参照するだけの機能などに活用できます。機会があればブログで試した結果を報告させてもらいたいと思います。(今日は書きません・・すいませんm(_ _)m )

Dynamics 365 Web API の拡張機能

Dynamics CRM 2016 で正式リリースされた Web API の機能拡張です。今回の拡張では下記のことが出来るようになりました。

Outlook 用 Dynamics 365 がオフラインのときに、ローカルデータにアクセス
以前まではOutlook 用 Dynamics 365 がオフラインのときに、サーバーにアクセスしようとしてエラーになっていました。が、今拡張によってローカルデータにリダイレクトされるようになったため本当の意味でのオフライン機能となりました。
作成または更新時にエンティティ データを返却
作成、更新と同時に対象レコードの情報を取得することが可能となりました。作成や更新の場合、HTTPステータス 「204(コンテンツなし)」で返されていたのですが、「200」で返却させることが可能になりました。
メタデータ参照時に名前による指定
例えばエンティティのメタデータを参照するのに MetadatId を特定して詳細なエンティティメタデータの取得をしていましたが、Logical Name 属性をキーとして取得することが可能となりました。これは代替キーが設定されたと推測されます。対象はエンティティ、フィールド、関連、グローバルオプションセットです。

その他バグ修正となっています。

日付による活動の並べ替え方法を制御

活動エンティティにsortdate というフィールドが追加されました。このフィールドに日付を設定することでタスク、予定、メール、電話などの全ての活動を一覧で見るときに並べ替えキーに指定できるというものです。ただ、別途カスタマイズでsortdate フィールドに値を設定をしなければなりません。

プログラムでの製品プロパティの作成や管理をサポート

製品にプロパティという任意で設定できるものがあるんですが、そのプロパティをSDKで操作が可能となりました。(製品エンティティはそもそも使い方が難しいので・・・ふぅ~んとしか思わなかったのは内緒ですwww)

モジュール型のビジネス アプリケーションに対するプログラムによるアクセス権の定義

モジュール型のビジネスアプリケーションってなんやねん!って感じですが、これはアプリデザイナー(Dynamics 365の新機能)で作成されるアプリです。こちらのアプリに対してSDKを使用したアクセス権の定義が新たに追加されました。(新機能なんだからそら追加されますよねw)

ビュー列のツールヒント テキストが付いたアイコンを追加

ビューのレコードに対してアイコン画像を表示できるようになりました。つまり、レコードの値を参照してWebResourceに登録されたアイコン画像の表示を分けるということが出来るようになります。ビューにおける直感的な優先度分けなどに活用できそうな機能です。(1レコードずつWebResourceにアクセスしたり、JavaScriptが動いたりと性能問題にならなければいいですが・・・)

Dynamics 365 モバイル クライアントでネイティブのデバイス機能を使用するためのクライアント API

モバイル 用 Dynamics 365 で新しいクライアント API が追加されました。

Xrm.Utility.getCurrentPosition
デバイスの geolocation 機能を使用して、現在の場所の緯度・経度を返します。
Xrm.Utility.getBarcodeValue
デバイス カメラを使用してスキャンした製品コードなどのバーコード情報を返します。

モバイル限定で上記の2つのAPIが追加されました。両方とも新しい事を行うにはもってこいの機能ですね。楽しみです(笑)

サーバー間の認証

Dynamics 365とサーバー間でデータのやり取りを行う場合に新たにユーザーライセンスを割り当てる必要がない仕組みの公開です。つまりAzure AD上にユーザーを作成し、別の Web アプリや Web サービスからの認証を行います。メリットはライセンス費用がかからない点ですかね。通信もセキュアかつシームレスと言う事なので、安心できます(サーバー間に限らずセキュアかつシームレスがいいんやけどw)

プロセスの強化

プロセス(ワークフローや操作)からDynamics 365標準のアクションが実行できるようになりました。営業案件の「受注としてクローズ」や「再計算」、所有者チームへのユーザー追加など今まで自動化するにはプログラムを介さないとできなかったことが出来るようになりました。これはとても有益なことです。みなさんも使ってみてください

今回はここまでとします。その他フィールドサービスやモバイルオフライン、対話型サービスなどにも機能が追加されたこともあるのでご興味ある方は調べてみてください。機会があればそれぞれに対してもう少し深堀してサンプルの公開なども出来るといいなぁと思っています。

次回は Web API の新機能を踏まえてレコード作成や更新について書こうかなぁと・・・書かないかもしれないですが(笑)

※ 記事の内容は個人発信の参考情報です。記事内容のご利用は、ご自身の判断でお願いします。

この記事を書いた人
原田 研吾

文系プログラマ(.NET Framework、Java)。
25歳から始めたプログラムは死ぬ気で頑張った(誰も褒めてくれないので自分で誉めてます)。
気が付けば製品開発部のマネージャー・・・
弊社Dynamics CRM トレーニングの講師をやったりもします。
事業部やら役職やらありますが、『事業部内の便利屋』が一番フィットする肩書です。
アーカス・ジャパン株式会社 CRM製品
CRM製品に関するお問い合わせ
TEL 06-6195-7501
お問い合わせはこちら

同じカテゴリの記事

Translate »