• 使用を開始する
  • 関連ドキュメント

IT 資産管理 (ITAM) 用にインポートされたデータのマッピング

Jira Service Managementアセットは、Premium と Enterprise のみの機能です。アセットの詳細についてご確認ください

このガイドの使用方法

アセット ガイドのこの章では、アセットにインポートするオブジェクトと属性のマッピングについて説明します。この章を十分に理解するには、以下の前の章を完了しておく必要があります。

このガイドの各ステップには、Jira Service Management でアセットを使用するための詳しい手順だけでなく、チームの ITAM プロセスの一環として使用する場合にこの強力な機能を最大限に活用するためのヒントやベスト プラクティスも記載されています。

このガイドには次の 2 種類の情報があります。

  • 背景が青いヘッダーはアセットの利用開始に役立ちます。データの例や各機能の使用方法など、ガイドの各ステップに関する情報です。

  • 背景が白いテキストは、アセットの操作手順、またはアセットのコンセプトに関する詳細な情報です。

他にも次のような情報があります。

  • 太字の情報は、メニュー オプションの名前、オン/オフを切り替えることができる機能、ボタンなど、アセット自体にあるテキストを示しています。

  • code の情報は、IT 資産管理 (ITAM) 用サンプル オブジェクト スキーマに含まれるテキストです。

  • 太字で斜体になっている情報は、アセットの重要な部分を形成する概念またはアイデアです。

オブジェクト マッピングを作成する

前の章では、インポート マッピングを作成して、データをアセットにインポートする最初のステップを完了しました。

ここでは、次のステップ、つまりオブジェクト タイプ マッピングを完了して、データをオブジェクト スキーマのオブジェクトに変換する方法をアセットに指示します。新しいインポート構造のステータスが無効とマークされているのを確認できますが、これは、オブジェクト マッピングを行っていないことが理由です。

作成したインポート構造 Models import に戻り、新しいオブジェクト タイプ マッピングを作成します。一番上のフィールドで以下のように設定します。

  • [Object type (オブジェクト タイプ)] は、オブジェクトを入力する既存のオブジェクト タイプをアセットに指示するものです。ドロップダウン リストにはオブジェクト タイプがあらかじめ設定されています。アセットはデータ ファイルを読み取ってそれを検出し、オブジェクト タイプとして識別しています。将来的には、識別子を変更することで、アセットがデータ ファイル内のオブジェクト タイプを検索する方法を変更できるようになります。ここでは、オブジェクト タイプとして Hardware models を選択します。

この下に、アセットに入力されるデータを前処理できる一連のフィールドがあります。[欠落しているオブジェクト] を除いて、すべて既定のままにしておきます。このフィールドについては後のセクションで説明します。次のフィールドがあります。

  • [Filter data source by AQL (データ ソースを AQL でフィルター)] では、入力オブジェクトを AQL クエリでフィルタリングできます。たとえば、データ ファイルに多数のサーバーとノート パソコンが混在している場合は、ここで AQL クエリを使用して、入力オブジェクトを子オブジェクト タイプに割り当てることができます。

  • [識別子の大小文字の区別] では、データの大文字と小文字を区別するかどうかを選択できます。

  • [欠落しているオブジェクト] では、データの更新中に、データ ファイルにオブジェクトが欠落していた場合の対処方法を選択できます。欠落しているオブジェクトをオブジェクト スキーマから削除するか、無視するか、欠落しているオブジェクトの属性を変更するかを選択できます。たとえば、ノート パソコンのデータ ファイルを扱っていて、データ ファイルに見つからないノート パソコンがある場合、[欠落しているオブジェクト] の設定により、そのノート パソコンのステータスを「存在」から「欠落」に変更できます。

  • [欠落しているアウトバウンド参照のオブジェクト] では、オブジェクトはすべて存在するが、データによって参照されているオブジェクトの一部が見つからない場合の対処方法を選択できます。欠落している参照を削除するか、単に無視するかを選択できます。このルールは、上記の [欠落しているオブジェクト] が適用される場合にのみ適用されます。

  • 空の値 - この設定は、1 つの属性に複数の値を保持できる属性タイプである「参照」、「ステータス」、「選択」にのみ適用されます。オブジェクトがこの「参照」、「ステータス」、または「選択」属性タイプの値を想定しているにもかかわらず、想定した数の値が見つからなかった場合の処理を選択できます。アセットで、データに見つからない欠落値を削除するか、単に欠落値を無視するかを選択できます。

  • 不明な値 - この設定は、「ステータス」および「選択」属性タイプにのみ適用されます。「ステータス」または「選択」属性が更新されたときに、ソースからの新しい値を「ステータス」または「選択」タイプのリストに追加するかどうかを選択できます。この設定により、これらのフィールドのオプションを動的に更新できます。

