このページは役に立ちましたか。
このページのコンテンツについての ご意見をお待ちしております
その他にご意見はありますか。
残り 1500 文字
URL を使用してフォーム、ビュー、ダイアログおよびレポートを開く

URL を使用してフォーム、ビュー、ダイアログおよびレポートを開く

適用対象: CRM 2015 on-prem, CRM Online

URL アドレス指定が可能な要素を使用すると、他のアプリケーションに Microsoft Dynamics CRM のフォーム、ビュー、ダイアログ、およびリポートへのリンクを含めることができます。これにより、他のアプリケーション、レポート、または Web サイトを容易に拡張できるため、ユーザーはアプリケーションを切り替えなくても情報を表示したりアクションを実行したりできるようになります。

noteメモ
  • URL アドレス指定が可能なフォーム、ビュー、ダイアログ、およびレポートは、Microsoft Dynamics CRM のセキュリティを回避することはできません。セキュリティ ロールに基づいて、ライセンスを受けた Microsoft Dynamics CRM ユーザーだけが、表示されるデータとレコードにアクセスできます。

  • アプリケーション内で Web リソースを使用してエンティティ フォームをプログラムで開くときは、openEntityFormXrm.Utility. を使用します。window.open は使用しないでください。

  • ページが Xrm.Utility.openEntityForm 関数にアクセスできないそれ以外のアプリケーションでは、window.open またはリンクを使用してエンティティの特定のレコードまたはフォームを開きます。アプリケーション全体が 更新エンティティ に対して開きます。

URL アドレス指定が可能なフォームとビュー

すべてのエンティティ フォームとビューが main.aspx ページに表示されます。このページに渡されたクエリ文字列パラメーターによって、表示される内容が制御されます。たとえば、次のようになります。

設置型 Microsoft Dynamics CRM の新しい取引先企業エンティティ レコード フォームを開く場合:
http://mycrm/myOrg/main.aspx?etn=account&pagetype=entityrecord
Microsoft Dynamics CRM Online の id が {91330924-802A-4B0D-A900-34FD9D790829} の取引先企業エンティティ レコード フォームを開く場合:
http://myorg.crm.dynamics.com/main.aspx?etn=account&pagetype=entityrecord&id=%7B91330924-802A-4B0D-A900-34FD9D790829%7D
Microsoft Dynamics CRM Online の [クローズされた営業案件] ビューを開く場合:
http://myorg.crm.dynamics.com/main.aspx?etn=opportunity&pagetype=entitylist&viewid=%7b00000000-0000-0000-00AA-000010003006%7d&viewtype=1039
ナビゲーション バーやコマンド バーなしで、の [アクティブな連絡先] ビューを開くには
http://myorg.crm.dynamics.com/main.aspx?etn=contact&pagetype=entitylist&viewid={00000000-0000-0000-00AA-000010001004}&viewtype=1039&navbar=off&cmdbar=false
noteメモ
showModalDialog または showModelessDialog を使用してダイアログ ウィンドウでエンティティ フォームを開くことはできません。

通常は、getClientUrl メソッドを使用して、設置型 Microsoft Dynamics CRMとMicrosoft Dynamics CRM Online の両方の組織のルート URL を取得します。

Main.aspx ページのクエリ文字列パラメーター

Tipヒント
レコードの ID 値を取得するには、コマンド バーの[リンクの送信] ボタンを使用します。電子メール アプリケーションで開かれる例を次に示します。

<http://mycrm/myOrg/main.aspx?etc=4&id=%7b899D4FCF-F4D3-E011-9D26-00155DBA3819%7d&pagetype=entityrecord>.

URL に渡される id パラメーターは、レコードのエンコードされた id 値です。この例では、id 値は {899D4FCF-F4D3-E011-9D26-00155DBA3819} です。GUID のエンコードされたバージョンは、開く中カッコ "{" と閉じる中カッコ "}" をそれぞれ "%7B" と "%7D" で置換します。

次に、エンティティ フォームやビューを開くために main.aspx ページで使用されるクエリ文字列パラメーターを示します。

 

パラメーター 説明

etn

エンティティの論理名。

Important重要
エンティティに整数コードを含む etc (エンティティの種類コード) パラメーターは使用しないでください。この整数コードは、異なる組織のユーザー定義エンティティでは異なります。

extraqs

フォームではオプションです。このパラメーターには、このパラメータ内のエンコードされたパラメーターが含まれます。

このパラメーターを使用してフォームに値を渡します。詳細については、「フォームに渡すパラメーターを使用してフィールド値を設定する」を参照してください。

エンティティに複数のフォームが定義されている場合は、このパラメーターを使用して、フォームの ID 値と等しい値を持つエンコードされたパラメーター formid を渡すことで、開くフォームを指定できます。たとえば、"6009c1fe-ae99-4a41-a59f-a6f1cf8b9daf" という ID のフォームを開くには、extraqs パラメーターに formid%3D6009c1fe-ae99-4a41-a59f-a6f1cf8b9daf%0D%0A という値を含めます。

