Skip to main content

This documentation is for an older version of this product. See the latest version of this content.Opens in a new tab

キューブのコンパイルとビルド

ここでは、キューブをコンパイルおよびビルドする方法を説明します。

Note:

構築プロセス中、ユーザはクエリを実行できません。(ただし、クエリを現在実行中の場合は、キューブをビルドできます)。

以下の関連トピックについては、"InterSystems Business Intelligence の実装" を参照してください。

  • キューブの同期。このプロセスでは、キューブがインクリメンタルに更新されます (また、クエリの同時実行が許可されます)。"キューブの最新状態の維持" を参照してください。

  • InterSystems Business Intelligence キューブ・マネージャ・ユーティリティ。これは通常、プロダクション・システムで使用します。キューブ・マネージャは、指定に従ってキューブを構築または同期する自動化タスクを作成します。"キューブの最新状態の維持" を参照してください。

  • キューブ・バージョン機能。この機能を使用すると、実行中クエリのわずかな中断しか伴わずに、キューブ定義の変更、構築、ユーザへの提供を行うことができます。"キューブ・バージョンの使用" を参照してください。

"このドキュメントに示したサンプルのアクセス方法" も参照してください。

リコンパイルおよび再構築のタイミング

キューブ・クラスまたはサブジェクト領域クラスに変更を加える場合、その変更を有効にするには、そのクラスをリコンパイルする必要があります。キューブに多数の変更がある場合、その変更を有効にするには、キューブも再構築する必要があります。

以下のテーブルは、変更の後に必要なアクションを示しています。

要素タイプ 変更のタイプ 必要なアクション
キューブ (ルート要素) [名前] または [ソースクラス] の編集 リコンパイルおよび再構築
フィルタ値 キューブに適用するがキューブ内の特定の要素には適用しないその他の変更 リコンパイル
メジャー 既存のメジャーの以下のオプションの編集 (その他多くの要素にこれらの共通オプションの一部または全部があります)
  • 無効

  • [隠し]

  • 表示名

  • 説明

  • 形式文字列

リコンパイル
メジャーの削除 リコンパイル
メジャーの追加など、その他のすべての変更 変更されたメジャーのリコンパイルおよび選択的構築の実行、またはリコンパイルおよびキューブの完全再構築の実行
ディメンジョン (計算ディメンジョン以外) 既存のディメンジョンの以下のオプションの編集
  • メジャーの場合と同じ共通オプション

  • このディメンジョンの All レベルの有効化

  • All メンバのキャプション

  • All メンバの表示名

リコンパイル
ディメンジョンの削除 リコンパイル
ディメンジョンの追加など、その他のすべての変更 変更されたディメンジョンを構成するレベルのリコンパイルおよび選択的構築の実行、またはリコンパイルおよびキューブの完全再構築の実行
計算ディメンジョン すべての変更 リコンパイル
NLP ディメンジョン すべての変更 リコンパイル
階層 既存の階層の共通オプションの編集 (メジャーの場合と同様) リコンパイル
階層 階層の追加や削除など、その他のすべての変更 リコンパイル
レベル 既存のレベルの以下のオプションの編集
  • メジャーの場合と同じ共通オプション

  • ヌル置換文字列

  • 並べ替えオプション

リコンパイル
レベルの削除 リコンパイル
レベルの追加など、その他のすべての変更* 変更されたレベルのリコンパイルおよび選択的構築の実行、またはリコンパイルおよびキューブの完全再構築の実行
プロパティ 既存のプロパティの以下のオプションの編集
  • メジャーの場合と同じ共通オプション

  • プロパティ値を基準にしたメンバの並べ替え

リコンパイル
プロパティ プロパティの追加や削除など、その他のすべての変更 リコンパイルおよび再構築
リスト すべての変更 リコンパイル
計算メンバ すべての変更 リコンパイル
名前付きセット すべての変更 リコンパイル
サブジェクト領域 すべての変更 リコンパイル
複合キューブ (サブジェクト領域の一種) すべての変更 リコンパイル (複合キューブ内で使用されるすべてのキューブのリコンパイル)
品質メジャー すべての変更 品質メジャー・クラスのリコンパイル
KPI またはプラグイン すべての変更 KPI クラスまたはプラグイン・クラスのリコンパイル