新しいオブジェクト マッピングを作成するには:

  1. サービス プロジェクトから、[アセット] > [オブジェクト スキーマ] の順に移動します。

  2. オブジェクト スキーマを選択します。

  3. [スキーマ設定] を選択して、次に [インポート] タブを選択します。

  4. インポート構造で [マッピングを編集] を選択して、展開します。

  5. データから作成するオブジェクト タイプごとに、個別のオブジェクト タイプ マッピングを作成する必要があります。新しいオブジェクト タイプ マッピングを作成するには、[マッピングを作成] ボタンを選択します。[新しいオブジェクト タイプ マッピングを作成] 画面で、次の情報を入力します。

    1. オブジェクト - データから作成するオブジェクト タイプを選択します。上記のステップ (2) に従って、データをインポートするオブジェクト タイプを作成しておく必要があります。

    2. IQL によるデータソースのフィルタリング - ソースからフェッチされたオブジェクトをクエリするためのオプションの IQL。データからオブジェクトをフィルタリングする場合は、ここで実行できます。

    3. 識別子の大小文字の区別 - 次のいずれかを選択します。

      1. 大文字と小文字を区別 - ID は大文字と小文字を区別して比較されるため、「Data Value」は「data value」と同じ ID とはみなされません。

      2. 大文字と小文字を区別しない: ID は大文字と小文字を無視して比較されるため、「Data Value」と「data value」は同じ ID としてみなされます。

    4. 欠落しているオブジェクト - 以下から選択します。

      1. 削除 - インポートからのエントリのみ、アセット オブジェクトとして保持されます。アセットに手動で作成されたオブジェクトは削除されます。

      2. アップデート - インポートに存在しないすべてのアセットのオブジェクトで、属性が編集されます。

      3. 無視 - インポートに存在しないアセットのオブジェクトは、削除もアップデートもされません。

    5. しきい値番号 - しきい値番号は、上記の [欠落しているオブジェクト] 設定フィールドで選択したルールが適用される前に、インポート元から欠落しているオブジェクトが無視される回数です。これは、インポート元のデータにオブジェクトが見つからなかった場合、すぐに削除されないようにするための安全機能です。

    6. 欠落しているアウトバウンド参照のオブジェクト - この設定は、上記で [欠落しているオブジェクト] の [更新] または [無視] を選択した場合にのみ表示されます。次の項目から選択します。

      1. 削除 - インポートからのアウトバウンド参照のみがアセット参照として保持されます。アセットで手動で作成されたアウトバウンド参照は削除されます。

      2. 無視 - インポートで見つからないアセットのアウトバウンド参照は、削除もアップデートもされません。

    7. 空の値 - オブジェクトが更新される際に、外部ソースからの空の値で既存の値を削除するかどうかを選択します。次の項目から選択します。

      1. デフォルトを使用 - 該当するオブジェクト タイプに対して [インポート構造を定義] 画面で指定された値を使用します。

      2. 削除 - 現在の値を削除します。属性がステータス、選択、または複数の値を持つ参照タイプ属性である場合、すべての値が削除されます。

      3. 無視 - 該当するオブジェクト タイプに対して現在の値を保持します。属性がステータス、選択、または複数の値を持つ参照タイプ属性である場合、すべての値が保持されます。

    8. 不明な値 - オブジェクトを更新する際に、外部ソースからの不明な値をアセット属性設定に追加する必要があります。次の項目から選択します。

      1. デフォルトを使用 - デフォルト値を使用します。

      2. 追加 - 2 つの値をまとめて追加します。

      3. 無視 - 現在の値を保持します。

  6. [作成] を選択します。

属性マッピングの識別子を選択する

オブジェクト マッピングを作成したので、Hardware models が [マッピング] の下に表示されるようになりました。

また、親インポート構造Models import と同じように、現時点では無効とマークされています。

これは、データを手動でマッピングすることにしたため、現時点では、この属性マッピングに識別子が割り当てられていないことが理由です。識別子は、オブジェクト タイプのどの属性が各オブジェクトで一意であるかをアセットに伝えます。通常、この属性には名前が使用されますが、シリアル番号やストレージ ID など、任意のものでもかまいません。

Models import インポートに進み、Hardware models で [マッピングを編集] を選択し、次に [属性マッピングを編集] を選択します。

ここから、Hardware models の属性マッピングについて見ていきます。これは、アセットがデータから属性を構築する方法を定義するルールです。この表の各行は、上で指定したオブジェクト タイプ (この場合は Hardware models) の属性です。

識別子を選択します。ここでは、一意のものとしてデータ ファイルから Model Name を選択します。Hardware models の中では、Model Name は一意で適切なキーになります。一方、在庫リストの場合、同じモデルが複数存在する可能性があるため、モデルはキーとして適切ではありません。一意の Serial Number の方が適しています。

[データ ソース] を Model Name に、[移動先属性] を [名前] に設定します。[名前] にはラベル アイコンが付いています。つまり、名前は属性でもあり、オブジェクト ビューでオブジェクトを表示する際にタイトル バーに表示されることを示しています。

オブジェクト マッピングの識別子を選択するには、次の手順に従います。

  1. サービス プロジェクトから、[アセット] > [オブジェクト スキーマ] の順に移動します。

  2. オブジェクト スキーマを選択します。

  3. [Configure (設定)]、[インポート] タブの順に選択します。

  4. [インポート] タブで、インポート構造の [マッピングを編集] を選択してオブジェクト タイプ マッピングを表示します。

  5. [属性マッピングを編集] を選択して、属性タイプ マッピングを表示します。

    1. "データ ソース" フィールド を選択します。識別子となる"データ ソース" フィールドを選択する場合は、オブジェクトごとに一意の値を選ぶ必要があります。

    2. 移動先属性を選択します。移動先属性は、"データ ソース" フィールドがマッピングされる属性です。

    3. [識別子] のチェックボックスが選択されていることを確認します。

