Join us at FabCon Atlanta from March 16 - 20, 2026, for the ultimate Fabric, Power BI, AI and SQL community-led event. Save $200 with code FABCOMM.
Register now!The Power BI Data Visualization World Championships is back! Get ahead of the game and start preparing now! Learn more
I have 2 tables of phone calls, one incoming calls and 1 outgoing. Both are joined to a phone directory table that contains their numbers. The joins are both many-to-one. Both tables are also linked to a date table.
I would like to display all numbers that have incoming and outgoing calls, together with other info from the directory table. Ideally I would like to display this information by month.
I've tried just adding the phone number columns from incoming and outgoing to a table, but that didnt seem to have the effect of displaying ones that have the same number. Any ideas would be welcomed!
Solved! Go to Solution.
Hi @Walt1010
Thank you very much amitchandak for your prompt reply.
I found your question when I checked the forum, may I ask if your problem has been solved? If not, here are some ideas.
Here's some dummy data
“Incoming Calls”
“Outgoing Calls”
“Phone Directory”
Create a new table that combines both incoming and outgoing calls.
CombinedCalls =
UNION(
SELECTCOLUMNS(
'Incoming Calls',
"PhoneNumber", 'Incoming Calls'[PhoneNumber],
"CallType", "Incoming",
"Duration", 'Incoming Calls'[Duration],
"Date", 'Incoming Calls'[Date]
),
SELECTCOLUMNS(
'Outgoing Calls',
"PhoneNumber", 'Outgoing Calls'[PhoneNumber],
"CallType", "Outgoing",
"Duration", 'Outgoing Calls'[Duration],
"Date", 'Outgoing Calls'[Date]
)
)
Create a column to identify phone numbers that have both incoming and outgoing calls.
HasBothCalls =
CALCULATE(
COUNTROWS(CombinedCalls),
FILTER(
VALUES(CombinedCalls[PhoneNumber]),
COUNTROWS(
FILTER(CombinedCalls, CombinedCalls[PhoneNumber] = EARLIER(CombinedCalls[PhoneNumber]) && CombinedCalls[CallType] = "Incoming")
) > 0 &&
COUNTROWS(
FILTER(CombinedCalls, CombinedCalls[PhoneNumber] = EARLIER(CombinedCalls[PhoneNumber]) && CombinedCalls[CallType] = "Outgoing")
) > 0
)
)
Create a relationship between the Phone Directory table and the CombinedCalls table.
Filters the record for which HasBothCalls is 1.
And you can add a month slicer for filtering. Here is the result.
Regards,
Nono Chen
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.
Hi @Walt1010
Thank you very much amitchandak for your prompt reply.
I found your question when I checked the forum, may I ask if your problem has been solved? If not, here are some ideas.
Here's some dummy data
“Incoming Calls”
“Outgoing Calls”
“Phone Directory”
Create a new table that combines both incoming and outgoing calls.
CombinedCalls =
UNION(
SELECTCOLUMNS(
'Incoming Calls',
"PhoneNumber", 'Incoming Calls'[PhoneNumber],
"CallType", "Incoming",
"Duration", 'Incoming Calls'[Duration],
"Date", 'Incoming Calls'[Date]
),
SELECTCOLUMNS(
'Outgoing Calls',
"PhoneNumber", 'Outgoing Calls'[PhoneNumber],
"CallType", "Outgoing",
"Duration", 'Outgoing Calls'[Duration],
"Date", 'Outgoing Calls'[Date]
)
)
Create a column to identify phone numbers that have both incoming and outgoing calls.
HasBothCalls =
CALCULATE(
COUNTROWS(CombinedCalls),
FILTER(
VALUES(CombinedCalls[PhoneNumber]),
COUNTROWS(
FILTER(CombinedCalls, CombinedCalls[PhoneNumber] = EARLIER(CombinedCalls[PhoneNumber]) && CombinedCalls[CallType] = "Incoming")
) > 0 &&
COUNTROWS(
FILTER(CombinedCalls, CombinedCalls[PhoneNumber] = EARLIER(CombinedCalls[PhoneNumber]) && CombinedCalls[CallType] = "Outgoing")
) > 0
)
)
Create a relationship between the Phone Directory table and the CombinedCalls table.
Filters the record for which HasBothCalls is 1.
And you can add a month slicer for filtering. Here is the result.
Regards,
Nono Chen
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.
@Walt1010 , The phone number should come from the phone directory table, the common table. When you want to make a measure work across two fact tables, they need to be displayed against common dimensions.
Hi there, so if I've got those relationships in place between the 3 tables, and I wanted to produce a visualisation showing common numbers between incoming and outgoing tables, I can create a table chart with the phone number for the directory table and other details from the other 2 details, that should do it?
The Power BI Data Visualization World Championships is back! Get ahead of the game and start preparing now!
| User | Count |
|---|---|
| 38 | |
| 38 | |
| 37 | |
| 28 | |
| 28 |
| User | Count |
|---|---|
| 124 | |
| 89 | |
| 73 | |
| 66 | |
| 65 |