1

I have created a CustomList called BirthdayReminder and also set up a Site-workflow which runs everyday at 00:00 to update the fields - otherwise the Birthday Reminder will stay static.

My aim is to check the nextBirthday if it's equal to todays date and if so, display "Happy Birthday" - otherwise display the days remaining including the text "has birthday in xx days"

Anyway, I got 2 fields and 2 calculated fields :

Username | Birthday | nextBirthday | daysUntilNextBirthday

nextBirthday:

=DATE(YEAR(Birthday)+DATEDIF(Birthday,TODAY(),"Y")+1,MONTH(Birthday),DAY(Birthday))


daysUntilNextBirthday:

=IF([nextBirthday]=TODAY(),"Happy Birthday","has birthday in "&DATEDIF(TODAY(),[nextBirthday],"d")&" days")


The custom list shows:

enter image description here

what I am worried about is that as soon as the Site-workflow runs, it will update both calculated fields. I wonder if the daysUntil... field will actually manage to display the "Happy BDay" before the nextBirthday gets updated! hmmm!!


I tried to somehow combine all this with the DATEIF but not much luck.
This topic is similar to this: Calculated Field with formula DATEDIF

1 Answer 1

0

UPDATE:

Just in case someone else is after a solution and is a newbie like me lol
This is what you need in the calculated field:

=IF((DATEDIF(TODAY(),B3,"d")= 365),"Happy Birthday","has birthday in "&(DATEDIF(TODAY(),B3,"d")&" days"))

Because, I have 2 x calculated fields and both are updated once the site-workflow has been run; the daysUntilNextBirthday uses the nextBirthday field to calculate the days - therefore it will always show 365 days when reaching the actual date of birth.

So, the formula above simply says if 365 say Happy Birthday otherwise "has birthday in xx days".

enter image description here

Hope this will be useful to somebody one day :D

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.