*現在のサーバ・ロケールによって時間ディメンジョンのメンバの名前が決まります。("ロケールを使用した時間メンバ名の制御" を参照してください。)ロケールを変更した場合は、キューブをリコンパイルおよび再構築する必要があります。

ディメンジョンまたはレベルを削除してリコンパイルしても、関連付けられているレベル・テーブルおよびインデックスは削除されません。また、キューブの再構築によって、不要になったレベル・テーブルおよびインデックスが削除されることもありません。

キューブのコンパイル

アーキテクトでキューブ・クラスをコンパイルする手順は以下のとおりです。

  1. [コンパイル] をクリックします。

    クラスのコンパイルが開始され、進捗状況を示すダイアログ・ボックスが表示されます。

    保存していない変更がある場合は、キューブをコンパイルする前に、システムによって変更が保存されます。

  2. [OK] をクリックします。

または、スタジオでキューブ・クラスを開き、他のクラスのコンパイルと同じ方法でこれをコンパイルします。

キューブ・クラスをコンパイルする際には、必要に応じてファクト・テーブルとすべての関連クラスが自動的に生成されます。ファクト・テーブルが既に存在する場合、構造を変更する必要がある場合にのみ、システムによりファクト・テーブルが再生成されます。

このキューブにキャッシュされた結果が存在する場合、これらはシステムにより削除されます。

キューブの構築

キューブの構築という用語は、ファクト・テーブルおよびその他のテーブルへのデータの追加と、このデータへのアクセスに使用されるインデックスの構築の 2 つのタスクを指します。

アーキテクトでキューブの完全構築を実行する手順は以下のとおりです。

  1. [ビルド] をクリックします。

    ダイアログ・ボックスが表示されます。

    [ビルド] オプションがグレー表示されていることがあります。その場合は、構築を実行する前にキューブをコンパイルする必要があります。

  2. 必要に応じて、[構築する最大レコード数] の値を指定します。

    既定では、システムは、ソース・テーブル内のすべてのレコードの繰り返し処理を行い、同じ数のレコードをファクト・テーブルに構築します。キューブ作成時にこの動作をオーバーライドできます。[構築する最大レコード数] オプションを指定すると、システムはその数のレコードだけを繰り返し処理します。その結果、ファクト・テーブルは小さくなり、システムによる構築時間が短くなります。

    [構築する最大レコード数] フィールドがある数値で初期化されると、キューブ・クラスは既定の動作をオーバーライドします (詳細は、"キューブ・クラスのリファレンス情報" の "<cube>" で maxFacts 属性を参照してください)。この場合、キューブ・クラスで指定された値を使用するか、またはより小さい値を入力できます。

  3. ダイアログ・ボックスの [構築オプション] セクションで [すべて構築] を選択します。

  4. [ビルド] をクリックします。

    キューブの構築が開始され、その進捗状況が表示されます。構築中、[コンパイル] ボタンは無効になっています (グレー表示)。

    Note:

    構築プロセス中に [閉じる] ボタンをクリックしても、構築プロセスは中断されません。いつでも再度開いて、現在進行中のビルドの現在の状態を確認できます。ダイアログが閉じている間に構築が完了した場合、構築の完了を知らせるためにダイアログが再び表示されます。

  5. [完了] をクリックします。

これで、"アナライザの使用法" で説明されているようにキューブの使用が可能になります。

選択的構築の使用

選択的構築機能を使用すると、キューブ全体を再構築することなく、また再構築に伴うダウンタイムが発生することなく、キューブ内の特定の要素を構築できます。例えば、最近、特定のディメンジョンに変更を加えた場合、または 1 つのディメンジョンにのみ影響するソース・データの変更がある場合、選択的ビルドを使用して、そのディメンジョン内の関連するレベルを構築できます。選択的構築を使用して、最近追加されたレベル、メジャー、またはリレーションシップを構築することもできます。

選択的構築を使用して、キューブ内の特定のレベル、メジャー、またはリレーションシップを構築できます。すなわち、選択的構築を使用すると、ファクト・テーブル内の列 (それぞれがレベル、メジャー、またはリレーションシップに対応します) が構築されます。キューブで選択的構築を使用しても、そのキューブの従属キューブを更新する必要はありません。