属性マッピングを作成する

オブジェクトの一意の識別子を選択しました。これで、データ ソースから取得した属性を Hardware models オブジェクトに入力できるようになりました。

さっそく、次の属性マッピングを作成しましょう。行ごとに、"データ ソース" フィールドと移動先属性を追加します。CSV にあるテキストから参照を作成する属性マッピングには、参照を作成するための AQL ステートメントも追加する必要があります。

Models import インポート構造に移動して、Hardware models で [マッピングを編集] > [属性マッピングを編集] の順に選択します。

  1. "データ ソース" フィールド: カテゴリ | 移動先属性 : カテゴリ

  2. "データ ソース" フィールド: モデル | 移動先属性 : モデル

  3. "データ ソース" フィールド: 単価 | 移動先属性: 単価

  4. "データ ソース" フィールド: 説明 | 移動先属性: 製品情報

それぞれの属性マッピングのあとに、必ず [追加] をクリックしてください。

新しい属性マッピングを作成するには、次の手順に従います。

  1. サービス プロジェクトから、[アセット] > [オブジェクト スキーマ] の順に移動します。

  2. オブジェクト スキーマを選択します。

  3. [Configure (設定)]、[インポート] タブの順に選択します。

  4. [インポート] タブで、インポート構造の [マッピングを編集] を選択してオブジェクト タイプ マッピングを表示します。

  5. [属性マッピングを編集] を選択して、属性タイプ マッピングを表示します。

  6. アセットにインポートされるすべてのオブジェクトには、少なくとも 1 つの情報が必要です。それは、データ ソース内のどこにオブジェクトがあるかをアセットに知らせる "データ ソース" フィールドです。"データ ソース" フィールドの詳細をご確認ください。

    1. データ ソース フィールドを選択します。データ ソース フィールドは、データ ファイル内のオブジェクトの場所を指定します。属性マッピングは、マッピングされた各属性にデータ ソース フィールドを指定するまで無効になります。

    2. データ ソース フィールドにマッピングする移動先属性を選択します。

    3. オプションで、この属性マッピングの初期設定を変更できます。

      1. AQL - データから参照を作成するには、ここに AQL ステートメントを入力します。

      2. 連結子 - ここに、この属性マッピングにのみ適用される代替連結子を入力します。

      3. 正規表現 - ここに、この属性マッピングにのみ適用される正規表現 (regex) を入力します。

      4. Base 64 - ここに代替の Base 64 値を入力します。

  7. 識別子として属性の 1 つを選択します。識別子は各オブジェクトを一意に識別し、オブジェクトが作成されるときにそのオブジェクトの新しいラベルになります。インポートを実行するには、識別子を 1 つのみ含める必要があります。識別子は、データの更新時にも重要です。ターゲット スキーマに同じ識別子がある場合はオブジェクトが更新され、ターゲット スキーマに識別子が見つからない場合はオブジェクトが作成されます。

  8. 右側の [追加] をクリックします。

属性マッピングを有効にする

Hardware models の属性マッピングが完了したので、これを有効化できるようになりました。

有効化された属性マッピングは、インポートの実行時にデータを取り込みます。なお、インポートの実行時に、無効化された属性マッピングがデータに影響を与えることはありません。

属性マッピングを有効化するには、次の手順に従います。

  1. サービス プロジェクトから、[アセット] > [オブジェクト スキーマ] の順に移動します。

  2. オブジェクト スキーマを選択します。

  3. [Configure (設定)]、[インポート] タブの順に選択します。

  4. [インポート] タブで、インポート構造の [マッピングを編集] を選択します。

  5. 有効化する属性マッピングの右側にある [...] を選択します。

  6. [有効化] を選択します。

オブジェクト マッピングを使用して参照オブジェクトを作成する

これで、Hardware models のオブジェクト マッピングが作成されました。インポートを実行すると、データ ファイル内のハードウェア モデルごとにオブジェクトが自動作成されるようになります。

ただし、Hardware models オブジェクト タイプには、Models オブジェクト タイプを指す Model 属性である参照も含まれています。データから参照をインポートして、その参照を機能させるには、いくつかの追加タスクを完了する必要があります。

  1. 参照の対象となるオブジェクトを入力する

  2. データ インポートのプレーン テキストを、参照を指すリンクに変換する

最初に参照オブジェクトを作成します。作成方法は、上記の Hardware models オブジェクトと同じです。まずは、Models オブジェクト タイプの新しいオブジェクト マッピングを作成します。

オブジェクト マッピングを作成したら、[属性マッピング] に移動して、オブジェクト タイプの識別子を設定します。

"データ ソース" フィールドModel に、[移動先属性] を [名前] に設定します。