pagetype

ページの種類です。指定できる値は 2 つあります。

  • entityrecord

    エンティティ レコード フォームを表示します。

  • entitylist

    エンティティ ビューを表示します。

id

フォームではオプションです。特定のエンティティ レコードを開く場合に使用します。エンティティのエンコードされた GUID 識別子を渡します。GUID のエンコードされたバージョンは、開く中カッコ "{" と閉じる中カッコ "}" をそれぞれ "%7B" と "%7D" で置換します。たとえば、{91330924-802A-4B0D-A900-34FD9D790829}%7B91330924-802A-4B0D-A900-34FD9D790829%7D です。

viewid

ビューでは必須です。これは、ビューを定義する savedquery または userquery エンティティ レコードの ID です。ビューの URL を取得する最も簡単な方法は、その URL をコピーすることです。詳細については、「ビューの URL のコピー」を参照してください。

viewtype

ビューの種類を定義します。使用できる値は次のとおりです。

  • 1039

    システム ビューに使用します。viewidsavedquery レコードの ID を表します。

  • 4230

    個人用ビューに使用します。viewiduserquery レコードの ID を表します。

navbar

サイト マップで定義されているエリアとサブエリアを使用して、ナビゲーション バーを表示するかどうか、およびアプリケーションのナビゲーションを使用可能にするかどうかを制御します。

  • on

    ナビゲーション バーが表示されます。 navbar パラメーターが使用されていない場合の既定の動作です。

  • off

    ナビゲーション バーが表示されません。他のユーザー インターフェイス要素、または戻るボタンと進むボタンを使用して移動できます。

  • entity

    エンティティ フォームでは、関連するエンティティのナビゲーション オプションのみが利用可能です。関連エンティティへの移動の後は、ナビゲーション バーに [戻る] ボタンが表示され、元のレコードに戻ることができます。

cmdbar

コマンド バーを表示するかどうかを制御します。

  • true

    コマンド バーが表示されます。これが既定です。

  • false

    コマンド バーが非表示になります。

ビューの URL のコピー

Microsoft Dynamics CRM の多くのビューには、特定のビューの URL をコピーしたり、電子メールのメッセージに特定のビューの URL を埋め込んで送信したりできる機能が備えられています。この機能により、ユーザー間のやり取りが容易になり、ユーザーが別のアプリケーション (SharePoint サイトなど) に含めることのできるビューの URL にもアクセスできるようになります。

noteメモ
この URL は、サイト マップを使用してアプリケーション ナビゲーションにビューを含めるときは使用しないでください。詳細については、「サイト マップを使用したアプリケーション ナビゲーションへのビューの表示」を参照してください。

URL で表示されるページにはビュー全体が含まれます。これにはリボンが含まれますが、アプリケーション ナビゲーションは含まれません。

  1. 使用するビューを開きます。

  2. コマンド バーで、[リンクの送信] をクリックし、次に [現在のビュー] をクリックします。

  3. リンクをメモ帳に貼り付けて編集し、テキストから必要な URL 部分のみ抽出します。

noteメモ
  • ユーザー コンテキストをパラメーターとして使用するビュー ([自分の取引先企業] など) はコピーできません。

  • システム エンティティのシステム ビューを表す GUID は、どの設置型バージョンの Microsoft Dynamics CRM をインストールした場合でも同じになります。ユーザー定義エンティティおよびユーザー定義ビューの GUID は、Microsoft Dynamics CRM のインストールごとに一意になります。

サイト マップを使用したアプリケーション ナビゲーションへのビューの表示

サイト マップを使用してアプリケーション ナビゲーションをカスタマイズするときは、URL の設定に、「ビューの URL のコピー」の手順に従ってアプリケーションからコピーしたビューの URL を使用しないでください。これはリボンを含むページを表示する URL であり、<SubArea> (SiteMap) Url 属性で使用すると望ましくない結果が生じます。

SubArea のアプリケーションに含まれるエンティティ レコードの一覧を表示するには、Entity 属性の値を設定します。これにより、そのエンティティの既定のビューが正しいタイトルとアイコンで表示されます。

ただし、SubArea 要素の既定の初期ビューとして特定のビューを使用する場合は、次の Url のパターンを使用します。

Url=“/_root/homepage.aspx?etn=<entity logical name >&amp;viewid=%7b<GUID value of view id>%7d”

この URL を使用するときは、さらに、<Titles> (SiteMap)<Descriptions> (SiteMap) に適切な値を指定し、エンティティのアイコンを指定する必要があります。

noteメモ
/_root/homepage.aspx ページを使用してビューを指定した場合も、ビュー セレクターは表示されます。ユーザーがビューを変更した場合、ユーザーが最後に選択したビューが Microsoft Dynamics CRM で記憶され、ブラウザーを閉じて次に開いたときに既定の初期ビューが表示されます。

URL を使用してダイアログ プロセスを開く

