Excel-dax-naming-requirements

提供:Dev Guides
移動先:案内検索

Excel DAX-命名要件

データモデルは、関係が存在するテーブルで構成されます。 これはPower Pivotのデータベースです。 各テーブルはデータモデルの個別のタブに保存され、テーブル名がタブ名として指定されます。 各テーブルには、データフィールドを表す列があります。 列名は、ピボットテーブルフィールドリストのデータフィールドとして表示されます。

  • データモデルのテーブルには一意の名前が必要です。
  • テーブル名は大文字と小文字を区別しません。 つまり、結果、結果、結果-これらはすべて同じ表を表します。
  • データモデルに追加する各計算列と計算フィールドは、特定のテーブルに関連付ける必要があります。
  • 計算列を作成するときは、テーブル内でそれを行うため、暗黙的にそのテーブルに関連付けられます。
  • 計算フィールドを作成するときは、Power Pivotウィンドウのテーブル内で、または計算フィールド定義を保存するテーブルの名前を指定するExcelウィンドウから作成します。

どちらの場合も、計算フィールドは明示的な計算フィールドと呼ばれ、テーブルに関連付けられています。

テーブル全体のDAX命名要件

  • 列が現在のテーブルとは異なるテーブルからのものである場合、DAX数式でテーブル名を指定する必要があります。
  • テーブル名にスペース、その他の特殊文字、または英語以外の英数字が含まれる場合は、テーブル名を単一引用符で囲む必要があります。

DAX命名要件–計算フィールド

  • 計算フィールドの名前は常に括弧で囲む必要があります。
  • 計算フィールドの名前にはスペースを含めることができます。
  • 各計算フィールド名は、データモデル内で一意である必要があります。 テーブル名は、常に特定のテーブルに関連付けられているため、計算フィールド名の前のオプションです。

DAX命名要件-列

  • 列名はテーブル内で一意でなければなりません。 ただし、異なるテーブルに同じ名前の列を含めることができます。
  • 名前の競合がない場合、非修飾列名で列を参照できます。 非修飾列名は、括弧で囲まれた列名にすぎません。 例えば [メダル]。 現在のテーブルの同じ行からスカラー値を参照する場合、非修飾列名を使用できます。
  • ただし、複数のテーブルで同じ列名が使用されている場合は、完全修飾列名で列を参照する必要があります。 完全修飾列名はテーブル名で、その後に角括弧で囲まれた列名が続きます。 例えば 結果[メダル]。
  • DAX関数への入力として列を使用する場合、列名を完全に修飾することをお勧めします。 次のDAX関数では、列名を完全修飾する必要があります-
  • 値。
  • ALLおよびALLEXCEPT。
  • CALCULATEおよびCALCULATETABLE-フィルター引数。
  • 関連する。
  • DAXタイムインテリジェンス機能。

DAX命名要件-予約済みキーワード

テーブルに使用する名前がAnalysis Servicesの予約キーワードと同じ場合、エラーが発生し、テーブルの名前を変更する必要があります。 ただし、オブジェクト名が角かっこ(列の場合)または引用符(表の場合)で囲まれている場合は、オブジェクト名にキーワードを使用できます。

引用符は、使用するアプリケーションに応じて、いくつかの異なる文字で表すことができます。 したがって、外部ドキュメントまたはWebページから数式を貼り付ける場合は、引用符の開閉に使用される文字のASCIIコードを確認して、それらが同じであることを確認してください。 そうしないと、DAXが記号を引用符として認識できず、参照が無効になる場合があります。

DAXの完全修飾名–特別な場合

テーブル名にスペース、予約キーワード、または使用できない文字が含まれる場合、テーブル名を一重引用符で囲む必要があります。 例えば 「East_Sales」[金額]。

ロケールが文字セットをサポートしているかどうかに関係なく、ANSI英数字範囲外の文字が名前に含まれている場合は、テーブル名を引用符で囲む必要があります。 たとえば、表名が「Таблица」などのキリル文字で記述されている場合、表名にはスペースが含まれていなくても引用符で囲む必要があります。

数式のオートコンプリート機能を使用できます。ドロップダウンリストから列の完全修飾名を選択するだけで、ジョブが簡単になり、エラーが発生しにくくなります。

名前の特殊文字の除外

次の文字と文字タイプは、テーブル、列、または計算フィールドの名前では無効です-

スペースが名前区切り文字、大括弧、または単一アポストロフィで囲まれていない限り、先頭または末尾のスペース。 制御文字。

次の文字は、Power Pivotオブジェクトの名前では無効です-

一般的なDAXフォーミュラルール

,;':/\*|?&%$!+=()[]\{}<>.

DAX式の構文は、実行できる操作の種類に依存し、DAX関数が含まれている場合は大きく異なります。 次のルールは、すべてのDAXの式に適用されます-

  • DAX数式は、テーブル内の個々の値を変更または挿入できません。
  • DAXを使用して計算行を作成することはできません。 計算列と計算フィールドのみを作成できます。
  • 計算列を定義する場合、関数を任意のレベルにネストできます(最大値は64で、少し多すぎます)。
  • DAXには、テーブルを返すいくつかの関数があります。 通常、これらのDAX関数によって返される値は、入力としてテーブルを必要とする他のDAX関数への入力として使用します。