Hi everyone, I hope someone can help me,
I'm creating a Flow which takes responses to a Form and creates a task in Planner for the relevant team. I want to set it so that it will automatically work out the Due Date as 3 working days away. I know that the 'workday' function from Excel doesn't work so I worked out that all days need to be set to add 3 days except for Wednesday and Thursday which need to add 5 and 4 days respectively. I tried to create the following expression using nested ifs but I keep getting an invalid expression error message:
if(utcNow('dddd')="Wednesday",addDays(outputs('Get_response_details')?['body/submitDate'],5),if(utcNow('dddd')="Thursday",addDays(outputs('Get_response_details')?['body/submitDate'],4),addDays(outputs('Get_response_details')?['body/submitDate'],3)))
Any support I can get with this flow would be highly appreciated.
Cheers in advance 🙂
Solved! Go to Solution.
Hi @ShaunSmith ,
First, the expression does not support the use of "=", you need to use equals() function instead of "=".
Second, you cannot use "" here, you need to use ''.
Please use this expression:
if(equals(utcNow('dddd'),'Wednesday'),addDays(outputs('Get_response_details')?['body/submitDate'],5),if(equals(utcNow('dddd'),'Thursday'),addDays(outputs('Get_response_details')?['body/submitDate'],4),addDays(outputs('Get_response_details')?['body/submitDate'],3)))
In addition, SubmitDate is a problem in Forms? If so, the way you quote this answer in expression seems a bit problematic.
You should be able to get this value directly through Dynamic content, you don't need to get it through outputs ('Get_response_details')? ['Body / submitDate'].
Like:
Then you just need to configure expression with the output of Compose.
Like:
if(equals(utcNow('dddd'),'Wednesday'),addDays(outputs('Compose'),5),if(equals(utcNow('dddd'),'Thursday'),addDays(outputs('Compose'),4),addDays(outputs('Compose'),3)))
Best Regards,
Hi @ShaunSmith ,
First, the expression does not support the use of "=", you need to use equals() function instead of "=".
Second, you cannot use "" here, you need to use ''.
Please use this expression:
if(equals(utcNow('dddd'),'Wednesday'),addDays(outputs('Get_response_details')?['body/submitDate'],5),if(equals(utcNow('dddd'),'Thursday'),addDays(outputs('Get_response_details')?['body/submitDate'],4),addDays(outputs('Get_response_details')?['body/submitDate'],3)))
In addition, SubmitDate is a problem in Forms? If so, the way you quote this answer in expression seems a bit problematic.
You should be able to get this value directly through Dynamic content, you don't need to get it through outputs ('Get_response_details')? ['Body / submitDate'].
Like:
Then you just need to configure expression with the output of Compose.
Like:
if(equals(utcNow('dddd'),'Wednesday'),addDays(outputs('Compose'),5),if(equals(utcNow('dddd'),'Thursday'),addDays(outputs('Compose'),4),addDays(outputs('Compose'),3)))
Best Regards,
Hi Barry,
This is brilliant, thank you. I'm quite new to Flow so I'm still not 100% on the difference in syntax between it and Excel. As you mentioned below the expression didn't work directly in the 'Create task' Action, however I was able to put this straight into an Output Action and it works as intended.
For clarification I didn't actually type in 'outputs ('Get_response_details')? ['Body / submitDate']', that is how the dynamic content appeared in the expression when I was trying to input it.
Thanks again for your help!
Join digitally, March 2–4, 2021 to explore new tech that's ready to implement. Experience the keynote in mixed reality through AltspaceVR!
User | Count |
---|---|
86 | |
59 | |
50 | |
42 | |
37 |
User | Count |
---|---|
91 | |
76 | |
74 | |
61 | |
43 |