Customer Engagement の Web リソース

Web リソースは Dynamics 365 Customer Engagement (on-premises) データベースに保存されている仮想ファイルで、一意の URL アドレスを使用して取得できます。

Web リソースの機能

Web リソースとは、html ファイル、JavaScript および CSS などの Dynamics 365 Customer Engagement (on-premises) Web アプリケーションの拡張に使用できるファイル、またいくつかの画像の形式を意味します。 Web リソースは URL 構文を使用して参照できるので、フォームのカスタマイズ、SiteMap、またはアプリケーション リボンに使用できます。

Web リソースの URL 構文では、相対パス参照が許可されています。 開発ツールで、Web リソースと互換性のあるファイル タイプを使用することにより、開発サーバー上に相互依存ファイルのグループを作成できます。 一貫した命名規則と相対パス参照を使用する場合、すべてのファイルを Dynamics 365 Customer Engagement (on-premises) にアップロードした後で、Web サイトが機能します。

Web リソースは Dynamics 365 Customer Engagement (on-premises) に保存されており、ソリューション コンポーネントなので、簡単にエクスポートして、設置型の Dynamics 365 Customer Engagement (on-premises) 展開や Dynamics 365 for Customer Engagement にインストールできます。 Web リソースは オフライン アクセス対応 Microsoft Office Outlook 用 Dynamics 365 ユーザーのデータと同期しているため、オフライン時にも使用できます。

フォーム エディターを使用して、フォーム対応の Web リソースをエンティティ フォームに追加し、構成できます。

Web リソースはレコードとしてデータベースに保存されているので、レコードを作成、取得、更新する標準的な手法を使用して、プログラムによって管理できます。 テキストベースの Web リソース (JScript、CSS、XML、XSL、RESX、HTML) は、アプリケーションで編集して保存できます。

Web リソースに関する制限事項

サーバー上でコードを実行するための ASP.NET(.aspx) ページの機能をサポートしている Web リソースの種類はありません。 Web リソースは、ブラウザーで処理される静的ファイルに限られています。 Web リソースには、Web サービス呼び出しを実行して Dynamics 365 Customer Engagement (on-premises) データを操作するためにブラウザーで処理されるコードを含めることができます。 詳細については、「Web リソースを使用した Customer Engagement データに関する作業」を参照してください。

Web リソースは、Dynamics 365 Customer Engagement (on-premises) Web アプリケーションのセキュリティ コンテキストを使用してのみ、使用できます。 スクリプト Web リソースにアクセスできるのは、必要な特権を持つ、ライセンスを受けた Dynamics 365 Customer Engagement (on-premises) ユーザーだけです。

サイズ制限

アップロードできる最大ファイル サイズは、Organization.MaxUploadFileSize プロパティによって決まります。 このプロパティは、Dynamics 365 アプリケーションのシステム設定電子メールタブで設定します。 この設定で電子メール メッセージ、メモ、および Web リソースに添付できるファイルのサイズを制限します。 既定の設定は 5 MB です。

Web リソースの種類

web リソースの作成には 10 種類のファイル形式を使用できます。 次の表は、それぞれで使用する各ファイル形式、許可されているファイル拡張子、種類の値の一覧を示します。

ファイル ファイル拡張子
Web ページ (HTML) .htm、.html 1
スタイル シート (CSS) .css 2
スクリプト (JScript) .js 3
データ (XML) .xml 4
イメージ (PNG) .png 5
イメージ (JPG) .jpg 6
イメージ (GIF) .gif 7
Silverlight (XAP) .xap 8
スタイルシート (XSL) .xsl、.xslt 9
イメージ (ICO) .ico 10
ベクター形式 (SVG) .svg 11
文字列 (RESX) .resx 12

Web リソースの参照

Web リソースの参照に使用できる方法はいくつかあります。

注意

  • 可能な場合は、$webresource ディレクティブを使用してください。 依存関係が確立されるのは、サイト マップまたはリボン コマンドで $webresource ディレクティブを使用している参照のみです。 Web リソースが相互参照している場合、依存関係は作成されません。
    • Silverlight Web リソースをエンティティ フォームまたはグラフの外側に表示するには、その Silverlight Web リソースのホスト ページとなる HTML Web リソースを作成します。 その後、$webresource: ディレクティブを使用して HTML Web リソースを開きます。

$webresource ディレクティブ

リボン コントロール、またはSiteMapのサブ領域から Web リソースを参照する場合は、常に $webresource ディレクティブを使用する必要があります。 XML が URL 値を許可している場合は常に $webresource ディレクティブを使用してください。 次のサンプルは、その使用方法を示しています。

$webresource:<name of Web Resource>  

注意

$webresource ディレクティブを使用すると、Dynamics 365 Customer Engagement (on-premises) によってソリューションの依存関係が作成または更新されます。

Xrm.Navigation.openWebResource