キューブの定義の要素を他のキューブから継承することがあります。他のキューブから継承したキューブに対して選択的構築が有効になっている場合、継承するキューブはスーパーキューブ定義内の指定された factNumbers を読み取り、factNumbers をサブキューブ定義に適切に割り当てることができます。サブキューブは、スーパーキューブの factNumbers が同じままであるとは想定していないため、自身のすべての factNumbers を再生成します。スーパーキューブには、現在のキューブ内のコンパイル済みの factNumber と競合する factNumber が割り当てられている可能性がありますが、これにより、スーパーキューブでの変更から現在のキューブを保護できます。

選択的構築の影響

選択的構築の実行中は、構築中のキューブ要素のみ、クエリに使用できなくなります。選択的構築とキューブの同期を同時に実行することはできないため、キューブは完全構築のように完全に無効ではないとはいえ、選択的構築の実行中に、キューブの同期は実行できません (逆の場合も同様です)。多大な構築操作を実行すると、計画されている同期がブロックされる可能性があります。さらに、選択的構築は完全構築よりも時間がかかるため、それ相応の時間を割り当てる必要があります。

選択的構築は、ファクト・テーブル内の列の更新のみを実行するもので、ファクト・テーブルに新しい行は挿入しないため、選択的構築の後にキューブを同期することをお勧めします。

複数の選択的構築を同時に実行することができます。この場合、各選択的構築では、選択したキューブ要素のみが構築されます。選択的構築では複数の列を一度に構築できますが、列を複数回同時に構築することはできません。

選択的構築のエラーは、キューブの完全構築のエラーと同様に処理されます。

特定のレベルまたはメジャーの値に基づいてキューブ内のファクトを条件付きで処理するために %OnProcessFact() を実装する場合、そのレベルまたはメジャーを、そのキューブの選択的構築に含める必要があります。そうしないと、選択的構築でエラーが生じます。

アーキテクトでの選択的構築の使用

選択的構築は、すべてのキューブに対して自動的に有効になります。選択的構築を使用する前に、キューブをコンパイルする必要があります。

以下の手順に、選択的構築機能の使用例を示します。

  1. アナライザに移動して、HoleFoods キューブを開きます。

  2. [モデル・コンテンツ] ペインで Outlet ディメンジョンを拡張してから、Region レベルを拡張します。Region レベルを [行] 領域にドラッグします。生成されたピボット・テーブルを確認します。

  3. 次に、アーキテクトを開きます。モデル・ビューワで Outlet ディメンジョンの Region レベルをクリックします。

  4. 右側の詳細領域[ソース値] で、[式] を選択します。[式] テキスト・ボックスに以下を入力します。

    %source.Outlet.Country.Region.%ID _ "-" _ %source.Outlet.Country.Region.Name
    
  5. HoleFoods キューブをコンパイルします。

  6. [ビルド] をクリックします。[キューブの構築] ダイアログが表示されたら、[Outlet].[H1].[Region] レベルが変更されたことが自動的に検出され、[Outlet].[H1].[Region] に選択的構築が事前に選択されることに注意してください。[ビルド] をクリックします。

  7. アナライザに戻ります。[モデル・コンテンツ] ペインで Outlet ディメンジョンを拡張してから、Region レベルを拡張します。Region レベルを [行] 領域にドラッグします。生成されたピボット・テーブルを確認し、Region レベルの違いに注目します。

プログラムによるキューブのビルド

キューブをプログラムでビルドするには、%DeepSee.UtilsOpens in a new tab クラスの %BuildCube()Opens in a new tab クラス・メソッドを実行します。このメソッドには、以下のシグニチャがあります。

classmethod %BuildCube(pCubeName As %String, pAsync As %Boolean = 1,  pVerbose As %Boolean = 1, 
                        pIndexOnly As %Boolean = 1, pMaxFacts As %Boolean = 0, pTracking As %Boolean = 0, 
                        ByRef pBuildStatistics As %String = "", pFactList As %String) as %Status

