Dynamics CRM Online 2015 Update 1: 日付列の新機能
みなさん、こんにちは。
今回は Microsoft Dynamics CRM Online 2015 Update 1 で提供される
日付型の新機能を紹介します。
タイムゾーン非依存の日付サポート
Microsoft Dynamics CRM は複数のタイムゾーンユーザーをサポート
するために、日付型はすべて UTC としてデータベースに値が保存
されており、表示する際にユーザーのタイムゾーンに合わせた変換が
行われます。これは大概のシナリオでうまく機能します。
しかし誕生日のように、タイムゾーンに関係なく同じ日付を保持する
事が求められるようなデータに対しては文字列型を使っていました。
今回のリリースでは 2 種類のタイムゾーン非依存型をサポートします。
日付のみ
誕生日など、時刻までデータを保持する必要がない場合に使います。
時刻は 0:00 が自動的に入ります。
タイムゾーン非依存
画面や SDK から入力された時間がそのままデータベースに保存され、
表示される際もタイムゾーンの変換を行いません。
ユーザーローカル
これまでと同じ動作となります。
では早速試してみましょう。
1. ブラウザで Microsoft Dynamics CRM Online に接続します。
2. 任意のエンティティのカスタマイズ画面よりフィールドを追加します。
ここでは取引先担当者を使ってみます。
3. 比較のため、まずはこれまでの形式で日付フィールドを作成します。
4. 続いて「日付のみ」動作でもう 1 つフィールドを作成します。
5. さらに「タイムゾーン非依存」でも作成します。
6. 作成した 3 つのフィールドをフォームに配置して、カスタマイズを
公開します。
7. 任意の取引先担当者レコードを開いて、誕生日を入力します。尚、
ユーザーのタイムゾーン設定は GMT+9 の日本時間とします。
8. レコードを保存します。
9. ユーザーのオプションよりタイムゾーンを変更します。ここでは
(GMT-4) の大西洋標準時間にしてみました。同じ担当者レコードを
表示します。ユーザーローカル動作の場合、日付が 1 日遡っている
事を確認します。
既存日付フィールドの動作変更
手動での変換
日付フィールドの動作が「ユーザーローカル」の場合、「日付のみ」
または「タイムゾーン非依存」に変換することができますが、一度
変更するともとには戻せません。変更は既存の日付型フィールドを
開いて、動作を変えるだけで完了です。
動作変更時の詳細な変換指定
動作を変更した場合、既定ではデータベースに保存している UTC の
値を変換先の値として利用します。もしレコードの所有者や変換を
実施しているユーザーのタイムゾーン、または任意のタイムゾーンで
変換をかけたい場合は SDK を利用します。詳細は後日紹介します。
まとめ
タイムゾーンに依存しない日付データを利用すると、意図した日時を
表示できるほか、形式は日付型のため Excel で分析する場合などにも
便利です。是非お試しください!
- 中村 憲一郎