新しいオブジェクト マッピングを作成するには:

  1. サービス プロジェクトから、[アセット] > [オブジェクト スキーマ] の順に移動します。

  2. オブジェクト スキーマを選択します。

  3. [スキーマ設定] を選択して、次に [インポート] タブを選択します。

  4. インポート構造で [マッピングを編集] を選択して、展開します。

  5. データから作成するオブジェクト タイプごとに、個別のオブジェクト タイプ マッピングを作成する必要があります。新しいオブジェクト タイプ マッピングを作成するには、[マッピングを作成] ボタンを選択します。[新しいオブジェクト タイプ マッピングを作成] 画面で、次の情報を入力します。

    1. オブジェクト - データから作成するオブジェクト タイプを選択します。上記のステップ (2) に従って、データをインポートするオブジェクト タイプを作成しておく必要があります。

    2. IQL によるデータソースのフィルタリング - ソースからフェッチされたオブジェクトをクエリするためのオプションの IQL。データからオブジェクトをフィルタリングする場合は、ここで実行できます。

    3. 識別子の大小文字の区別 - 次のいずれかを選択します。

      1. 大文字と小文字を区別 - ID は大文字と小文字を区別して比較されるため、「Data Value」は「data value」と同じ ID とはみなされません。

      2. 大文字と小文字を区別しない: ID は大文字と小文字を無視して比較されるため、「Data Value」と「data value」は同じ ID としてみなされます。

    4. 欠落しているオブジェクト - 以下から選択します。

      1. 削除 - インポートからのエントリのみ、アセット オブジェクトとして保持されます。アセットに手動で作成されたオブジェクトは削除されます。

      2. アップデート - インポートに存在しないすべてのアセットのオブジェクトで、属性が編集されます。

      3. 無視 - インポートに存在しないアセットのオブジェクトは、削除もアップデートもされません。

    5. しきい値番号 - しきい値番号は、上記の [欠落しているオブジェクト] 設定フィールドで選択したルールが適用される前に、インポート元から欠落しているオブジェクトが無視される回数です。これは、インポート元のデータにオブジェクトが見つからなかった場合、すぐに削除されないようにするための安全機能です。

    6. 欠落しているアウトバウンド参照のオブジェクト - この設定は、上記で [欠落しているオブジェクト] の [更新] または [無視] を選択した場合にのみ表示されます。次の項目から選択します。

      1. 削除 - インポートからのアウトバウンド参照のみがアセット参照として保持されます。アセットで手動で作成されたアウトバウンド参照は削除されます。

      2. 無視 - インポートで見つからないアセットのアウトバウンド参照は、削除もアップデートもされません。

    7. 空の値 - オブジェクトが更新される際に、外部ソースからの空の値で既存の値を削除するかどうかを選択します。次の項目から選択します。

      1. デフォルトを使用 - 該当するオブジェクト タイプに対して [インポート構造を定義] 画面で指定された値を使用します。

      2. 削除 - 現在の値を削除します。属性がステータス、選択、または複数の値を持つ参照タイプ属性である場合、すべての値が削除されます。

      3. 無視 - 該当するオブジェクト タイプに対して現在の値を保持します。属性がステータス、選択、または複数の値を持つ参照タイプ属性である場合、すべての値が保持されます。

    8. 不明な値 - オブジェクトを更新する際に、外部ソースからの不明な値をアセット属性設定に追加する必要があります。次の項目から選択します。

      1. デフォルトを使用 - デフォルト値を使用します。

      2. 追加 - 2 つの値をまとめて追加します。

      3. 無視 - 現在の値を保持します。

  6. [作成] を選択します。

プレースホルダーを使ってテキスト データをオブジェクト参照に変換する

参照されるオブジェクトを作成したので、次は Hardware models オブジェクト タイプから Models オブジェクト タイプへの参照を作成します。

Hardware models の [オブジェクト マッピング] に移動して、Model の [属性マッピング] を選択します。データ インポートのプレーン テキストを参照先を示すリンクに変換するには、その [属性マッピング] の "AQL" フィールドにプレースホルダーを含む AQL ステートメントを使用する必要があります。

プレースホルダーとは、アセットが適切な場所で見つけたものを、AQL の該当する部分に入力するために情報を参照する方法です。

"AQL" フィールドには次を入力します。

Name = ${Category}

これによって、オブジェクトの名前属性がデータソースの Category データと一致するオブジェクトを探すように、アセットに指示されます。

テキスト データをオブジェクト参照に変換する新しい属性マッピングを作成するには、次の手順に従います。

  1. サービス プロジェクトから、[アセット] > [オブジェクト スキーマ] の順に移動します。

  2. オブジェクト スキーマを選択します。

  3. [Configure (設定)]、[インポート] タブの順に選択します。

  4. [インポート] タブで、インポート構造の [マッピングを編集] を選択してオブジェクト タイプ マッピングを表示します。

  5. [属性マッピングを編集] を選択して、属性タイプ マッピングを表示します。

  6. アセットにインポートされるすべてのオブジェクトには、少なくとも 1 つの情報が必要です。それは、データ ソース内のどこにオブジェクトがあるかをアセットに知らせる "データ ソース" フィールドです。"データ ソース" フィールドの詳細をご確認ください。

    1. データ ソース フィールドを選択します。データ ソース フィールドは、データ ファイル内のオブジェクトの場所を指定します。属性マッピングは、マッピングされた各属性にデータ ソース フィールドを指定するまで無効になります。

    2. データ ソース フィールドにマッピングする移動先属性を選択します。

    3. "AQL" フィールドを選択します。このフィールドのプレースホルダーを使用して、"データ ソース" フィールドのテキスト データをオブジェクト参照に変換します。これは次のようになります: Name = ${DataSourceFieldName}。なお、DataSourceFieldName"データ ソース" フィールドの名前です。

  7. 右側の [追加] をクリックします。

