ट्रीटाक्स DAX फ़ंक्शन अपेक्षित रूप से काम नहीं कर रहा है, यह पूरा खाली कॉलम लौटा रहा है

Aug 16 2020

मैं Treatas DAX फ़ंक्शन को समझने की कोशिश कर रहा हूं। दो टेबल एसेट्स और टिकट हैंटिकट तालिका में माता-पिता और बच्चे का रिश्ता होता है। एसेट [एसेटके] के प्रत्येक मूल्य के लिए, मैं टिकट तालिका में चिल्ड की गिनती की गणना करना चाहता हूं। इन तालिकाओं के बीच दो संबंध हैं। एक सक्रिय और एक निष्क्रिय।

समस्या: जब मैं ट्रीटास फंक्शन का उपयोग करता हूं तो पूरा मापता है कि बच्चे की संख्या खाली है। मैंने सूत्र का उपयोग किया -

Number of Child = CALCULATE(COUNT(Tickets[AssetKey]),TREATAS(SUMMARIZE(Asset,Asset[AssetKey]),Tickets[ParentId]))

परिदृश्य को दोहराने के लिए नीचे दिए गए चरणों का पालन करें:

चरण 1: तालिका एसेट बनाएं :

Asset = DATATABLE("AssetKey",INTEGER,"Name",STRING,{{1,"Australia"},
{2,"Belgium"},
{3,"Canada"},
{4,"Denmark"},
{5,"England"}})

टेबल टिकट बनाएं

Tickets = DATATABLE("AssetKey",INTEGER,"ParentId",INTEGER,"TicketKey",INTEGER,{{3,1,1},
{1,Blank(),1},
{3,1,3},
{2,Blank(),4},
{4,2,5},
{3,1,6},
{2,Blank(),7},
{4,2,8},
{1,Blank(),9},
{5,2,10}})

चरण 2: एसेटकेट पर कॉलम और टिकट तालिका (एक से कई) के बीच संबंध बनाएं।

Step3: अब नीचे दिए गए उपाय बनाएं -

Number Of Tickets = COUNT(Tickets[TicketKey])

Number of Child = CALCULATE(COUNT(Tickets[AssetKey]),TREATAS(SUMMARIZE(Asset,Asset[AssetKey]),Tickets[ParentId]))

अब समस्या यह है कि बाल कॉलम की संख्या खाली क्यों है।

अपेक्षित आउटपुट है:

जवाब

1 Aldert Aug 16 2020 at 23:23

आपकी समस्या TREATAS नहीं बल्कि सारांश है। TREATAS को टेबल इनपुट की उम्मीद है इसलिए आपने सारांशित किया है।

निम्नलिखित का प्रयास करें:

summarizedAsset = SUMMARIZE(Asset,Asset[AssetKey])

यह आपको 1,2,3,4,5 देता है। तर्क क्योंकि यह वही है जो आपने इसे करने के लिए कहा था। अब TREATAS टेबल टिकट पर भी ऐसा ही करने जा रहा है। तो यह एक कॉलम मान "खाली", 1,2 के साथ एक तालिका देता है। वास्तव में हम क्या उम्मीद कर सकते हैं। अगली बात जब आप अस्सिटेक पर एक COUNT करते हैं, तो अभी बनाई गई तालिका में यह कॉलम नहीं है इसलिए यह खाली है।

आप जो देख रहे हैं वह एक कॉलम है जो बच्चों की गणना कर रहा है:

Number of Child = 
var Akey = Asset[AssetKey]
return CALCULATE(COUNT(Tickets[ParentId]), filter(Tickets, Akey = Tickets[ParentId]))

यह ठीक वही है जो आप खोज रहे हैं।

पुनश्च: 10 अंक, आपने सवाल पूछने पर एक उत्कृष्ट काम किया, दूसरों के लिए पुन: पेश करना आसान है। आप एक समर्थक के रूप में काम करते हैं !!