Przejdź do treści

DAX. Funkcja USERELATIONSHIP(). Przychód wg daty kliknięcia w modelu atrybucji.

Na czym to polega w sklepie

Funkcja USERELATIONSHIP aktywuje nieaktywną relację między tabelami w obrębie jednego wyrażenia DAX. W modelach atrybucji e-commerce rozdziela datę sesji/kliknięcia od daty konwersji - obie powiązane z tabelą Calendar.

Przykład ze sklepu internetowego

Model ma relację Orders[OrderDate]Calendar (aktywna) i GA4_Events[ClickDate]Calendar (nieaktywna). Chcesz przychód wg daty kliknięcia w kampanii:

Revenue by Click Date =
CALCULATE(
    SUM( Orders[Revenue] ),
    USERELATIONSHIP(
        GA4_Events[ClickDate],
        'Calendar'[Date]
    ),
    Traffic[Medium] = "cpc"
)

// W jednym wyrażeniu tylko jedna relacja Calendar jest aktywna
Spend by Order Date = SUM( Campaigns[Spend] )
// domyślnie używa aktywnej relacji OrderDate

Co zrobić po stronie biznesu

  • Porównanie last-click vs first-click przez przełączanie relacji daty touchpoint.
  • Raport opóźnienia konwersji: kliknięcie w D, zakup w D+7 na różnych osiach.
  • Łączenie ShipDate i OrderDate w analizie fulfillment vs marketing.

W skrócie

USERELATIONSHIP rozwiązuje problem wielu dat w jednym modelu. Bez niego musiałbyś duplikować tabelę kalendarza lub rozbijać model - oba rozwiązania są gorsze w utrzymaniu.