Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Register now to learn Fabric in free live sessions led by the best Microsoft experts. From Apr 16 to May 9, in English and Spanish.

Reply
Anonymous
Not applicable

Tracking Data over time question

Hi, i'm hoping this is an easy one...

 

I have 2 data sources. one which lists products with date due which doesnt really change (called Table Schedule) . And one which lists product arrival dates which is updated and issued weekly (called Table all Arrivals & date downloaded). I'm pulling each of these weekly (Arrivals) tables into one big table with a query.

 

Below is an example of the data tables. Please note date format is in UK format.

 

JT89099_0-1637840768416.png

 

I'd like to ultimately track what was due each week from the top table based on the date from the other tables, and track what is due each week fom the 2 bottom tables as an example. Which would give the chart below.. What is the right way to go about doing this?

And also to be able to Track down to Product part ID to see, for example, that part A-1 was due some weeks ago but still hadnt arrived as of 08/01/2022.

 

JT89099_1-1637841091343.png

 

many thanks

J

 

1 ACCEPTED SOLUTION
v-stephen-msft
Community Support
Community Support

Hi @Anonymous ,

 

Here's my solution.

 

1.If your Arrivals tables are multiple separate tables, you need to append them into one table.

vstephenmsft_4-1638258441124.pngvstephenmsft_5-1638258459240.png

vstephenmsft_1-1638258400269.pngvstephenmsft_2-1638258410606.pngvstephenmsft_3-1638258425171.png

2.Rename the table to Arrivals, then click Close&Apply.

vstephenmsft_6-1638258479917.png

3.Make sure there's no relationship between Schedule table and Arrivals table.

vstephenmsft_8-1638258900366.png

 

 

4.In the Arrivals table, create two calcualted columns, one is WeekYear and  the other is sort. And sort WeekYear column by sort column.

WeekYear = "Week "&WEEKNUM([Date of Data Download])&" "&YEAR([Date of Data Download])
sort = YEAR([Date of Data Download])*100+WEEKNUM([Date of Data Download])

vstephenmsft_7-1638258720721.png

5.Create two measures.

Product Arrived = CALCULATE(COUNT('Arrivals'[Product-Part ID]),ALLEXCEPT(Arrivals,Arrivals[WeekYear]))
Product Due = CALCULATE(COUNT('Schedule'[Product-Part ID]),FILTER('Schedule',[Date Due]<MAX('Arrivals'[Date of Data Download])))

6.Results is as follows. This is to maximize the effect you want. You can filter by the slicer.

vstephenmsft_10-1638259452568.png

 

 

 

Best Regards,

Stephen Tao

 

If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.

 

 

View solution in original post

3 REPLIES 3
v-stephen-msft
Community Support
Community Support

Hi @Anonymous ,

 

Here's my solution.

 

1.If your Arrivals tables are multiple separate tables, you need to append them into one table.

vstephenmsft_4-1638258441124.pngvstephenmsft_5-1638258459240.png

vstephenmsft_1-1638258400269.pngvstephenmsft_2-1638258410606.pngvstephenmsft_3-1638258425171.png

2.Rename the table to Arrivals, then click Close&Apply.

vstephenmsft_6-1638258479917.png

3.Make sure there's no relationship between Schedule table and Arrivals table.

vstephenmsft_8-1638258900366.png

 

 

4.In the Arrivals table, create two calcualted columns, one is WeekYear and  the other is sort. And sort WeekYear column by sort column.

WeekYear = "Week "&WEEKNUM([Date of Data Download])&" "&YEAR([Date of Data Download])
sort = YEAR([Date of Data Download])*100+WEEKNUM([Date of Data Download])

vstephenmsft_7-1638258720721.png

5.Create two measures.

Product Arrived = CALCULATE(COUNT('Arrivals'[Product-Part ID]),ALLEXCEPT(Arrivals,Arrivals[WeekYear]))
Product Due = CALCULATE(COUNT('Schedule'[Product-Part ID]),FILTER('Schedule',[Date Due]<MAX('Arrivals'[Date of Data Download])))

6.Results is as follows. This is to maximize the effect you want. You can filter by the slicer.

vstephenmsft_10-1638259452568.png

 

 

 

Best Regards,

Stephen Tao

 

If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.

 

 

amitchandak
Super User
Super User

@Anonymous , Create a common date table, Join one with Due date and join second on arrival date

 

Create week in date table, use that in Visual and use count measure from other two tables 

 

Week Number = WEEKNUM([Date],2)

 

You can also check visual

https://appsource.microsoft.com/en-us/product/power-bi-visuals/WA200000675?tab=Overview

 

 

Anonymous
Not applicable

Thanks for your reply Amitchandak

 

Ive already got these tables joined to a Products table so when i try to join them via the date table it says i cant as creating a relationship between them would introduce ambiguity between them.

 

any ideas?

Helpful resources

Announcements
Microsoft Fabric Learn Together

Microsoft Fabric Learn Together

Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City

PBI_APRIL_CAROUSEL1

Power BI Monthly Update - April 2024

Check out the April 2024 Power BI update to learn about new features.

April Fabric Community Update

Fabric Community Update - April 2024

Find out what's new and trending in the Fabric Community.