レポートのサンプル事例: カスタム ビューにダッシュボードとレポートを含める方法
公開日: 2016年5月
対象: System Center 2012 SP1 - Service Manager、System Center 2012 R2 Service Manager、System Center 2012 - Service Manager
System Center 2012 – Service Manager の Microsoft SharePoint への依存、および、新しい Microsoft Online Analytical Processing (OLAP) キューブを Service Manager ボックスに含めることの利点の 1 つは、Microsoft SharePoint Server 2010 または Microsoft Excel で PerformancePoint Services を使用して、SharePoint ダッシュボードを簡単に作成できることです。 その後、Service Manager でカスタム ビューを作成して、これらのダッシュボードを表示できます。
次の手順に従って、Service Manager コンソールで、使用している環境から SharePoint ダッシュボードを表示するカスタム ビューを作成できます。 必ず 3 つの手順を、記載順にすべて実行してください。
ダッシュボード管理パックをインポートするには
Service Manager コンソールで [管理] をクリックします。
[タスク] ウィンドウで [PowerShell セッションの開始] をクリックします。
Windows PowerShell ウィンドウで、次のコマンドを入力して Enter キーを押します。
New-SCManagementPack –DisplayName Dashboards
Service Manager コンソールで、[作業アイテム] をクリックします。 [作業アイテム] ウィンドウで [インシデント管理] を右クリックして、[フォルダーの作成] をクリックします。
[新しいフォルダーの作成] ダイアログ ボックスで、[フォルダー名] に「Dashboards」と入力します。 「Dashboards」を [管理パック] として選択して、[OK] をクリックします。
Windows PowerShell で、次のコマンドを入力します。
Get-SCManagementPack –DisplayName Dashboards | Export-SCManagementPack –Path C:\DashBoards
Get-SCManagementPack –DisplayName Dashboards | Remove-SCManagementPack
ダッシュボード管理パックを Visual Studio で編集するには
Microsoft Visual Studio を起動します。
Visual Studio で、[ファイル]、[開く]、[ファイル] の順にクリックし、[ファイルを開く] ダイアログ ボックスで、C:\DashBoards フォルダーをポイントして、エクスポートしておいた管理パック ファイルを開きます。 ファイル名は ManagementPack.<GUID>.xml. という形式です。
下記の手順に従い、管理パックを Visual Studio で編集します。
<Assembly> タグを見つけて、次のコードに置き換えます。
<Assembly>EnterpriseManagement!WpfViewsAssembly</Assembly>
次の方法で、現在の ID を IncidentDashboards に置き換えます。
次のコード ブロックを見つけます。
<Identity> <ID>ManagementPack.aded6801e732473d80731943d22d33dc</ID> <Version>7.5.1088.276</Version> </Identity>
そのブロック内で、<ID> ブロックを次のように更新します。
<ID>IncidentDashboards</ID>
次のコード ブロックを見つけます。
<DisplayStrings> <DisplayString ElementID="ManagementPack.aded6801e732473d80731943d22d33dc"> <Name>Dashboards</Name> </DisplayString>
そのブロック内で、<DisplayString> タグを次のように更新します。
<DisplayString ElementID="IncidentDashboards">
[ファイル] から [名前を付けて ManagementPack.<GUID>.xml を保存] を選択し、[名前を付けてファイルを保存] ダイアログ ボックスの [ファイル名] に「C:\DashBoards\IncidentDashboards.xml」と入力します。
<References> セクションで、System.Library 管理パックへの参照を追加します。 その結果、<References> セクションは次のようになります。
<References> <Reference Alias="EnterpriseManagement"> <ID>Microsoft.EnterpriseManagement.ServiceManager.UI.Console</ID> <Version>7.5.1088.276</Version> <PublicKeyToken>31bf3856ad364e35</PublicKeyToken> </Reference> <Reference Alias="IncidentManagement"> <ID>ServiceManager.IncidentManagement.Library</ID> <Version>7.5.1088.276</Version> <PublicKeyToken>31bf3856ad364e35</PublicKeyToken> </Reference> <Reference Alias="System"> <ID>System.Library</ID> <Version>7.5.1088.276</Version> <PublicKeyToken>31bf3856ad364e35</PublicKeyToken> </Reference> </References>
変更したファイルを保存します。
新しい PresentationsType セクションを、</Categories> セクションと <Presentation> セクションの間に追加します。 その結果、次のようになります。
</Categories> <PresentationTypes> <ViewTypes> <ViewType ID="Dashboard" Accessibility="Public"> <Configuration> <xsd:any minOccurs="0" maxOccurs="unbounded" processContents="skip" xmlns:xsd="http://www.w3.org/2001/XMLSchema" /> </Configuration> <ViewImplementation> <Assembly>Console!WpfViewsAssembly</Assembly> <Type>Microsoft.EnterpriseManagement.UI.WpfViews.Overview</Type> </ViewImplementation> </ViewType> </ViewTypes> </PresentationTypes> <Presentation>
変更したファイルを保存します。
<Presentation> タグと <Folders> タグの間に、以下のようにコードを挿入して、ビューの宣言を追加します。 その結果のコードは次のようになります。
<Presentation> <Views> <View ID="View.IncidentDashboard" Accessibility="Public" Enabled="true" Target="System!System.Entity" TypeID="Dashboard" Visible="true"> <Category>NotUsed</Category> <Configuration> <Presentation> <Header /> <Content> <WebBrowser xmlns="https://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="https://schemas.microsoft.com/winfx/2006/xaml" Name="wb1" Source="http://Dashboards/IncidentDashboard.aspx"/> </Content> </Presentation> </Configuration> </View> </Views> <Folders>
[!メモ]
Source 属性の URL を、環境内のダッシュボードの URL に置き換えます。 この URL は、インターネットまたはイントラネット上でユーザーのブラウザーからアクセス可能なコンテンツを表示するものでなければなりません。変更したファイルを保存します。
新しい FolderItem 要素を、FolderItems セクションに追加します。 その結果のコードは次のようになります。
<Folders> <Folder ID="Folder.dd2ff258eca54d93a4f10c312df00673" Accessibility="Public" ParentFolder="IncidentManagement!ServiceManager.Console.IncidentManagement" /> </Folders> <FolderItems> <FolderItem ElementID="View.IncidentDashboard" ID="FolderItem.View.IncidentDashboard" Folder="Folder.dd2ff258eca54d93a4f10c312df00673"/> <FolderItem ElementID="EnterpriseManagement!Microsoft.EnterpriseManagement.ServiceManager.UI.Console.Task.CreateGridView" ID="FolderItem.695321a1458140e7af75fe3a95888f8e" Folder="Folder.dd2ff258eca54d93a4f10c312df00673" /> </FolderItems>
重要
[Folder ID](assetId:///Folder ID) は、フォルダーの作成時にコンソールにより生成されるため、その都度異なります。ID 属性を <Folder> 要素からコピーして、Folder 属性として FolderItem 要素に貼り付けます。Folder 要素の ID 属性と FolderItem 要素の Folder 属性の値が同じであることを確認します。変更したファイルを保存します。
DisplayString を、前の手順の ID を使って更新します。 次のコードを見つけます。
<DisplayString ElementID="Folder.<ID>”
前の手順の ID を使ってコードを更新します。 その結果コードは次のようになります。
<DisplayString ElementID="Folder.dd2ff258eca54d93a4f10c312df00673">
新しい ImageReference 要素を、ImageReferences セクションに追加します。 その結果のコードは次のようになります。
<ImageReferences> <ImageReference ElementID="View.IncidentDashboard" ImageID="IncidentManagement!IncidentMgmt_AllIncidents_16"/> <ImageReference ElementID="Folder.dd2ff258eca54d93a4f10c312df00673" ImageID="EnterpriseManagement!Microsoft.EnterpriseManagement.ServiceManager.UI.Console.Image.Folder" /> </ImageReferences>
[!メモ]
この ImageReference 要素は、Service Manager コンソールの [すべてのインシデント] ビューで使用される既定の [インシデント] アイコンを参照しています。 代わりに、カスタムのイメージ リソースを使用できます。変更したファイルを保存します。
新しい DisplayString 要素を、DisplayStrings セクションに追加します。 その結果のコードは次のようになります。
<LanguagePacks> <LanguagePack ID="ENU" IsDefault="true"> <DisplayStrings> <DisplayString ElementID="View.IncidentDashboard"> <Name>Incident Dashboard</Name> </DisplayString> <DisplayString ElementID="IncidentDashboards"> <Name>Dashboards</Name> </DisplayString> <DisplayString ElementID="Folder.dd2ff258eca54d93a4f10c312df00673"> <Name>Dashboards</Name> </DisplayString> </DisplayStrings> </LanguagePack> </LanguagePacks>
変更したファイルを保存します。
ダッシュボードをカスタム ビューで表示するには
Service Manager Windows PowerShell セッションで、次のコマンドを実行して、IncidentDashboards 管理パックを検証します。
Test-SCManagementPack –FullName C:\DashBoards\IncidentDashboards.xml
検証に成功した場合は、次のコマンドを実行して管理パックをインポートします。
Import-SCManagementPack –FullName C:\DashBoards\IncidentDashboards.xml
Service Manager コンソールをいったん閉じて、再び開きます。
[作業アイテム] をクリックします。 [作業アイテム] ウィンドウで [インシデント管理] を展開して、[ダッシュボード] をクリックします。 [インシデント ダッシュボード] ビューを選択し、Service Manager コンソールでホストされている SharePoint サイトからのダッシュボードを表示します。
[!メモ]
Service Manager データ ウェアハウスのない環境内でこの手順を実行している場合は、ダッシュボードに実際のデータは表示されません。