以下は、この指定の説明です。

  • pCubeName は、XData ブロックで指定されているキューブの論理名です。この名前は大文字と小文字が区別されません。

  • pAsync は、システムが複数のバックグラウンド・プロセスでビルドを実行するかどうかを制御します。この引数が true の場合、システムは複数のプロセスを使用し、それらがすべて完了するまで戻りません。この引数が false の場合、システムは単一のプロセスを使用し、それが完了するまで戻りません。

    Note:

    キューブ・オプションの [初期ビルド順] を指定している場合、システムは pAsync の値を無視し、単一プロセスを使用してキューブをビルドします。これらのオプションについては、"キューブ・オプションの指定" で説明します。

    WARNING:

    ビルド・プロセスのカスタム・コードで HALT を呼び出すことはできません。DeepSee エージェントを終了すると、優先度が低いエージェントの終了の連鎖が発生し、新規タスクに使用できるエージェントの不足により、ビルドが停止することがあります。

  • pVerbose は、メソッドがステータス情報を書き込むかどうかを制御します。この引数が 1 の場合は、コマンド行に状態の更新が書き込まれます。(この引数は、メソッドが構築エラーやその他のロギング情報を書き込むかどうかに影響しません。)

  • pIndexOnly は、メソッドがインデックスのみを更新するかどうかを制御します。この引数が 1 の場合は、システムはファクト・テーブルのインデックスのみを更新します。

  • pMaxFacts は、ファクト・テーブルの最大行数を指定します。これによって、キューブの構築時に使用されるベース・テーブルの行数が決まります。

    pMaxFacts が 0 の場合 (既定)、ベース・テーブルのすべての行が処理されます。

  • pTracking は内部用です。

  • pBuildStatistics は、キューブの構築に関する情報の配列を返します。この配列には以下のノードがあります。

    ノード
    pBuildStatistics(“elapsedTime”) 構築の経過時間 (秒単位)。
    pBuildStatistics(“errors”) 構築エラーの数。
    pBuildStatistics(“factCount”) 構築およびインデックス付けされたファクトの数。
    pBuildStatistics(“missingReferences”) 欠落している参照の数。
    pBuildStatistics(“expressionTime”) キューブ要素を構築する sourceExpressions の処理にかかった時間。
    pBuildStatistics(“iKnowTime”) NLP インデックスの構築にかかった時間。
  • pFactList は、キューブのファクト・クラスの特定のプロパティ名のリストです。pFactList が提供される場合、ビルドではそのファクト・リストに表示されている列のみが更新されます。このリストは、コンマ区切りまたは $LB 形式です。更新中の特定のファクトは、クエリに利用不可と個別にマークされ、これらのファクトに基づいてディメンジョンを参照するクエリを準備すると、エラーが返されます。

このメソッドはステータスを返します。キューブの構築中にエラーが発生した場合は、ステータス・コードにより構築エラーの数が示されます。

以下はその例です。

 set status = ##class(%DeepSee.Utils).%BuildCube("patients")

このメソッドは、以下の情報を示す出力を記述します。

  • 使用されるプロセッサの数。

  • 構築プロセスに要する経過時間の合計。

  • ソース式を評価するために費やした時間の合計 (すべてのプロセッサの総合計)。

以下はその例です。

 
Building cube [patients]
Existing cube deleted.
Fact table built:        1,000 fact(s) (2 core(s) used)
Fact indices built:      1,000 fact(s) (2 core(s) used)
Complete
Elapsed time:                  1.791514s
Source expression time:        0.798949s

Source expression time が大きすぎると考えられる場合は、ソース式ができる限り効率的であることを再検査する必要があります。特に、その式で SQL クエリを使用している場合は、そのクエリが使用するテーブルに適切なインデックスがあることを再度確認してください。

キューブ構築ステータス

進行中の構築がある場合、%BuildStatus()Opens in a new tab メソッドを使用してその進行状況を監視できます。ターミナルで、次のように呼び出します。

  DO ##class(%DeepSee.Utils).%BuildStatus("cubeName")

構築の開始にプログラムを使用した場合でも、アーキテクトを使用した場合でも、%BuildStatus() から構築の進行状況がレポートされます。進行中の構築がない場合、%BuildStatus() は最近の構築のタイムスタンプを表示します : 進行中の構築はありません。最後の構築は 06/23/2020 11:31:07 に終了しました。

プログラムで開始された構築の進行状況は、アーキテクトの構築ダイアログからもレポートされます。

開発におけるキューブ・サイズの最小化

キューブの開発時は、一般にリコンパイルと再構築を頻繁に行います。大量のデータ・セットを使用している場合は、キューブをより迅速に再構築するため、ファクト・テーブル内のファクト数を制限することがあります。これを行うには、以下のいずれかを実行します。

  • アーキテクトでキューブを構築する場合は、[構築する最大レコード数] の値を指定します。

  • スタジオでキューブ・クラスを編集して、maxFacts 属性を <cube> 要素に追加します。"キューブ・クラスのリファレンス情報" を参照してください。

    これを実行する場合は、この属性を導入前に確実に削除してください。

  • ターミナルでキューブを構築して、pMaxFacts 引数を指定します。このページで前述の "プログラムによるキューブのビルド" を参照してください。