オブジェクト マッピングを有効にする

これで、属性マッピングの有効化が完了したため、このオブジェクト タイプの親オブジェクト マッピングを有効にできます。

有効化されたオブジェクト マッピングは、インポートの実行時にデータを取り込みます。なお、インポートの実行時に、無効化されたオブジェクト マッピングがデータに影響を与えることはありません。

オブジェクト マッピングを有効化するには、次の手順に従います。

  1. サービス プロジェクトから、[アセット] > [オブジェクト スキーマ] の順に移動します。

  2. オブジェクト スキーマを選択します。

  3. [Configure (設定)]、[インポート] タブの順に選択します。

  4. [インポート] タブで、有効化するオブジェクト マッピングの右側にある [...] を選択します。

  5. [有効化] を選択します。

欠落しているオブジェクトとしきい値番号を設定する

Hardware models のオブジェクト マッピングを作成したので、次は Hardware assets のマッピングを作成します。

さらに、このオブジェクト マッピングで設定の一部を構成して、チームがシステムでアセットのステータスを追跡しやすくします。

現在のインベントリにあるオブジェクトの追跡には、Hardware assets オブジェクト タイプを使用しています。そのデータ ソースと照合して、過去にデータ ソースに存在していたものの、現在は欠落しているオブジェクトを把握できるようにするのが目的です。

インポート構造に移動して、データ ファイルでオブジェクトが見つからない場合は Status 属性が「存在」から「欠落」に更新されるように、[欠落しているオブジェクト] を設定します。

さらに、[欠落しているオブジェクト] の設定で、[しきい値] を 1 に設定します。これは、たとえばデータ ファイルで欠落しているノート パソコンがある場合、データの同期を一度実行すると、そのノート パソコンのステータスが「存在」から「欠落」に変更されることを意味します。これによって、オブジェクトがアセットから削除される前に、手動によるデータの再確認や、欠落しているステータスに関連する自動化を実行できます。

データを再度同期してもノート パソコンが「欠落」のままである場合は、オブジェクト スキーマからオブジェクトが自動で削除されます。

新しいオブジェクト マッピングを作成するには:

  1. サービス プロジェクトから、[アセット] > [オブジェクト スキーマ] の順に移動します。

  2. オブジェクト スキーマを選択します。

  3. [スキーマ設定] を選択して、次に [インポート] タブを選択します。

  4. インポート構造で [マッピングを編集] を選択して、展開します。

  5. データから作成するオブジェクト タイプごとに、個別のオブジェクト タイプ マッピングを作成する必要があります。新しいオブジェクト タイプ マッピングを作成するには、[マッピングを作成] ボタンを選択します。[新しいオブジェクト タイプ マッピングを作成] 画面で、次の情報を入力します。

    1. オブジェクト - データから作成するオブジェクト タイプを選択します。上記のステップ (2) に従って、データをインポートするオブジェクト タイプを作成しておく必要があります。

    2. IQL によるデータソースのフィルタリング - ソースからフェッチされたオブジェクトをクエリするためのオプションの IQL。データからオブジェクトをフィルタリングする場合は、ここで実行できます。

    3. 識別子の大小文字の区別 - 次のいずれかを選択します。

      1. 大文字と小文字を区別 - ID は大文字と小文字を区別して比較されるため、「Data Value」は「data value」と同じ ID とはみなされません。

      2. 大文字と小文字を区別しない: ID は大文字と小文字を無視して比較されるため、「Data Value」と「data value」は同じ ID としてみなされます。

    4. 欠落しているオブジェクト - 以下から選択します。

      1. 削除 - インポートからのエントリのみ、アセット オブジェクトとして保持されます。アセットに手動で作成されたオブジェクトは削除されます。

      2. アップデート - インポートに存在しないすべてのアセットのオブジェクトで、属性が編集されます。

      3. 無視 - インポートに存在しないアセットのオブジェクトは、削除もアップデートもされません。

    5. しきい値番号 - しきい値番号は、上記の [欠落しているオブジェクト] 設定フィールドで選択したルールが適用される前に、インポート元から欠落しているオブジェクトが無視される回数です。これは、インポート元のデータにオブジェクトが見つからなかった場合、すぐに削除されないようにするための安全機能です。

    6. 欠落しているアウトバウンド参照のオブジェクト - この設定は、上記で [欠落しているオブジェクト] の [更新] または [無視] を選択した場合にのみ表示されます。次の項目から選択します。

      1. 削除 - インポートからのアウトバウンド参照のみがアセット参照として保持されます。アセットで手動で作成されたアウトバウンド参照は削除されます。

      2. 無視 - インポートで見つからないアセットのアウトバウンド参照は、削除もアップデートもされません。

    7. 空の値 - オブジェクトが更新される際に、外部ソースからの空の値で既存の値を削除するかどうかを選択します。次の項目から選択します。

      1. デフォルトを使用 - 該当するオブジェクト タイプに対して [インポート構造を定義] 画面で指定された値を使用します。

      2. 削除 - 現在の値を削除します。属性がステータス、選択、または複数の値を持つ参照タイプ属性である場合、すべての値が削除されます。

      3. 無視 - 該当するオブジェクト タイプに対して現在の値を保持します。属性がステータス、選択、または複数の値を持つ参照タイプ属性である場合、すべての値が保持されます。

    8. 不明な値 - オブジェクトを更新する際に、外部ソースからの不明な値をアセット属性設定に追加する必要があります。次の項目から選択します。

      1. デフォルトを使用 - デフォルト値を使用します。

      2. 追加 - 2 つの値をまとめて追加します。

      3. 無視 - 現在の値を保持します。

  6. [作成] を選択します。

