Freigeben über


Relationships-Objekt (TMSL)

Gilt für: SQL Server 2016 und höher analysis Services Azure Analysis Services Fabric/Power BI Premium

Definiert eine Beziehung zwischen einer Quell- und einer Zieltabelle mit der Möglichkeit, kardinalität und die Richtung von Abfrage- und Sicherheitsfiltern anzugeben.

Objektdefinition

Alle Objekte verfügen über einen gemeinsamen Satz von Eigenschaften, einschließlich Name, Typ, Beschreibung, einer Eigenschaftenauflistung und Anmerkungen. Beziehungsobjekte verfügen außerdem über die folgenden Eigenschaften.

Isactive
Ein boolescher Wert, der angibt, ob die Beziehung als Aktiv oder Inaktiv gekennzeichnet ist. Eine aktive Beziehung wird automatisch zum Filtern von Tabellen verwendet. Eine inaktive Beziehung kann explizit über die USERELATIONSHIP-Funktion von DAX-Berechnungen verwendet werden.

**crossFilteringBehavior ** Gibt an, wie Beziehungen das Filtern von Daten beeinflussen. Gültige Werte sind:

  • OneDirection (1): Die zeilen, die am Ende der Beziehung "An" ausgewählt sind, filtern automatisch Scans der Tabelle am Ende der Beziehung "Von".

  • BothDirections (2): Filter an beiden Enden der Beziehung filtern automatisch die andere Tabelle.

  • Automatisch (3): Die Engine analysiert die Beziehungen und wählt eines der Verhaltensweisen mithilfe der Heuristik aus.

joinOnDateBehavior
Gibt bei der Verknüpfung von zwei Datums-/Uhrzeitspalten an, ob Datums- und Uhrzeitbestandteile oder nur Datumsbestandteile verknüpft werden sollen.

  • DateAndTime (1): Wenn Sie zwei Datumszeitspalten verknüpfen, fügen Sie datums- und uhrzeitbezogene Teile hinzu.

  • DatePartOnly (2): Wenn Sie zwei Datums-Uhrzeitspalten verknüpfen, fügen Sie nur am Datumsteil hinzu.

relyOnReferentialIntegrity
Nicht verwendet, für künftige Verwendung vorbehalten.

securityFilteringBehavior
Eine Enumeration, die angibt, wie Beziehungen das Filtern von Daten beim Auswerten von Sicherheitsausdrücken auf Zeilenebene beeinflussen. Gültige Werte sind:

  • OneDirection (1): Die zeilen, die am Ende der Beziehung "An" ausgewählt sind, filtern automatisch Scans der Tabelle am Ende der Beziehung "Von".

  • BothDirections (2): Filter an beiden Enden der Beziehung filtern automatisch die andere Tabelle.

Verbrauch

Beziehungsobjekte werden in den Befehlen Alter (TMSL),Create command (TMSL),CreateOrReplace command (TMSL) und Delete command (TMSL) verwendet.

Geben Sie beim Erstellen, Ersetzen oder Ändern eines Beziehungsobjekts alle Lese-/Schreibeigenschaften der Objektdefinition an. Das Weglassen einer Eigenschaft mit Lese-/Schreibzugriff wird als Löschvorgang betrachtet.

Vollständige Syntax

Im Folgenden finden Sie die Schemadarstellung eines Beziehungsobjekts.

"relationships": {  
          "type": "array",  
          "items": {  
            "anyOf": [  
              {  
                "description": "SingleColumnRelationship object of Tabular Object Model (TOM)",  
                "type": "object",  
                "properties": {  
                  "name": {  
                    "type": "string"  
                  },  
                  "isActive": {  
                    "type": "boolean"  
                  },  
                  "type": {  
                    "enum": [  
                      "singleColumn"  
                    ]  
                  },  
                  "crossFilteringBehavior": {  
                    "enum": [  
                      "oneDirection",  
                      "bothDirections",  
                      "automatic"  
                    ]  
                  },  
                  "joinOnDateBehavior": {  
                    "enum": [  
                      "dateAndTime",  
                      "datePartOnly"  
                    ]  
                  },  
                  "relyOnReferentialIntegrity": {  
                    "type": "boolean"  
                  },  
                  "securityFilteringBehavior": {  
                    "enum": [  
                      "oneDirection",  
                      "bothDirections"  
                    ]  
                  },  
                  "fromCardinality": {  
                    "enum": [  
                      "none",  
                      "one",  
                      "many"  
                    ]  
                  },  
                  "toCardinality": {  
                    "enum": [  
                      "none",  
                      "one",  
                      "many"  
                    ]  
                  },  
                  "fromColumn": {  
                    "type": "string"  
                  },  
                  "fromTable": {  
                    "type": "string"  
                  },  
                  "toColumn": {  
                    "type": "string"  
                  },  
                  "toTable": {  
                    "type": "string"  
                  },  
                  "annotations": {  
                    "type": "array",  
                    "items": {  
                      "description": "Annotation object of Tabular Object Model (TOM)",  
                      "type": "object",  
                      "properties": {  
                        "name": {  
                          "type": "string"  
                        },  
                        "value": {  
                          "anyOf": [  
                            {  
                              "type": "string"  
                            },  
                            {  
                              "type": "array",  
                              "items": {  
                                "type": "string"  
                              }  
                            }  
                          ]  
                        }  
                      },  
                      "additionalProperties": false  
                    }  
                  }  
                },  
                "additionalProperties": false  
              }  
            ]  
          }  
        }