選択的構築時は、これらのオプションはすべて無視されます。

キューブの構築時の並行処理の使用法

以下のすべての項目が該当する場合、システムはビルドの実行に複数のコアを使用します。

キューブを非同期的に構築するときに、並列処理が使用できる場合、その作業を実行するために、システムによって %SYSTEM.WorkMgrOpens in a new tab エージェントが設定されます。

Note:

これらのエージェントは、クエリの実行にも使用されます。

まれに、これらのエージェントのリセットが必要になることがあります。この操作には、%DeepSee.UtilsOpens in a new tab%Reset()Opens in a new tab メソッドを使用します。また、このメソッドは、保留中のタスクを消去して、現在のネームスペースの結果キャッシュを消去します。これらは、すべてのユーザに直ちに影響を与えます。このメソッドは、開発時にのみ使用するように意図されています。

構築エラー

キューブの構築の際は、表示されるエラー・メッセージ、および構築されるファクトとインデックスの数に注意してください。このセクションでは、以下の項目について説明します。

トラブルシューティング・オプションの詳細は、InterSystems Developer CommunityOpens in a new tab を参照してください。

構築エラーの確認

アーキテクトまたはターミナルでキューブを構築する際、構築エラーがあるかどうかが示されますが、それらのすべてが表示されるわけではありません。記録された構築エラーをすべて確認するには、以下のいずれかを実行します。

  • ログ・ファイル install-dir/mgr/DeepSeeUpdate_cube_name_NAMESPACE.log を探します。cube_name はキューブ名で、NAMESPACE はこのキューブが定義されているネームスペースです。

    このファイルのタイム・スタンプでは $NOW を使用してローカルの日時が記録されます。サマータイムは無視されます。

  • 以下のように、%DeepSee.UtilsOpens in a new tab%PrintBuildErrors()Opens in a new tab メソッドを使用します。

    do ##class(%DeepSee.Utils).%PrintBuildErrors(cubename)
    

    cubename はキューブの論理名で、引用符で囲みます。

    このメソッドはすべての構築エラーに関する情報を表示します。以下に例を示します (改行が追加されています)。

    SAMPLES>do ##class(%DeepSee.Utils).%PrintBuildErrors("holefoods")
        1 Source ID: 100000
          Time: 05/09/2019 14:12:52
          ERROR #5002: ObjectScript error: <DIVIDE>%UpdateFacts+106^HoleFoods.Cube.Fact.1
        2 Source ID: 200000
          Time: 05/09/2019 14:12:41
          ERROR #5002: ObjectScript error: <DIVIDE>%UpdateFacts+106^HoleFoods.Cube.Fact.1
        3 Source ID: 300000
          Time: 05/09/2019 14:13:13
          ERROR #5002: ObjectScript error: <DIVIDE>%UpdateFacts+106^HoleFoods.Cube.Fact.1
        ...
        10 build error(s) for 'holefoods'
    
Important:

システムによりエラーが生成されない場合もあるため、ファクト数の確認も重要です (次のセクションを参照)。

ファクト数の確認

キューブの構築の際は、構築されるファクトとインデックスの数が報告されます。

各ファクトは、ファクト・テーブル内のレコードです。以下の場合を除き、ファクト・テーブルには、ベース・テーブルと同じ数のレコードが存在します。

また、システムでインデックスが構築されるときには、インデックス数がファクト・テーブルのレコード数と同じになります。例えば、アーキテクトでは [ファクトの構築中][インデックス構築中] に同じ数が示されます。これらの数に不一致がある場合は、ログ・ファイルを確認してください。

考えられる構築エラーの原因

構築エラーファクト数の原因不明の不一致が存在する場合は、以下の手順を実行します。

  1. 範囲式を使用するすべてのレベルを調べ、これらのレベルでレコードが削除されていないことを検証します。"レベルの検証" を参照してください。

    この種のエラーは、インデックス数に影響しますが、ファクト数には影響しません。

  2. 選択したディメンジョンまたはメジャーを無効にします。その後、リコンパイルおよび再構築を行い、問題が発生するディメンジョンまたはメジャーを隔離します。