追加の属性マッピングを作成する

Hardware assets のオブジェクト マッピングを作成して、データ ソースと一致するように設定しました。次は、属性マッピングをいくつか作成する必要があります。

これらは、Hardware models の属性マッピングを作成したときと同じ方法で作成します。

属性タイプのマッピング フィールドに次のように入力します。

  1. "データ ソース" フィールド: 名前 | 移動先属性 : 名前

  2. "データ ソース" フィールド: モデル名 | 移動先属性 : モデル名 | AQL: Name = ${Model Name}

  3. "データ ソース" フィールド: 購入日 | 移動先属性: 購入日

  4. "データ ソース" フィールド: ステータス | 移動先属性: ステータス

  5. "データ ソース" フィールド: 所有者グループ | 移動先属性: 所有者グループ

  6. "データ ソース" フィールド: アイテム タイプ | 移動先属性: アイテム タイプ

Model name 属性では、AQL 情報を必ず追加してください。

新しい属性マッピングを作成するには、次の手順に従います。

  1. サービス プロジェクトから、[アセット] > [オブジェクト スキーマ] の順に移動します。

  2. オブジェクト スキーマを選択します。

  3. [Configure (設定)]、[インポート] タブの順に選択します。

  4. [インポート] タブで、インポート構造の [マッピングを編集] を選択してオブジェクト タイプ マッピングを表示します。

  5. [属性マッピングを編集] を選択して、属性タイプ マッピングを表示します。

  6. アセットにインポートされるすべてのオブジェクトには、少なくとも 1 つの情報が必要です。それは、データ ソース内のどこにオブジェクトがあるかをアセットに知らせる "データ ソース" フィールドです。"データ ソース" フィールドの詳細をご確認ください。

    1. データ ソース フィールドを選択します。データ ソース フィールドは、データ ファイル内のオブジェクトの場所を指定します。属性マッピングは、マッピングされた各属性にデータ ソース フィールドを指定するまで無効になります。

    2. データ ソース フィールドにマッピングする移動先属性を選択します。

    3. オプションで、この属性マッピングの初期設定を変更できます。

      1. AQL - データから参照を作成するには、ここに AQL ステートメントを入力します。

      2. 連結子 - ここに、この属性マッピングにのみ適用される代替連結子を入力します。

      3. 正規表現 - ここに、この属性マッピングにのみ適用される正規表現 (regex) を入力します。

      4. Base 64 - ここに代替の Base 64 値を入力します。

  7. 識別子として属性の 1 つを選択します。識別子は各オブジェクトを一意に識別し、オブジェクトが作成されるときにそのオブジェクトの新しいラベルになります。インポートを実行するには、識別子を 1 つのみ含める必要があります。識別子は、データの更新時にも重要です。ターゲット スキーマに同じ識別子がある場合はオブジェクトが更新され、ターゲット スキーマに識別子が見つからない場合はオブジェクトが作成されます。

  8. 右側の [追加] をクリックします。

親オブジェクト タイプと子オブジェクト タイプへのインポートを理解する

オブジェクト スキーマに親オブジェクト タイプと子オブジェクト タイプが含まれている場合は、親オブジェクト タイプに直接インポートして、"データ ソースを AQL で絞り込む" フィールドで受信するオブジェクトをフィルタリングできます。親の属性の 1 つに基づいて、受信するオブジェクトが子オブジェクト タイプのいずれかに割り当てられます。

この機能を使用すると、データをインポートするときに、単一のデータ ソースを使用して複数のオブジェクト タイプの子を動的に生成できます。

今回の例では、Hardware assets オブジェクト タイプを抽象に設定しているので、受信する各オブジェクトを PhonesLaptopsServers または Printers のいずれかの子オブジェクト タイプにフィルタリングする必要があります。Hardware assets オブジェクト タイプでオブジェクトを作成しようとしても、それらは表示されません。

"データ ソースを AQL で絞り込む" フィールドは、すでにアセットにマッピングされているデータに基づいてのみ、オブジェクトをフィルタリングするため、フィルターとして使用するには、データに "データ ソース" フィールドが必要となります。前のステップでマッピングした Item type 属性を使用して、オブジェクトを子オブジェクト タイプに分割します。

子オブジェクト マッピングを作成する

4 つの各子オブジェクト タイプにおいて、Hardware assets の属性マッピングの下部にある [子マッピングを作成] を選択します。

[子オブジェクト マッピングを作成] 画面で、子オブジェクト タイプのうち 1 つをオブジェクト タイプとして選択します。

  1. Phones

  2. Laptops

  3. Servers

  4. Printers

それぞれの子オブジェクト タイプのマッピングごとに、"データソースを AQL で絞り込む" フィールドを次のように設定します。

  1. Phones | "Item Type" IN "Phone"

  2. Laptops | "Item Type" IN "Laptop"

  3. Servers | "Item Type" IN "Server"

  4. Printers | "Item Type" IN "Printer"

