Forum Discussion
Calculate when start production (excluding weekends)
Hi Guys,
I would like to callculate when I should start production, excluding weekends.
I have two tables Date (mater calendar) and Orders (with [ProductionDueDate] and [ProdactionDurationInDays])
Both tables have inactive Relationship Date[Date] and Orders[ProductionDueDate]
Basicaly, if ProductionDueDate is on Monday and ProdactionDurationInDays takes 4 business days, I would like to start production on Tuesday week before.
Please help
- Anonymous3 years ago
Hi Adamplau ,
You can update the formula of the calculated column [Prod. Start Date (exc. weekends)] as below in the table 'Orders' and check if it can return your expected result... It is not required to create any relationship between the table 'Orders' and 'Date' table.
Prod. Start Date (exc. weekends) = VAR DateIdx = CALCULATE ( MAX ( 'Date'[WorkingDayIndex] ), FILTER ( 'Date', 'Date'[Date] = 'Orders'[ProductionDueDate] ) ) VAR NewDateIdx = DateIdx - 'Orders'[ProdactionDurationInDays] RETURN CALCULATE ( MAX ( 'Date'[Date] ), FILTER ( ALL ( 'Date' ), 'Date'[WorkingDayIndex] = NewDateIdx && 'Date'[IsWorkingDay] = TRUE() ) )Best Regards
7 Replies
- Arul
Super User
Adamplau ,
I hope the below query would help you to solve the problem,
Starting Day = VAR _date = SELECTEDVALUE ( 'Table'[ProductionDueDate] ) VAR _duration = SELECTEDVALUE ( 'Table'[ProdactionDurationInDays] ) RETURN "Start Production on [" & FORMAT ( _date - _duration, "dddd-mmm-d" )&"]"Thanks,
- AdamplauNew Member
I have this working, however I need to have active relationship between Date and Orders tables.
How to change it and activate the relationship in the script using USERELATIONSHIP?Prod. Start Date (exc. weekends) = VAR DateIdx = CALCULATE( MAX( 'Date'[WorkingDayIndex] ), 'Orders'[ProductionDueDate] = RELATED('Date'[Date] ) ) VAR NewDateIdx = DateIdx - 'Orders'[ProdactionDurationInDays] RETURN CALCULATE( MAX('Date'[Date]), FILTER( ALL('Date'), 'Date'[WorkingDayIndex] = NewDateIdx && 'Date'[IsWorkingDay] = TRUE() ) )- Arul
Super User
- AnonymousNot applicable
Hi Adamplau ,
You can update the formula of the calculated column [Prod. Start Date (exc. weekends)] as below in the table 'Orders' and check if it can return your expected result... It is not required to create any relationship between the table 'Orders' and 'Date' table.
Prod. Start Date (exc. weekends) = VAR DateIdx = CALCULATE ( MAX ( 'Date'[WorkingDayIndex] ), FILTER ( 'Date', 'Date'[Date] = 'Orders'[ProductionDueDate] ) ) VAR NewDateIdx = DateIdx - 'Orders'[ProdactionDurationInDays] RETURN CALCULATE ( MAX ( 'Date'[Date] ), FILTER ( ALL ( 'Date' ), 'Date'[WorkingDayIndex] = NewDateIdx && 'Date'[IsWorkingDay] = TRUE() ) )Best Regards
- AdamplauNew Member
It's working. Thanks.