一般的なカスタマイズは、ユーザーが特定のレコードのコンテキストで特定のダイアログ プロセスを開けるようにすることです。たとえば、現在のレコードの id 値をダイアログ プロセスの入力パラメーターとして使用して、特定のエンティティのリボンにカスタム ボタンを追加できます。

ダイアログを開くには、以下が必要です。

  • ダイアログの一意識別子。

  • ダイアログの作成対象のエンティティの論理名。

  • ダイアログの実行対象のレコードの一意識別子。

Tipヒント
ダイアログの一意識別子を取得するには、[設定] に移動し、既定のソリューションで [プロセス] を選択します。プロセスを選択し、コマンド バーの[アクション] オプションで、[リンクのコピー] を選択します。これにより、たとえば [organization url]/sfa/workflow/edit.aspx?id=%7b6A6E93C9-1FE6-4C07-91A9-E0E2A7C70976%7d のように、ダイアログを編集するためのリンクがクリップボードにコピーされます。

次の例では、ダイアログを開くための URL とクエリ文字列パラメーターを示します。


          [organization url]/cs/dialog/rundialog.aspx?DialogId=[dialog unique identifier]&EntityName=[entity logical name]&ObjectId=[unique identifier for the record]

たとえば、ID ={6A6E93C9-1FE6-4C07-91A9-E0E2A7C70976}、取引先企業レコード ID = {40C9ADFD-90A8-DF11-840E-00155DBA380F} のダイアログを開くには、次の例の URL を使用します。


          [organization url]/cs/dialog/rundialog.aspx?DialogId=%7b6A6E93C9-1FE6-4C07-91A9-E0E2A7C70976%7d&EntityName=account&ObjectId=%7b40C9ADFD-90A8-DF11-840E-00155DBA380F%7d
Tipヒント
Internet Explorer 以外のブラウザーでは、ダイアログ プロセスをリンクから開いた場合に、[完了]ボタンが機能しないことがあります。この場合、データは保存されますが、ウィンドウの [閉じる] ボタンをクリックしないとウィンドウが閉じません。これは、他のブラウザーでは、別のウィンドウからJavaScriptを使用してウィンドウを開かなかった場合に window.close メソッドが提供されないためです。可能なら、ダイアログ プロセスを開くときは、単にリンクを用意するのではなく、JavaScript と window.openメソッドを使用するようにしてください。

次の例に示すように、ダイアログを開くための JavaScript 関数を作成できます。

function openDialogProcess(dialogId, entityName, objectId)
{
var url = Xrm.Page.context.getClientUrl() +
"/cs/dialog/rundialog.aspx?DialogId=" +
dialogId + "&EntityName=" +
entityName + "&ObjectId=" +
objectId;
window.open(url);
}

URL を使用してレポートを開く

URL [organization url]/crmreports/viewer/viewer.aspx に適切なパラメーター値の渡すことでレポートを開くことができます。

この URL は、次のパラメーターを受け取ります。

操作
このパラメーターに可能な 2 つの値は run または filter のいずれかです。run が使用される場合、レポートは既定のフィルターを使用して表示されます。filter を使用する際、[レポートの実行] ボタンをクリックしてレポートを表示する前に、レポートにはユーザーが編集できるフィルターが表示されます。

helpID
このパラメータは任意です。Microsoft Dynamics CRM に含まれているレポートでは、[このページのヘルプ] を選択すると、このパラメータの値は [ヘルプ] ボタンを使用してこのレポートについて適切な内容を表示できます。値は、レポートの FileName 属性値に対応する必要があります。

id
このパラメーターは、レポートの ReportId 属性値です。

次の例は Microsoft Dynamics CRMでレポートを開くために使用できる URL を示します。

既定のフィルターを使用して [放置されたサポート案件] レポートを開きます。
[organization url]/crmreports/viewer/viewer.aspx?action=run&helpID=Neglected%20Cases.rdl&id=%7b8c9f3e6f-7839-e211-831e-00155db7d98f%7d
[上位のサポート情報記事] レポートを開いて、ユーザーにフィルターの値を設定すよう促します。
[organization url]/crmreports/viewer/viewer.aspx?action=filter&helpID=Top%20Knowledge%20Base%20Articles.rdl&id=%7bd84ec390-7839-e211-831e-00155db7d98f%7d

次の機能は、適切に URL の値をエンコードする方法を示しています。

  function getReportURL(action,fileName,id) {
var orgUrl = GetGlobalContext().getClientUrl();
var reportUrl = orgUrl + 
"/crmreports/viewer/viewer.aspx?action=" +
encodeURIComponent(action) +
"&helpID=" +
encodeURIComponent(fileName) +
"&id=%7b" +
encodeURIComponent(id) +
"%7d";
return reportUrl;
}

関連項目

Microsoft Dynamics CRM 2015 and Microsoft Dynamics CRM Online
Send comments about this topic to Microsoft.
© 2014 Microsoft Corporation. All rights reserved.
表示:
© 2015 Microsoft