これで、インポートの実行時に「データ ソースを AQL で絞り込む」の AQL クエリと一致する子オブジェクト タイプでオブジェクトが作成されます。

  1. サービス プロジェクトから、[アセット] > [オブジェクト スキーマ] の順に移動します。

  2. オブジェクト スキーマを選択します。

  3. [スキーマ設定] を選択して、次に [インポート] タブを選択します。

  4. [インポート] タブで、インポート構造の [マッピングを編集] を選択して展開します。

  5. 子マッピングを作成するオブジェクト タイプ マッピング > [属性マッピングを編集] の順に選択します。

  6. 子マッピングを作成するボタンが属性マッピングの下に表示されます。これを選択して次の情報を入力します。

    1. オブジェクト タイプ - 子オブジェクト タイプは親オブジェクト タイプと同じになるため、このオプションは無効になります。

    2. IQL によるデータソースのフィルタリング - ソースからフェッチされたオブジェクトをクエリするためのオプションの IQL。データからオブジェクトをフィルタリングする場合は、ここで実行できます。

    3. 識別子の大小文字の区別 - このオプションは無効になります。

    4. 欠落しているオブジェクト - 以下から選択します。

      1. 削除 - インポートからのエントリのみ、アセット オブジェクトとして保持されます。アセットに手動で作成されたオブジェクトは削除されます。

      2. アップデート - インポートに存在しないすべてのアセットのオブジェクトで、属性が編集されます。

      3. 無視 - インポートにないアセットのオブジェクトは、削除や更新が行われません。

    5. 欠落しているアウトバウンド参照のオブジェクト - 次から選択します。

      1. 削除 - インポートからのアウトバウンド参照のみがアセット参照として保持されます。アセットで手動で作成されたアウトバウンド参照は削除されます。

      2. 無視 - インポートで見つからないアセットのアウトバウンド参照は、削除もアップデートもされません。

    6. 空の値 - オブジェクトが更新される際に、外部ソースからの空の値で既存の値を削除するかどうかを選択します。次の項目から選択します。

      1. デフォルトを使用 - 該当するオブジェクト タイプに対して [インポート構造を定義] 画面で指定された値を使用します。

      2. 削除 - 現在の値を削除します。属性がステータス、選択、または複数の値を持つ参照タイプ属性である場合、すべての値が削除されます。

      3. 無視 - 該当するオブジェクト タイプに対して現在の値を保持します。属性がステータス、選択、または複数の値を持つ参照タイプ属性である場合、すべての値が保持されます。

    7. 不明な値 - このオプションは無効になります。

  7. [作成] を選択します。

子オブジェクト マッピングに属性マッピングを追加する

先ほど作成した子マッピングの 1 つを選択して、その属性マッピングを確認すると、既存の属性マッピングのリストがすでにあることに気付くでしょう。

これらは親オブジェクト タイプから継承される属性です。[子マッピングを作成] で作成されたマッピングのすべての子オブジェクト タイプに含まれます。

ただし、子オブジェクト タイプの一部には、データ ファイルからデータを引き出す必要がある追加の属性が含まれている場合もあります。Phones 属性タイプの場合、これらの属性は IMEIPhone number です。

これら 2 つの属性マッピングは、これまでと同じ方法で追加できます。具体的には、[追加] ボタンをクリックして、"データ ソース" フィールド移動先属性を選択します。

新しい属性マッピングを作成するには、次の手順に従います。

  1. サービス プロジェクトから、[アセット] > [オブジェクト スキーマ] の順に移動します。

  2. オブジェクト スキーマを選択します。

  3. [Configure (設定)]、[インポート] タブの順に選択します。

  4. [インポート] タブで、インポート構造の [マッピングを編集] を選択してオブジェクト タイプ マッピングを表示します。

  5. [属性マッピングを編集] を選択して、属性タイプ マッピングを表示します。

  6. アセットにインポートされるすべてのオブジェクトには、少なくとも 1 つの情報が必要です。それは、データ ソース内のどこにオブジェクトがあるかをアセットに知らせる "データ ソース" フィールドです。"データ ソース" フィールドの詳細をご確認ください。

    1. データ ソース フィールドを選択します。データ ソース フィールドは、データ ファイル内のオブジェクトの場所を指定します。属性マッピングは、マッピングされた各属性にデータ ソース フィールドを指定するまで無効になります。

    2. データ ソース フィールドにマッピングする移動先属性を選択します。

    3. オプションで、この属性マッピングの初期設定を変更できます。

      1. AQL - データから参照を作成するには、ここに AQL ステートメントを入力します。

      2. 連結子 - ここに、この属性マッピングにのみ適用される代替連結子を入力します。

      3. 正規表現 - ここに、この属性マッピングにのみ適用される正規表現 (regex) を入力します。

      4. Base 64 - ここに代替の Base 64 値を入力します。

  7. 識別子として属性の 1 つを選択します。識別子は各オブジェクトを一意に識別し、オブジェクトが作成されるときにそのオブジェクトの新しいラベルになります。インポートを実行するには、識別子を 1 つのみ含める必要があります。識別子は、データの更新時にも重要です。ターゲット スキーマに同じ識別子がある場合はオブジェクトが更新され、ターゲット スキーマに識別子が見つからない場合はオブジェクトが作成されます。

  8. 右側の [追加] をクリックします。

