はじめに
HP Workforce Experience Platform(WXP)のAnalyticsモジュールのカスタムデータレポートは、標準のWXP Insightsエージェントでは利用できないデバイスレベルのデータを収集することを可能にします。ユーザーはPowerShellスクリプト(JSON形式でパッケージ化)をアップロードし、選択したデバイスグループ全体で実行し、WXP内で構造化された分析レポートを生成します。
この機能は以下をサポートします:
スクリプトベースの評価データ取得
カスタムデータレポートの作成(テナントあたり最大10件)
リアルタイムの進捗モニタリング
クリック可能なKPIダッシュボード
Excel(XLS)エクスポート機能
デバイスレベルのドリルダウン
前提条件とアクセス
サブスクリプション要件
お客様は以下のいずれかのサブスクリプションを持っている必要があります:
WXP Pro Trial
WXP Pro
WXP Elite
ロールベースアクセス制御(RBAC)
以下のロールを持つユーザーは、スクリプトを実行し、カスタムデータレポートを作成または表示できます:
IT管理者
パートナーサービススペシャリスト
パートナー管理者(承認済みおよび未承認のオンボード済み)
これらのロールは、この機能に対するフルアクセス権を持ちます。
以下のロールを持つユーザーは、カスタムデータレポートを表示できますが、スクリプトを実行することはできません:
HPサポート管理者
レポート管理者
これらのロールでは、キャンセルおよび再開オプションは使用できません。対象のレポートをダウンロードすることはできますが、ジョブの開始やキャンセルはできません。その他すべてのロールは、この機能にアクセスできません。
パートナーロールの場合、機能が利用可能になる前に、顧客テナントを選択する必要があります。
カスタムデータレポート機能内で実行されたアクションは、監査ログに保持されます。
スクリプトの要件とデータ処理
スクリプト形式
スクリプトの出力はJSON形式で生成される必要があります。スクリプトファイルは以下を定義します:
スクリプトメタデータ
実行プロパティ
オプションパラメータ
期待される出力スキーマ
レポートにデータが表示される順序
PowerShellが実行に使用されますが、アップロードされるアーティファクトは定義されたJSONラッパー形式に従う必要があります。
例
OSおよびデバイス情報を取得するための参考用サンプルスクリプト:
#Requires -Version 5.1
function Try-Get { param([ScriptBlock]$Block) try { & $Block } catch { $null } }
function Round2 { param([double]$n) return [math]::Round($n, 2) }
# --- Collect Data ---
$os = Try-Get { Get-CimInstance Win32_OperatingSystem }
$comp = Try-Get { Get-CimInstance Win32_ComputerSystem }
$bios = Try-Get { Get-CimInstance Win32_BIOS }
$cpu = Try-Get { Get-CimInstance Win32_Processor | Select-Object -First 1 }
$hostname = $env:COMPUTERNAME
$osName = if ($os) { $os.Caption } else { $null }
$osBuild = Try-Get { (Get-ItemProperty 'HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion').CurrentBuild }
$mfgr = if ($comp) { $comp.Manufacturer } else { $null }
$model = if ($comp) { $comp.Model } else { $null }
$cpuName = if ($cpu) { $cpu.Name } else { $null }
$ramTotalGB = if ($comp) { Round2($comp.TotalPhysicalMemory / 1GB) } else { $null }
$systemType = if ($comp) { $comp.SystemType } else { $null }
# --- OS Install Date (robust: WMI first, registry fallback) ---
$osInstall = $null
# Try WMI DMTF date
if ($os -and $os.InstallDate -and $os.InstallDate.Length -ge 8) {
try {
$osInstall = [Management.ManagementDateTimeConverter]::ToDateTime($os.InstallDate).ToString('yyyy-MM-dd')
} catch { $osInstall = $null }
}
# Fallback: registry InstallDate (Unix epoch seconds)
if (-not $osInstall) {
try {
$reg = Get-ItemProperty 'HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion'
if ($reg.InstallDate -and [int]$reg.InstallDate -gt 0) {
$epoch = [datetime]'1970-01-01T00:00:00Z'
$osInstall = ($epoch.AddSeconds([int]$reg.InstallDate)).ToLocalTime().ToString('yyyy-MM-dd')
}
} catch { }
}
# --- Last patch info (non-admin) ---
$lastPatch = $null
$patches = Try-Get { Get-HotFix }
if ($patches) {
$latest = $patches | Sort-Object -Property InstalledOn -Descending | Select-Object -First 1
if ($latest) { $lastPatch = '{0} on {1}' -f $latest.HotFixID, ($latest.InstalledOn.ToString('yyyy-MM-dd')) }
}
# --- Build JSON Object (10 fields) ---
$payload = [pscustomobject]@{
Hostname = $hostname
OSName = $osName
OSBuild = $osBuild
Manufacturer = $mfgr
Model = $model
CPUName = $cpuName
RAMTotalGB = $ramTotalGB
SystemType = $systemType
OSInstallDate = $osInstall
LastPatch = $lastPatch
}サンプルレポート

