Poznámka
Na prístup k tejto stránke sa vyžaduje oprávnenie. Môžete sa skúsiť prihlásiť alebo zmeniť adresáre.
Na prístup k tejto stránke sa vyžaduje oprávnenie. Môžete skúsiť zmeniť adresáre.
Vzťahuje sa na:
Vypočítaný stĺpec
Vypočítaná tabuľka
Merať
Výpočet vizuálu
Určuje vzťah, ktorý sa má použiť v konkrétnom výpočte ako ten, ktorý existuje medzi časťami columnName1 a columnName2.
Syntax
USERELATIONSHIP(<columnName1>,<columnName2>)
Parametre
| Obdobie | Definícia |
|---|---|
columnName1 |
Úplný názov existujúceho stĺpca používajúci štandardnú syntax DAX, ktorý zvyčajne predstavuje časť "many" vzťahu, ktorý sa má použiť; ak sú argumenty zadané v opačnom poradí, funkcia ich pred použitím vymení. Tento argument nemôže byť výrazom. |
columnName2 |
Úplný názov existujúceho stĺpca používajúci štandardnú syntax DAX, ktorý zvyčajne predstavuje stranu "one" alebo stranu vyhľadávania vzťahu, ktorý sa má použiť; ak sú argumenty zadané v opačnom poradí, funkcia ich pred použitím vymení. Tento argument nemôže byť výrazom. |
Vrátená hodnota
Funkcia nevráti žiadnu hodnotu. Funkcia povoľuje iba indikovaný vzťah po dobu trvania výpočtu.
Poznámky
USERELATIONSHIPmožno použiť iba vo funkciách, ktoré používajú filter ako argument, napríklad: CALCULATE, , CALCULATETABLE, CLOSINGBALANCEWEEK, CLOSINGBALANCEMONTHCLOSINGBALANCEQUARTER, CLOSINGBALANCEYEAR, OPENINGBALANCEWEEK, , OPENINGBALANCEMONTH, OPENINGBALANCEQUARTER, OPENINGBALANCEYEAR, TOTALWTD, TOTALMTDTOTALQTD a TOTALYTD funkcie.
USERELATIONSHIP nemožno použiť, keď je zabezpečenie na úrovni riadkov definované pre tabuľku, v ktorej je zahrnutá mierka. Napríklad
CALCULATE(SUM([SalesAmount]), USERELATIONSHIP(FactInternetSales[CustomerKey], DimCustomer[CustomerKey]))vráti chybu, ak je pre DimCustomer definované zabezpečenie na úrovni riadkov.USERELATIONSHIP používa existujúce vzťahy v modeli a vzťahy identifikuje podľa ich stĺpcov koncových bodov.
V USERELATIONSHIPstav vzťahu nie je dôležitý; či už je vzťah aktívny alebo nie, nemá to vplyv na používanie funkcie. Aj keď je vzťah neaktívny, použije sa a prepíše všetky ostatné aktívne vzťahy, ktoré môžu byť prítomné v modeli, ale nemusia byť uvedené v argumentoch funkcie.
Ak niektorý zo stĺpcov pomenovaných ako argument nie je súčasťou vzťahu alebo argumenty patria k iným vzťahom, vráti sa chyba.
Ak je na spojenie tabuľky A s tabuľkou B vo výpočte potrebných viacero vzťahov, každý vzťah musí byť indikovaný v inej funkcii USERELATIONSHIP.
Ak sú CALCULATE výrazy vnorené a viac ako jeden CALCULATE výraz obsahuje funkciu USERELATIONSHIP, v prípade konfliktu alebo nejednoznačnosti má prednosť najvnútornejšia USERELATIONSHIP.
Vnoriť možno až 10 USERELATIONSHIP funkcií; Avšak váš výraz môže mať hlbšiu úroveň vnorenia, napr. Nasledujúci vzorový výraz je vnorený v rámci 3 úrovní vnorený, ale iba 2 pre USERELATIONSHIP:
=CALCULATE(CALCULATE( CALCULATE( <anyExpression>, USERELATIONSHIP( t1[colA], t2[colB])), t99[colZ]=999), USERELATIONSHIP( t1[colA], t2[colA])).V prípade vzťahov typu 1-to-1 USERELATIONSHIP vzťah aktivuje iba v jednom smere. Filtre budú môcť prúdiť predovšetkým z tabuľky columnName2 do tabuľky columnName1. Ak si chcete želať obojsmerné krížové filtrovanie, v tom istom výpočte možno použiť dve vlastnosti USERELATIONSHIPs s opačnou smerovosťou. Napríklad,
CALCULATE(..., USERELATIONSHIP(T1[K], T2[K]), USERELATIONSHIP(T2[K], T1[K])).
Príklad
Nasledujúca ukážka znázorňuje, ako prepísať predvolený, aktívny vzťah medzi tabuľkami InternetSales a DateTime. Medzi stĺpcom OrderDate (DátumObjednávky) tabuľky InternetSales (Predaj Internetu) a stĺpcom Date (Dátum) tabuľky DateTime (DátumČas) existuje predvolený vzťah.
Ak chcete vypočítať množstvo predaja cez internet a vytvoriť výsek podľa stĺpca ShippingDate (DátumOdoslania) namiesto bežne využívaného stĺpca OrderDate (DátumObjednávky), vytvorte mierku [InternetSales by ShippingDate] ([PredajCez InternetSales by ShippingDate]) pomocou nasledujúceho výrazu:
= CALCULATE(SUM(InternetSales[SalesAmount]), USERELATIONSHIP(InternetSales[ShippingDate], DateTime[Date]))
Musí existovať vzťah medzi položkami InternetSales[ShippingDate] (PredajCez InternetSales[ShippingDate] (DátumČas[DátumOdoslania]), pričom tento vzťah by nemal byť aktívny, mal by existovať aj vzťah medzi položkami InternetSales[OrderDate] (PredajCezPredaja[DátumObjednávky]) a DateTime[Date] (DátumČas[Dátum]), pričom tento vzťah by mal byť aktívny.