Open棟梁Project - マイクロソフト系技術情報 Wiki
目次 †
概要 †
- マーケティング・モジュール
- 営業モジュール
- サービス・モジュール
分野におけるCRM(顧客関係管理)を中心に構築されている。
その一方で、民間・政府・非営利のあらゆる部門における広範囲な
機能を制御可能な多様性からxRMという言葉が使われるようになってきている。
構成 †
カスタマイズは
から構成される。
方法 †
カスタマイズの方法には
- レポート サービス
- フィルター ビュー
- SDKによるアドオン開発
などがあり、これを以下のような
テクノロジ・カットの詳細区分に分解する。
ポイント アンド クリック †
手法 †
GUIツールだけで変更可能な手法
対象 †
手法 †
対象 †
- フォーム スクリプト イベント ハンドラー
フォーム イベント ハンドラーが JavaScript Web リソースで定義された関数を呼び出すように構成する。
- コマンドバー (リボン) コマンド
<CustomRule?>(RibbonDiffXml?) or <JavaScriptFunction?>(RibbonDiffXml?)
要素を使用し、JavaScript Web リソース内に定義された関数を呼び出すアクションを定義する。
- Web リソースと IFRAME
HTML Web リソース内で JavaScript Web リソースを使用、親子で対話できる。
プラグイン †
Microsoft Dynamics CRM SDKを使用したビジネス ロジックのプラグイン メカニズム。
設置型、IFD、およびOnline(分離モード) の Microsoft Dynamics CRM 展開で使用可能。
アセンブリの %installdir%\server\bin\ フォルダーへの追加は、
設置型および IFD サーバー インストール型のみでサポートされている。
手法 †
- Microsoft Dynamics CRM SDK
- Web アプリケーションの設定
対象 †
- ワークフロー定義
ワークフロー ルールから呼び出されるユーザー定義ワークフロー活動 (アセンブリ) の作成
XMLを直接編集 †
エクスポートしたソリューション パッケージのXMLを直接編集
Webサービスの使用 †
手法 †
Webサービスを使用した外部アプリケーションの開発
- DiscoveryService?
- OrganizationService?
- Organization Data Service
- OData エンドポイント
- 最近のアプリケーションの SOAP エンドポイント
- DeploymentService?。
対象 †
Webサービスを使用した
フィルター ビューの使用 †
手法 †
フィルター ビューを使用した参照系(更新は不可)の外部アプリケーションの開発
対象 †
フィルター ビューを使用した
ソリューション †
概要 †
- 特定のビジネス要件一式を満たすために
システムに対して行うカスタマイズを整備するための手段。
- カスタマイズ
- カスタマイズに対応するカスタム ソリューションを新規作成する。
- 既定のソリューションを直接編集することもできる。
- 推奨:ビジネス要件のまとまり毎にカスタム ソリューションを新規作成する。
利点 †
- 他のコンポーネントに気を取られること無く、
必要なコンポーネントのみに取り組むことができる。
- 元の要件に複数のソリューションを関連付けることで、変更を記録できる。
- 開発環境からのエクスポートと、テスト運用環境へのインポートが可能。
- エクスポートに含まれるのは差分のみ。サイズが小さくて済管理も容易。
- エクスポートは、変更管理レコードの一部として保存できる。
- 過去のソリューションを使用して変更をロールバックできる。
構成 †
システム ソリューション †
- Microsoft Dynamics CRM 内に定義された既定のソリューション コンポーネント
- 組織作成時に作成され、システムの全コンポーネントを含んでいる。
- 既定のアプリケーションの動作を定義している。
- システムが複雑化すると、既定のソリューションを使用した方法では対応が困難になる。
このため、カスタム ソリューションを使用して、コンポーネントを分割する。
マネージド ソリューション †
- 主に、ISVがアドオンを顧客に販売するような配布のケースで使用する。
- 開発用用途のアンマネージド ソリューションをエクスポート&パッケージ化したもの。
- 配布とインストールを目的とする完成したソリューション。
- インポート・エクスポート
- システム コンポーネントは変更されない。
- アンマネージド ソリューションの部分はロールバックできる。
- アプリケーションの動作は、マネージド ソリューションの変更の組み合わせになる。
アンマネージド ソリューション †
- アンマネージド カスタマイズをグループ化したもの。
- インポート・エクスポート
- システム コンポーネントを変更する。
- 変更の上書き&上書きの動作になる。
- ロールバックできない(コンポーネントは削除されない)。
- インポート順が異なると、結果が異なってくることがある。
アンマネージド カスタマイズ †
- 開発中のアンマネージド カスタマイズの実体は、すべて既定のソリューションに含まれる。
- システム ソリューションはアンマネージド カスタマイズできる。
- マネージド ソリューションはアンマネージド カスタマイズできる。
新規作成 †
ソリューション(カスタム ソリューション)を新規作成する。
- 始め、開発のためのアンマネージド ソリューションを作成する。
- 開発中のアンマネージド カスタマイズの実体は、すべて既定のソリューションに含まれる。
- アンマネージド ソリューションは、アンマネージド カスタマイズの参照のみ保持する。
- アンマネージド ソリューションを削除すると、
既定のソリューションからアンマネージド カスタマイズも削除される。
ロール †
以下のロールを持つユーザでCRMの組織にサインイン。
手順 †
- ナビゲーション バーの[Microsoft Dynamics CRM]の[設定]、[ソリューション]、[新規]。
- [新しいソリューション]フォームが表示される。
- 必要事項を入力し保存。
- 表示名:ソリューションの呼称(変更可能)
- 名前:英数字のみ(変更不可能)
- 発行元:マネージド ソリューションで特に重要になる。
- ソリューション・コンポーネントの発行元を特定可能な接頭辞を定義する。
・カスタマイズした組織:カスタマイザー(個人、組織、企業)
・ビジネス要件:カスタマイズ(モジュール名)
- 接頭辞:8文字以内
・新規コンポーネント名の先頭に付与され名称の衝突を抑止する。
・接頭辞 = カスタマイズした組織 + ビジネス要件などとする。
- 補足:組織を作成すると、”既定の発行者”という発行元が自動的に作成される。
- バージョン:バージョン番号(数字のみ)
- メジャー.マイナー.ビルド.リビジョン
- 推奨:年.月.日.リビジョン
- 説明:ソリューションの機能の概要(2,000文字)
- エクスポート時のファイル名
"名前"+"バージョン"
複数ソリューションの用例 †
開発 †
複数のカスタマイザーによるカスタマイズ
バージョン †
完了した作業に新しい要件が追加された時。
- 以下の場合は新ソリューションに、新コンポーネント追加を行う。
エクスポート・インポート †
エクスポート †
- ZIP形式でのエクスポート
以下が同梱されている。
- 用途
- 開発-リリースまで。
- 開発-テスト-運用環境
- 受け入れテスト、トレーニング
インポート †
- バージョン番号で管理されている。
- インポート元の方がバージョン番号が大きい場合はインポート不可能。
- コンポーネントを含まないソリューションをインポートしてもコンポーネントは削除されない。
- ダウン・レベリング
CRMのマイナーバージョンが違う場合で、旧バージョンのCRMがインポートする場合、
旧バージョンでサポートされない機能(コンポーネント/プロパティ)を削除する。
ソリューション コンポーネント †
カスタマイズ ツールまたは API を使用して作成され、アプリケーション内で完全にホストされる。
種類 †
スキーマ †
- 関連付け(つながりロール)
- グローバル オプション セット
ユーザインターフェイス †
- アプリケーション リボン
- サイトマップ
- フォーム
- エンティティ リボン
- Webリソース
プロセス/コード †
テンプレート †
セキュリティ †
- セキュリティ ロール
- フィード レベルのセキュリティ プロファイル
データ レコード †
- データ レコード
- ユーザ
- チーム、部署
- キュー
- 目標
- 情報カテゴリの階層
- 製品カタログに関連したもの
- データレコードを使用したソリューション コンポーネント
- 信頼性を担保する方法。
- データインポートウィザードを使用する。
- インポートフィアルにレコードのGUIDを含める。
外部コンポーネント †
アプリケーションの外部で動作するソフトウェアは、
インストーラー プログラムなど、従来の方法で
アプリケーションをパッケージ化してインストールする。
メタデータ †
コンポーネントの中にはメタデータを形成しているものもある。
- コンポーネント間の連携
- コンポーネントの体裁(見た目)
- SQLデータベースへのデータ格納方法
新規作成 †
ロール †
同上
手順 †
- ナビゲーション バーの[Microsoft Dynamics CRM]の[設定]、[ソリューション]、目的のソリューションをダブル クリック。
- ソリューションエクス プローラーのナビゲーション ウィンドウで[コンポーネント]をクリック。
- [コンポーネントの種類] の一覧で追加する種類をクリックし、コマンド バーで、[新規] または [既存の追加] を選択。
エンティティ †
下位コンポーネント †
また、エンティティを作成すると以下のコンポーネント
(for メタデータ・体裁)が自動的に作成され、個別の削除は不可能。
内部的には、エンティティに対応したDBのテーブルも作成されている。
フィールド †
- エンティティのプロパティ
- DBやビューの列に対応
- フォームのInput, Output, Editフィールドに対応するコントロール
フォーム †
- エンティティに対応するフォームUI
- 以下の各種コンポーネントが含まれる。
- フィールド
- サブグリッド
- レイアウト
- イベントハンドラ&スクリプト
- 格納先:SystemForm?
ビュー †
- 所謂ビューだが、SQLを使用していない。
- 格納先:SavedView?
グラフ †
- 常にビューとペアで使用される。
- データセットから棒、折れ線などの各種グラフを生成して表示。
- 一部エンティティには既成のグラフがあり、このカスタマイズも可能。
新規・公開・削除? †
システム エンティティ †
システム エンティティは関連付けなどの依存関係があるコンポーネントは削除できない。
依存関係 †
依存関係の例 †
必須コンポーネント †
- 必須コンポーネント リストに表示される。
- しかし、エンティティの削除を妨げない。
- 必須コンポーネントが一度でもエクスポートされていれば以降ソリューションへの追加は不要。
- 多くの必須コンポーネントはシステム エンティティのため(、警告が表示されても)、ソリューション追加は不要。
CRM グラフ・ダッシュボードのカスタマイズ? †