Xrm.Navigation.openWebResource 関数は、Web リソースの名前を渡すパラメーター、データ パラメーターで渡されるいずれかのクエリ文字列データ、およびウィンドウの高さや幅に関するおよび情報を含む、新しいウィンドウで HTML Web リソースをオープンします。

生成された URL には、キャッシュされた web リソースを読み込まれるように、一意の GUID にトークンが含まれます。

相対 URL

$webresource: ディレクティブの使用をサポートしていない領域から Web リソースを参照する場合は、相対 URL を使用できます。 相対 URL を使用できるようにするため、仮想ファイル構造を反映した Web リソースに一貫した命名規則を使用することをお勧めします。 ソリューション発行者のカスタマイズの接頭辞は、Web リソース名の接頭辞として常に含まれます。 これは、その発行者が追加するすべての Web リソースの仮想 "root" フォルダーを意味します。 スラッシュ (/) を使用して、Web サーバーが受け入れるフォルダー構造をシミュレートできます。

相互参照のため、常に別の Web リソースからの相対 URL を使用する必要があります。 たとえば、Web ページ Web リソース new_/content/contentpage.htm が CSS Web リソース new_/Styles/styles.css を参照するには、次のようにリンクを作成します。

<link rel="stylesheet" type="text/css" href="../styles/styles.css" />  

Web ページ Web リソース new_/content/contentpage.htm が Web ページ Web リソース isv_/foldername/dialogpage.htm を開くには、次のようにリンクを作成します。

<a href="../../isv_/foldername/dialogpage.htm">Dialog Page</a>  

注意

WebResources フォルダーを URL のルート パスとして使用する相対 URL は使用しないでください。 たとえば、/WebResources/<name of web resource> は使用しないでください。 ユーザーがサーバー上の複数の組織に属している場合、このパスは常にユーザーの既定の組織を参照します。 ユーザーが既定の組織を使用しない場合、および想定される Web リソースがユーザーの既定の組織に含まれていない場合は、Web リソースがユーザーの現在作業している組織内にあっても、ファイルが見つからないエラーが発生します。

完全 URL

次のサンプルでは、Web リソースの表示に使用できる URL の形式を示しています。

<Microsoft CRM URL>/WebResources/<name of web resource>  

アプリケーションによりこの URL が処理され、Web リソースの最新版が含まれるファイルが返されます。 この URL は次のように表示されます。

<Microsoft CRM URL>/%7B<version value>%7D/WebResources/<name of web resource>  

カスタマイズを公開するとバージョン値が更新され、ブラウザーで最新のキャッシュ済み Web リソースが確実に使用されます。 このため、Web リソースの相対パスか、Xrm.Navigation.openWebResource 関数、または可能であれば $webresource ディレクティブ を使用します (バージョン値が自動的に含められるためです)。 大きな Web リソースの場合、ファイルのキャッシュされたバージョンを使用しないと、パフォーマンスにかなりの影響がある場合があります。

次のサンプルは、Dynamics 365 for Customer Engagement の URL を示しており、ここで、MyOrganization は組織名で、new_/test/test.htm は Web リソース名です。

https://MyOrganization.crm.dynamics.com/WebResources/new_/test/test.htm  

注意

Web リソース名に '/' 文字とファイル名拡張子を含めることは、任意のベスト プラクティスです。

次のサンプルは設置型 Dynamics 365 Customer Engagement (on-premises)の URL を示しており、ここで myServer はサーバー名です。

http://myServer/MyOrganization/WebResources/new_/test/test.htm  

Dynamics 365 for Customer Engagement または設置型 Dynamics 365 Customer Engagement (on-premises) に対して機能する必要がある Web リソースを参照するコードを記述する場合は、getClientUrl 関数を使用する必要があります。

コミュニティ ツール

WebResources マネージャーは、Dynamics 365 Customer Engagement (on-premises) 用に XrmToolbox コミュニティが開発したツールです。 コミュニティ開発ツールのトピック、開発者ツール を参照してください。

注意

コミュニティ ツールは Microsoft Dynamics の製品ではなく、コミュニティ ツールに対するサポートは提供しません。 このツールに関するご質問は、その発行元にお問い合わせください。 詳細: XrmToolBox

関連項目

Dynamics 365 Customer Engagement 用のクライアント アプリケーション拡張機能の記述
アクセス可能な Web リソースの作成
Web ページ (HTML) の Web リソース
Silverlight (XAP) の Web リソース
スクリプト (JScript) Web リソース
画像 Web リソース
スタイルシート (XSL) Web リソース
データ (XML) Web リソース
スタイル シート (CSS) Web リソース
Web リソースのメッセージおよびメソッド
サンプル: データ パラメーターを使用した Web リソースへの複数の値の引き渡し
サンプル: Web リソースのユーティリティ
サンプル: Web リソースとしてのファイルのインポート
Web リソースでの Web サービス データの使用 (REST および SOAP エンドポイント)
Fiddler の AutoResponder を使用して Web リソース開発を合理化する