<STORE> エラー

構築ログに、以下のようなエラーが記載される場合があります。

ERROR #5002: ObjectScript error: <STORE>%ConstructIndices+44^Cube.cube_name.Fact.1

このエラーは、レベルに非常に大量のメンバが存在する場合に発生します。既定では、システムはインデックスを構築する際、ローカル・メモリを使用してインデックスをチャンクで格納し、その後それらをディスクに書き込みます。レベルに非常に大量のメンバが含まれる場合は、ローカル・メモリが不足し、<STORE> エラーが発生することがあります。

このようなエラーを回避するには、以下のいずれかの操作を実行します。

  • キューブを単一のプロセスで構築する。そのためには、ターミナルで %BuildCube() を使用し、2 番目の引数に 0 を使用します。

  • <cube> 要素で、bitmapChunkInMemory="false" (既定) を指定する。バックグラウンド・プロセスを使用してこのキューブを構築すると、ローカル変数ではなくプロセス・プライベート・グローバルが使用されます (ローカル・メモリによる制限がなくなります)。

参照の欠落エラー

キューブが他のキューブへのリレーションシップを持つ場合、構築ログに、以下のようなエラーが記載される場合があります。

ERROR #5001: Missing relationship reference in RelatedCubes/Patients: source ID 1 missing reference to RxHomeCity 4

このエラーは、キューブが間違った順序で構築されていることを示す可能性があります。"InterSystems Business Intelligence の上級モデリング" の "リレーションシップを持つキューブの構築" を参照してください。キューブ・マネージャを使用する場合、キューブ・マネージャが適切な構築順序を決定することに注意してください。

missing relationship reference エラーは、キューブの構築プロセス中に新しいソース・データが使用可能になる場合、つまり既にキューブのいくつかが構築された後にも発生する可能性があります。例えば、サンプル・キューブ RelatedCubes/CitiesRelatedCubes/Patients について考えてみましょう (これらは SAMPLES ネームスペースで使用可能です)。キューブ RelatedCubes/Cities を構築した後、RelatedCubes/Patients のソース・テーブルが、新しい都市を使用するレコードを受け取るとします。この場合、キューブ RelatedCubes/Patients を構築すると、missing relationship reference エラーが発生します。

キューブを正しい順序で構築したことが確実である場合、エラーからの回復の詳細について、次のセクションを参照してください。

構築エラーからの回復

キューブ全体を再構築するのではなく、以前に構築エラーを生成したレコードのみ再構築する方法が用意されています。以下はその方法です。

  1. これらのエラーの原因となる問題を修正します。

  2. 以下のように、%DeepSee.UtilsOpens in a new tab%FixBuildErrors()Opens in a new tab メソッドを使用します。

    set sc=##class(%DeepSee.Utils).%FixBuildErrors(cubename)
    

    cubename はキューブの論理名で、引用符で囲みます。このメソッドは、進捗状況メッセージを表示するかどうかを指定する 2 番目の引数を受け入れます。この引数の既定値は True です。

    例えば以下のように出力されます。

    Fact '100' corrected
    Fact '500' corrected
    Fact '700' corrected
     
     
    3 fact(s) corrected for 'patients'
    0 error(s) remaining for 'patients'
    

    または、キューブ全体を再構築します。

Business Intelligence タスク・ログ

システムは、(前述した構築ログ以外に) 他のログ・ファイルも生成します。キューブの構築後またはキューブの構築を試行後、DeepSeeTasks_NAMESPACE.log ファイルもディレクトリ install-dir/mgr に書き込まれます。%DeepSee.WorkMgrOpens in a new tab クラスの %SetLoggingOptions メソッドを使用して、構築プロセス中にシステムが使用したバックグラウンド・エージェントのログを有効にすることができます。それには、以下のような呼び出しを行います。

do ##class(%DeepSee.WorkMgr).%SetLoggingOptions(,,1)

このファイルを管理ポータルから参照するには、[Analytics] > [管理] > [ログ] の順に選択します。

Tip:

このファイルには、リストのエラーや KPI エラーなど、さまざまな種類の実行時エラーに関する情報も含まれます。

このファイルのタイム・スタンプではローカルの日時を使用します (サマータイムは考慮されます)。

FeedbackOpens in a new tab