Share via


USERELATIONSHIP

A következőre vonatkozik: Számított oszlopSzámított táblamértékvizualizációszámítása

Egy adott számításban az 1. oszlop és a ColumnName2 oszlop közötti kapcsolatként használandó kapcsolatot adja meg.

Syntax

USERELATIONSHIP(<columnName1>,<columnName2>)  

Paraméterek

Időszak Definíció
columnName1 Egy meglévő oszlop neve, amely szabványos DAX-szintaxist használ és teljes mértékben minősített, amely általában a használandó kapcsolat több oldalát jelöli; ha az argumentumok fordított sorrendben vannak megadva, a függvény felcseréli őket használat előtt. Ez az argumentum nem lehet kifejezés.
columnName2 Egy meglévő, szabványos DAX-szintaxist használó és teljes mértékben minősített oszlop neve, amely általában a használni kívánt kapcsolat egyik vagy keresési oldalát jelöli; ha az argumentumok fordított sorrendben vannak megadva, a függvény felcseréli őket használat előtt. Ez az argumentum nem lehet kifejezés.

Visszaadott érték

A függvény nem ad vissza értéket; a függvény csak a megadott kapcsolatot engedélyezi a számítás időtartamára.

Megjegyzések

  • U Standard kiadás RELATIONSHIP csak olyan függvényekben használható, amelyek argumentumként szűrőt vesznek fel, például: CALCULATE, CALCULATETABLE, CLOSINGBALANCEMONTH, CLOSINGBALANCEQUARTER, CLOSINGBALANCEYEAR, OPENINGBALANCEMONTH, OPENINGBALANCEQUARTER, OPENINGBALANCEYEAR, TOTALMTD, TOTALQTD és TOTALYTD függvények.

  • U Standard kiadás RELATIONSHIP nem használható, ha sorszintű biztonság van meghatározva ahhoz a táblához, amelyben a mérték szerepel. Ha például a DimCustomer sorszintű biztonsága van definiálva, CALCULATE(SUM([SalesAmount]), USERELATIONSHIP(FactInternetSales[CustomerKey], DimCustomer[CustomerKey])) hibaüzenetet ad vissza.

  • Az U Standard kiadás RELATIONSHIP a modellben meglévő kapcsolatokat használja, amelyek a végpontoszlopok alapján azonosítják a kapcsolatokat.

  • Az U Standard kiadás RELATIONSHIP-ben a kapcsolat állapota nem fontos, vagyis hogy a kapcsolat aktív-e vagy sem, nem befolyásolja a függvény használatát. A rendszer akkor is használja a kapcsolatot, ha inaktív, és felülbírálja a modellben esetlegesen jelen lévő, de a függvényargumentumokban nem említett aktív kapcsolatokat.

  • A rendszer hibát ad vissza, ha az argumentumként elnevezett oszlopok egyike nem része egy kapcsolatnak, vagy az argumentumok különböző kapcsolatokhoz tartoznak.

  • Ha több kapcsolatra van szükség ahhoz, hogy az A táblát a B táblához lehessen csatlakoztatni egy számításban, minden kapcsolatot egy másik U Standard kiadás RELATIONSHIP függvényben kell jelezni.

  • Ha a CALCULATE kifejezések beágyazottak, és egynél több CALCULATE kifejezés tartalmaz egy U Standard kiadás RELATIONSHIP függvényt, akkor a legbelső U Standard kiadás RELATIONSHIP az, amely ütközés vagy kétértelműség esetén érvényesül.

  • Legfeljebb 10 U Standard kiadás RELATIONSHIP függvény ágyazható be, de előfordulhat, hogy a kifejezés mélyebb beágyazási szinttel rendelkezik, azaz a következő mintakifejezés 3 szinttel van beágyazva, de csak 2 az U Standard kiadás RELATIONSHIP esetében: =CALCULATE(CALCULATE( CALCULATE( <anyExpression>, USERELATIONSHIP( t1[colA], t2[colB])), t99[colZ]=999), USERELATIONSHIP( t1[colA], t2[colA])).

  • Az 1-az-1 kapcsolatok esetében az U Standard kiadás RELATIONSHIP csak egy irányban aktiválja a kapcsolatot. A szűrők csak a ColumnName2 táblából a columnName1 táblába áramolhatnak. Ha kétirányú keresztszűrésre van szükség, ugyanabban a számításban két U Standard kiadás RELATIONSHIP használható ellentétes irányban. Például: CALCULATE(..., USERELATIONSHIP(T1[K], T2[K]), USERELATIONSHIP(T2[K], T1[K])).

Példa

Az alábbi minta bemutatja, hogyan bírálhatja felül az InternetSales és a DateTime táblák közötti alapértelmezett, aktív kapcsolatot. Az alapértelmezett kapcsolat az InternetSales tábla OrderDate oszlopa és a DateTime tábla Dátum oszlopa között létezik.

Az internetes értékesítések összegének kiszámításához és a hagyományos OrderDate helyett a ShippingDate szerinti szeletelés engedélyezéséhez hozzon létre mértéket [InternetSales by ShippingDate] a következő kifejezéssel:

= CALCULATE(SUM(InternetSales[SalesAmount]), USERELATIONSHIP(InternetSales[ShippingDate], DateTime[Date]))  

Az InternetSales[ShipmentDate] és a DateTime[Date] kapcsolatnak léteznie kell, és nem lehet aktív kapcsolat; Az InternetSales[OrderDate] és a DateTime[Date] közötti kapcsolatnak is léteznie kell, és aktív kapcsolatnak kell lennie.