JSON出力構造(レポートの制限事項)
レポートは単一レベルのJSON階層のみをサポートします。
サポートされる形式の例:
{
"BIOSVersion": "1.23.4",
"ThinkCellEnabled": "True",
"AIExtensionDetected": "Yes"
}サポートされない形式の例:
{
"Device": {
"BIOS": {
"Version": "1.23.4"
}
}
}ネストされた構造が返された場合、データは構造化された列にレンダリングされません。代わりに、StdOutの下に表示されます。
注意:
URL処理:スクリプト出力ではURLが受け入れられます。URLは、該当する場合、レポートビューでクリック可能なリンクとして表示されます。
翻訳処理:データはスクリプトから返された形式のまま、翻訳や変更なしで表示されます。
日付と時刻の処理:スクリプト出力の一部として返された日付と時刻の値は、返されたとおりに表示されます。タイムゾーンへの変換や正規化は行われません。これにより、バックエンド変換なしでスクリプトの生データの忠実性が確保されます。
カスタムデータレポートの作成
標準のWXP Insightsテレメトリでは利用できないデバイスデータを取得するには、以下の手順に従います。
WXPにログインします。ホームページが表示されます。
WXPの左メニューから、分析 > カスタムデータレポートをクリックします。既存のレポートが表示されます。
追加をクリックします。カスタムデータ収集用のスクリプトを選択またはアップロードするためのレポート追加ページが表示されます。
各スクリプトには説明、バージョン、および操作が表示されます。 a. リストは自動的にフィルタリングされ、評価スクリプトが表示されます。
パラメータが定義されている場合、事前に入力され、編集可能です。
1つ以上のグループを選択して対象者を選択します。下にスクロールして、選択した対象者のデバイスの合計数を計算します。 a. デバイス数は、選択したグループ全体のユニークデバイスの数を示します。 b. デバイスが複数のグループに属している場合、スクリプトはそのデバイスで1回のみ実行されます。
レポートのタイトルとオプションの説明を追加します。
スクリプトを公開します。
テナント制限:テナントは最大10件のカスタムデータレポートを持つことができます。11番目のレポートを作成するには、少なくとも1つの既存のレポートを削除する必要があります。レポート表示権限を持つすべてのユーザーは、作成者に関係なく、テナント内のすべてのカスタムデータレポートにアクセスできます。
カスタムデータレポート一覧テーブル
以下の列が表示されます:
レポート名と説明
作成者
作成日
全体ステータス
進行中
完了(スクリプト実行開始後最大24時間)
期限切れ
キャンセル済み
エクスポート
削除
以下のバリデーションルールが適用されます:
一括削除はできません。
一括エクスポートはできません。
ステータスが「進行中」のレポートは削除できません。
ステータスが完了、キャンセル済み、または期限切れのレポートは削除できます。
ステータスが進行中、完了、またはキャンセル済みのレポートはダウンロードできます。
期限切れのレポートはダウンロードできません。
プライバシーとセキュリティ
IT管理者(テナントごとの初回使用時)
IT管理者がテナント内で初めてカスタムデータレポートを作成する際、利用規約に同意する必要があります。この確認は一度だけ表示され、そのテナントの最初のIT管理者にのみ表示されます。後続のIT管理者にはプロンプトは表示されません。
パートナー管理者またはサービススペシャリスト
顧客に代わってカスタムデータレポートを作成する場合、ユーザーは顧客テナントごとに一度利用規約に同意する必要があります。同意はテナントごとに追跡されます。
カスタムデータレポートの表示とモニタリング
各カスタムデータレポートには以下が表示されます:
レポート名と説明
スクリプト名(リンク付き)
対象者の定義
デバイスの合計数
開始日時
完了日時
有効期限
レポートステータス
進行中
完了
キャンセル済み
期限切れ
ダウンロードオプション
削除オプション(対象の場合)
注意:スクリプトは1回実行されます。継続的または定期的なスケジュールでは実行されません。ただし、ユーザーは必要に応じていつでも実行できます。
プログレスバー
プログレスバーには以下が表示されます:
完了したデバイス
エラーが発生したデバイス
未処理のデバイス
対象者の合計
レポートのキャンセル
レポートをキャンセルできるのは、ステータスがIn Progressの場合のみです。キャンセル時:
ステータスがキャンセル済みに更新されます。
レポートページに、キャンセルしたユーザーとキャンセル時刻が表示されます。
まもなく再開オプションが表示されます。
レポートの再開
以下のステータスのレポートを再開できます:
完了
キャンセル済み
期限切れ
動作:
すべての元のデバイスで再開されます。
履歴データは削除されます。
スクリプト、パラメータ、および対象者は変更できません。
グループのメンバーシップが変更された場合、対象者が異なる場合があります。
有効期限ルール
カスタムデータレポートは、スクリプト実行開始から11日後(24時間の完了ウィンドウ + 10日間の保持)、または24時間以内にすべてのデバイスがCompletedまたはErroredステータスを示した場合はその後10日後に期限切れになります。
レポートがキャンセルされた場合、キャンセルから10日後に期限切れになります。
注意:期限切れのレポート:
ダウンロードできません。
デバイスページからデータが削除されます。
公開済みカスタムデータレポートの表示
レポートのクリック可能なKPI
KPIはデバイスステータスに基づいて表示されます:
進行中
完了
エラー
未処理
動作:
KPIはテーブルのフィルタリングの影響を受けません。
KPIをクリックすると、テーブルフィルターが適用されます。
複数のKPIフィルターの選択が可能です。
フィルターは削除されるまでタブごとに保持されます。
フィルターはコンテンツタブと詳細タブ間で転送されません。
コンテンツタブの表示
コンテンツタブには、完了ステータスのデバイスのみが表示されます。
デフォルトのソートはシリアル番号に基づいています。
以下の列が表示されます:
デバイスシリアル番号(対応するデバイス詳細ページへのリンク付き)
デバイス名
データ要素ごとに1列
変更はデバイス詳細ページに反映されます
出力(標準出力)
開始時刻
データが返されない場合、ユーザーを詳細タブに誘導するメッセージが表示されます。
詳細タブの表示
詳細タブには、ステータスに関係なく、対象者に定義されたすべてのデバイスが表示されます。このタブは主に、完了以外のステータスのデバイスのトラブルシューティングに使用されます。
デフォルトのソート順は以下のとおりです:
エラー
進行中
未処理
完了
以下の列が表示されます:
デバイスシリアル番号
デバイス名
最終サインインユーザー
スクリプト終了コード
出力(標準出力またはエラービューへのリンク)
カスタムデータレポートのエクスポート
ユーザーは、フィルタリングされた結果をExcel(XLS)ファイルにエクスポートできます。このファイルには以下の2つのタブが含まれます:
コンテンツ
詳細
以下のステータスのレポートをエクスポートできます:
進行中
完了
キャンセル済み
注意:期限切れのレポートではエクスポートは利用できません。
デバイス詳細ページへのアクセス
カスタムデータレポートのコンテンツまたは詳細タブに表示されている任意のシリアル番号をクリックすると、対応するデバイス詳細ページを開くことができます。これにより、そのデバイスについて収集されたすべてのカスタムデータを一元的に表示でき、トラブルシューティングがより効率的になります。
カスタムデータタブには以下が含まれます:
カスタムデータレポートへのリンク
キャプチャされた各データ要素と値
レポートの有効期限
ステータス
スクリプト名
スクリプト終了コード
出力リンク
XLSダウンロードオプション
期限切れのデータは表示されません。
注意:完了、キャンセル済み、または期限切れのレポートの場合:
スクリプトが削除されたか、すべてのグループが削除された場合、表示されるアクションは作成です。
スクリプトと少なくとも1つのグループがまだ存在する場合、表示されるアクションは再開です。
カスタムデータレポートAPIの活用
追加情報については、カスタムデータレポートのクエリを可能にするAPIに関する開発者ポータルのドキュメントを参照してください:https://developers.workforceexperience.hp.com/docs/v1/customdatareport
お問い合わせ
サポートが必要な場合は、サポートケースを作成するか、support@wxp.hp.com 宛てにメールを送信してください。