March 31 - April 2, 2025, in Las Vegas, Nevada. Use code MSCUST for a $150 discount! Early bird discount ends December 31.
Register NowBe one of the first to start using Fabric Databases. View on-demand sessions with database experts and the Microsoft product team to learn just how easy it is to get started. Watch now
Hello. I have browsed your solutions here, but coudn't find anything i could use in my situation.
I am all new to PowerBI.
I have a JSON datasource, with 500 chats in it. It has following columns:
started | initialUserMessage | messageCount | chatId | startUrl | logEvents |
Here i have a example from the content, so i better can explain my wish:
Every chat has a unique chatId. So initialUserMessage appear on multiple rows with that unique chatId. 1 row for each text sent from and to the user.
What i like to achieve is a table where it counts initialUserMessage only one time, for each unique chatId. ie:
Hey | 25 |
Printer is offline | 8 |
My word tells me its invalid code | 1 |
What i have tried so far, either leave me with error, 1, 500, or even:
Hey | 574725 |
Printer is offline | 367824 |
I dont seem to get it right.
The formula i tried and messed around with, is like this now, and gives value 500 (the total chats)
test1 = CALCULATE(DISTINCTCOUNT(chat_logs[chatId]),FILTER(chat_logs, chat_logs[initialUserMessage]=chat_logs[initialUserMessage]))
Here is the structure of JSON import, where test1 is the one i try this in:
Can you please help me with this problem?
Thank you in advance.
Solved! Go to Solution.
Hello @Peter_K
please check if this accomodate your need.
I made a random data based on your problem.
Create a measure with following DAX:
Hello @Peter_K ,
that happens because of the filter in calculate DAX. The total seems not be able to be calculated properly.
In my sample data, the total didnt even show up.
To solve this, simply just remove the filter and use DISTINCTCOUNT directly
In fact, if your data has uniqueID for every message, I think direct distinctcount should do the job (no need put any filter by calculate DAX).
But please give it a try first and let see if you get the correct value or not by using direct distinctcount.
Hope this will help you.
Thank you.
Hello @Peter_K
please check if this accomodate your need.
I made a random data based on your problem.
Create a measure with following DAX:
Thank you so much @Irwan That totally solved my problem.
I am so happy now, i really tried so many things, nothing worked the way i wanted.
You solved it, thank you. Never thought it was under measure.
You know why it show 14 as total?
Hello @Peter_K ,
that happens because of the filter in calculate DAX. The total seems not be able to be calculated properly.
In my sample data, the total didnt even show up.
To solve this, simply just remove the filter and use DISTINCTCOUNT directly
In fact, if your data has uniqueID for every message, I think direct distinctcount should do the job (no need put any filter by calculate DAX).
But please give it a try first and let see if you get the correct value or not by using direct distinctcount.
Hope this will help you.
Thank you.
Thank you very much.
This solved it.
I know there is exact 500 chats, and thats also the result.
You solved my problem, thanks.
I can't clean the JSON file for GDPR content.
The file has confidental data.
Does that mean you cant help me?
March 31 - April 2, 2025, in Las Vegas, Nevada. Use code MSCUST for a $150 discount!
User | Count |
---|---|
27 | |
17 | |
16 | |
12 | |
11 |
User | Count |
---|---|
35 | |
26 | |
26 | |
20 | |
15 |