インポートを実行する

ではいよいよ、インポートを実行してデータをアセットに取り込み、オブジェクト、その属性、参照を入力してみましょう。

2 つのソースからデータをインポートするので、どちらのインポートを最初に実行するかを決めることが重要になります。

Models import には、Assets import がその独自のフィールドを入力するために使用するモデルのリストが含まれているので、最初にモデルのインポートを実行し、次に資産のインポートを実行するのが理にかなっています。

また、在庫はモデルのリストよりも頻繁に (そしてより不定期に) 変化するため、資産のインポートはモデルのインポートよりも実行頻度が高いと考えられます。

インポートを実行するには、次の手順に従います。

  1. オブジェクト スキーマを選択します。

  2. [スキーマ設定] を選択して、次に [インポート] タブを選択します。

  3. インポート」タブで、実行するインポート構造の [データをインポート] を選択します。

  4. 進捗バーがインポート構造に表示されます。インポートが完了すると、インポート構造に「Import succeeded (インポートに成功しました)」または「Import succeeded (インポートに失敗しました)」と表示されます。

  5. 必要に応じて、インポート構造自体の [詳細を表示] を選択してインポート結果の詳細を確認できます。または、[履歴を表示] を選択して完了したすべてのインポートの履歴を表示できます。

インポート結果をインポート履歴に表示する

これでインポートが実行され、オブジェクトとその属性が作成されたことを確認できるようになりました。しばらくすると、情報がインポートされ、オブジェクト スキーマで確認できるようになります。

また、インポート履歴機能を使用して完了したインポートを確認し、すべて計画どおりに進んだかどうかを確認することもできます。それでは、実際に確認してみましょう。

インポートでは外部データをアセットに取り込みます。[インポート履歴] 画面で、実行中のインポートと完了したインポートの詳細を確認できます。

  1. オブジェクト スキーマを選択します。

  2. [スキーマ設定] を選択して、次に [インポート] タブを選択します。

  3. [履歴を表示] を選択します。

  4. 次の情報をご参照いただけます。

    1. 開始時刻 - インポートが開始された日時。

    2. 終了時刻 - インポートが完了した日時。

    3. 名前 - インポートのタイプ (CSV、JSON、または外部アプリ) とインポートの名前。

    4. 期間 - インポートを実行するのに必要な時間。

    5. ステータス - インポートの状態。成功または失敗

    6. アクター - インポートを実行しているユーザー。

    7. 操作 - 選択すると、完了したインポートの詳細が表示されます。

      1. モジュール情報 - このインポートで使用されるインポート モジュールの一意の識別子。

      2. 構成 ID - 使用されるインポート構造の一意の識別子。

      3. オブジェクト タイプごとの詳細 - 個々のオブジェクト タイプのインポート結果に関する詳細が含まれます。

        1. エントリ数

        2. ID に基づいてオブジェクトを複製

        3. 新規作成したオブジェクト

        4. 外部データの読み取り時間

        5. アクションの実行時刻

        6. アセット データの書き込み時間

        7. 実行時間

 

お疲れ様でした!

ここでは、オブジェクトと属性のマッピングの仕組みを学びました。また、データをマッピングしてテキスト属性と他のオブジェクトへの参照の両方を作成する方法も学びました。

インポート構造として、Models importAssets import の 2 つを作成しました。

これらのインポートごとに、各データ ファイルからオブジェクトを作成するためのオブジェクト マッピングを作成しました。また、カタログ項目のさまざまなカテゴリについての情報を保持する 3 つ目のオブジェクト マッピングとして、Hardware models を作成しました。これらの情報を参照としてリンクすることで、より強固なオブジェクト スキーマを作成できます。

次に、属性マッピングを作成し、2 つのソース データ セットのすべてのデータ ソース フィールドを対象の移動先属性にマッピングして、各オブジェクトの属性を作成しました。

また、プレースホルダーを含む AQL フィールドを使用してオブジェクト間のリンクを生成し、データ ファイルの一部のテキスト データをオブジェクト参照に変換しました。

インポート構造の 1 つである Assets import を設定し、既存のオブジェクトをデータ ソースと照合して欠落しているオブジェクトがないかどうかをチェックし、そのようなオブジェクトが見つかった場合は、しきい値番号を超える回数のインポートの完了後にオブジェクト スキーマからそれらのエントリが削除されるようにしました。

加えて、以下の作業も行いました。

ここでは、親オブジェクト タイプと子オブジェクト タイプを含む複雑なオブジェクト スキーマに情報を取り込もうとしていたので、Assets import からオブジェクトを受け取り、そのオブジェクトを適切なオブジェクト タイプ別に自動で並べ替えるための子オブジェクト マッピングをいくつか作成しました。並べ替えは、[データ ソースを AQL で絞り込む] フィールドに指定した AQL クエリで作成した属性マッピングに基づいて実行されます。

複数のデータ ソースからインポートを実行する場合、インポートの順序を判断することが重要であると学びました。

最後にインポートを実行し、インポート履歴パネルを使用して完了したインポートの結果を確認しました。

さらにヘルプが必要ですか?

アトラシアン コミュニティをご利用ください。