Parent Status based on Children Statuses - Need help refining this formula

Hey Smartsheet Community!

I have a beast of a formula that has probably gotten a bit away from me, but I need help refining this so it meets certain criteria per our stakeholders vision.

Here's the formula:

=IF(COUNT(CHILDREN()) = COUNTIF(CHILDREN(), "Complete"), "Complete", IF(COUNT(CHILDREN()) = AND(COUNTIF(CHILDREN(), "Complete") >= 1, OR(COUNTIF(CHILDREN(), "Canceled") > 0, COUNTIF(CHILDREN(), "On Hold") > 0)), "Complete", IF(OR(CONTAINS("In Progress", CHILDREN()), AND(COUNTIF(CHILDREN(), "Complete") > 0, COUNTIF(CHILDREN(), "Not Started") >= 0, COUNTIF(CHILDREN(), "Upcoming") >= 0, COUNTIF(CHILDREN(), "On Hold") >= 0)), "In Progress", IF(COUNT(CHILDREN()) = COUNTIF(CHILDREN(), "Upcoming"), "Upcoming", IF(COUNT(CHILDREN()) = COUNTIF(CHILDREN(), "Not Started"), "Not Started", IF(OR(CONTAINS("Upcoming", CHILDREN()), COUNTIF(CHILDREN(), "Not Started") > 0), "Upcoming", IF(COUNT(CHILDREN()) = COUNTIF(CHILDREN(), "Canceled"), "Canceled", "Not Started")))))))


Here's the goal of the "IFs" summarized:

If all children are complete, parent is complete

If all children are a combination of complete, canceled and/or on hold, then the parent is complete

if one child is complete or in progress, and the rest are either not started, upcoming, canceled, or on hold, then the parent is in progress

if all children are upcoming, parent is upcoming

if one child is upcoming and the rest are not started, the parent is upcoming

If all children are canceled, parent is canceled

Otherwise, parent is Not Started.

Here are the four scenarios I'm running it issues with:

image.png


Parent 1 and Parent 2 should both be complete because we don't want to wait for "On Hold" or "Canceled" tasks

Parent 3 and Parent 4 should be Not Started as the canceled and on hold tasks should not change the status to Upcoming.


Any assistance would be greatly appreciated! All other scenarios I can think of are working as expected. Thank you in advance!

Best Answer

  • Paul Newcome
    Paul Newcome ✭✭✭✭✭✭
    Answer ✓

    Give this a try:

    =IF(COUNT(CHILDREN()) = COUNTIFS(CHILDREN(), @cell = "Canceled"), "Canceled", IF(COUNT(CHILDREN()) = COUNTIFS(CHILDREN(), OR(@cell = "Complete", @cell = "Canceled", @cell = "On Hold")), "Complete", IF(COUNT(CHILDREN()) = COUNTIFS(CHILDREN(), @cell = "Not Started"), "Not Started", IF(COUNTIFS(CHLDREN(), @cell = "Upcoming")> 0, "Upcoming", "In Progress"))))

Answers

  • Carson Penticuff
    Carson Penticuff ✭✭✭✭✭

    These two options can have overlapping logic. Parent 1 and Parent 2 are both affected by this.

    If all children are a combination of complete, canceled and/or on hold, then the parent is complete

    if one child is complete or in progress, and the rest are either not started, upcoming, canceled, or on hold, then the parent is in progress

  • Paul Newcome
    Paul Newcome ✭✭✭✭✭✭
    Answer ✓

    Give this a try:

    =IF(COUNT(CHILDREN()) = COUNTIFS(CHILDREN(), @cell = "Canceled"), "Canceled", IF(COUNT(CHILDREN()) = COUNTIFS(CHILDREN(), OR(@cell = "Complete", @cell = "Canceled", @cell = "On Hold")), "Complete", IF(COUNT(CHILDREN()) = COUNTIFS(CHILDREN(), @cell = "Not Started"), "Not Started", IF(COUNTIFS(CHLDREN(), @cell = "Upcoming")> 0, "Upcoming", "In Progress"))))

  • dhall
    dhall ✭✭✭

    @Paul Newcome, you are awesome, as always.

    I did find a typo in the last CHILDREN(), you're missing an i.

    I fixed that and did some testing but I found the "Upcoming" was overriding "In Progress", so I duplicated that part and put it ahead of the "Upcoming" portion. Here's my revised version:

    =IF(COUNT(CHILDREN()) = COUNTIFS(CHILDREN(), @cell = "Canceled"), "Canceled", IF(COUNT(CHILDREN()) = COUNTIFS(CHILDREN(), OR(@cell = "Complete", @cell = "Canceled", @cell = "On Hold")), "Complete", IF(COUNTIFS(CHILDREN(), @cell = "In Progress") > 0, "In Progress", IF(COUNT(CHILDREN()) = COUNTIFS(CHILDREN(), @cell = "Not Started"), "Not Started", IF(COUNTIFS(CHILDREN(), @cell = "Upcoming") > 0, "Upcoming", "In Progress")))))


    From my testing, it's working as expected:

    image.png

    And it drastically reduced the length of the formula, this is awesome. Thanks again!

  • Paul Newcome
    Paul Newcome ✭✭✭✭✭✭

    Glad you were able to get it sorted.


    And sorry for those couple of mistakes. I hadn't tested it (how I missed the upcoming piece), and sometimes my keyboard likes to freeze up for a second (the missing "I").

Help Article Resources

Want to practice working with formulas directly in Smartsheet?

Check out the公式手册模板!
@ciera_wolinski<\/a> <\/p>

The formula below will get what you need. With Smartsheet, you have to convert % to decimal values in formulas. <\/p>

=IF([Participation %]@row = 0, \"Not Participating\", IF([Participation %]@row > 0.8, \"On Track\", IF(AND([Participation %]@row < 0.81, [Participation %]@row > 0), \"Needs Improvement\", \"Blank\")))<\/p>"}]}},"status":{"statusID":3,"name":"Accepted","state":"closed","recordType":"discussion","recordSubType":"question"},"bookmarked":false,"unread":false,"category":{"categoryID":322,"name":"Formulas and Functions","url":"https:\/\/community.smartsheet.com\/categories\/formulas-and-functions","allowedDiscussionTypes":[]},"reactions":[{"tagID":3,"urlcode":"Promote","name":"Promote","class":"Positive","hasReacted":false,"reactionValue":5,"count":0},{"tagID":5,"urlcode":"Insightful","name":"Insightful","class":"Positive","hasReacted":false,"reactionValue":1,"count":0},{"tagID":11,"urlcode":"Up","name":"Vote Up","class":"Positive","hasReacted":false,"reactionValue":1,"count":0},{"tagID":13,"urlcode":"Awesome","name":"Awesome","class":"Positive","hasReacted":false,"reactionValue":1,"count":0}],"tags":[{"tagID":254,"urlcode":"Formulas","name":"Formulas"}]},{"discussionID":108795,"type":"question","name":"Error Using Max Function","excerpt":"Having an issue with the Max formula. Appreciate any advice the community can provide. This formula is giving me an Invalid Column Error: =MAX([End Date]195:[End Date]220) However, this one works fine so I don't see why there would be an invalid column error on the first formula. =NETWORKDAYS([End Date]207, [Start…","snippet":"Having an issue with the Max formula. Appreciate any advice the community can provide. This formula is giving me an Invalid Column Error: =MAX([End Date]195:[End Date]220)…","categoryID":322,"dateInserted":"2023-08-10T15:42:27+00:00","dateUpdated":null,"dateLastComment":"2023-08-10T19:20:09+00:00","insertUserID":147716,"insertUser":{"userID":147716,"name":"Laura Krylov ASGLLC","url":"https:\/\/community.smartsheet.com\/profile\/Laura%20Krylov%20ASGLLC","photoUrl":"https:\/\/lh3.googleusercontent.com\/a\/AATXAJzqP5l6RPvTnPZ_FElh_Gd3nK2OrCoGmkfTmo11=s96-c","dateLastActive":"2023-08-10T19:05:06+00:00","banned":0,"punished":0,"private":false,"label":"✭✭"},"updateUserID":null,"lastUserID":161714,"lastUser":{"userID":161714,"name":"Carson Penticuff","url":"https:\/\/community.smartsheet.com\/profile\/Carson%20Penticuff","photoUrl":"https:\/\/us.v-cdn.net\/6031209\/uploads\/userpics\/B0Q390EZX8XK\/nBGT0U1689CN6.jpg","dateLastActive":"2023-08-11T03:23:51+00:00","banned":0,"punished":0,"private":false,"label":"✭✭✭✭✭"},"pinned":false,"pinLocation":null,"closed":false,"sink":false,"countComments":4,"countViews":28,"score":null,"hot":3383379756,"url":"https:\/\/community.smartsheet.com\/discussion\/108795\/error-using-max-function","canonicalUrl":"https:\/\/community.smartsheet.com\/discussion\/108795\/error-using-max-function","format":"Rich","lastPost":{"discussionID":108795,"commentID":390113,"name":"Re: Error Using Max Function","url":"https:\/\/community.smartsheet.com\/discussion\/comment\/390113#Comment_390113","dateInserted":"2023-08-10T19:20:09+00:00","insertUserID":161714,"insertUser":{"userID":161714,"name":"Carson Penticuff","url":"https:\/\/community.smartsheet.com\/profile\/Carson%20Penticuff","photoUrl":"https:\/\/us.v-cdn.net\/6031209\/uploads\/userpics\/B0Q390EZX8XK\/nBGT0U1689CN6.jpg","dateLastActive":"2023-08-11T03:23:51+00:00","banned":0,"punished":0,"private":false,"label":"✭✭✭✭✭"}},"breadcrumbs":[{"name":"Home","url":"https:\/\/community.smartsheet.com\/"},{"name":"Get Help","url":"https:\/\/community.smartsheet.com\/categories\/get-help"},{"name":"Formulas and Functions","url":"https:\/\/community.smartsheet.com\/categories\/formulas-and-functions"}],"groupID":null,"statusID":3,"attributes":{"question":{"status":"accepted","dateAccepted":"2023-08-10T17:50:34+00:00","dateAnswered":"2023-08-10T15:59:34+00:00","acceptedAnswers":[{"commentID":390050,"body":"

Is the column you are inserting the formula into formatted as a date column?<\/p>"}]}},"status":{"statusID":3,"name":"Accepted","state":"closed","recordType":"discussion","recordSubType":"question"},"bookmarked":false,"unread":false,"category":{"categoryID":322,"name":"Formulas and Functions","url":"https:\/\/community.smartsheet.com\/categories\/formulas-and-functions","allowedDiscussionTypes":[]},"reactions":[{"tagID":3,"urlcode":"Promote","name":"Promote","class":"Positive","hasReacted":false,"reactionValue":5,"count":0},{"tagID":5,"urlcode":"Insightful","name":"Insightful","class":"Positive","hasReacted":false,"reactionValue":1,"count":0},{"tagID":11,"urlcode":"Up","name":"Vote Up","class":"Positive","hasReacted":false,"reactionValue":1,"count":0},{"tagID":13,"urlcode":"Awesome","name":"Awesome","class":"Positive","hasReacted":false,"reactionValue":1,"count":0}],"tags":[]},{"discussionID":108786,"type":"question","name":"Can't Save Field Logic Updates in Dynamic View","excerpt":"Hi all, I've seen a few similar posts regarding this, but they were from a few years back so not sure if anything has changed. I want to add Field Logic to a field in our form. It asks the user to select a Category and to deter using Issues\/Miscellaneous, I have added a dropdown column in the sheet for the user to confirm…","snippet":"Hi all, I've seen a few similar posts regarding this, but they were from a few years back so not sure if anything has changed. I want to add Field Logic to a field in our form. It…","categoryID":322,"dateInserted":"2023-08-10T14:14:23+00:00","dateUpdated":null,"dateLastComment":"2023-08-10T16:42:12+00:00","insertUserID":158227,"insertUser":{"userID":158227,"name":"BristolCVN","url":"https:\/\/community.smartsheet.com\/profile\/BristolCVN","photoUrl":"https:\/\/us.v-cdn.net\/6031209\/uploads\/defaultavatar\/nWRMFRX6I99I6.jpg","dateLastActive":"2023-08-10T15:49:46+00:00","banned":0,"punished":0,"private":false,"label":"✭"},"updateUserID":null,"lastUserID":8888,"lastUser":{"userID":8888,"name":"Andrée Starå","title":"Smartsheet Expert Consultant & Partner | Workflow Consultant \/ CEO @ WORK BOLD","url":"https:\/\/community.smartsheet.com\/profile\/Andr%C3%A9e%20Star%C3%A5","photoUrl":"https:\/\/us.v-cdn.net\/6031209\/uploads\/userpics\/0PAU3GBYQLBT\/nXWM7QXGD6464.jpg","dateLastActive":"2023-08-10T19:35:44+00:00","banned":0,"punished":0,"private":false,"label":"✭✭✭✭✭✭"},"pinned":false,"pinLocation":null,"closed":false,"sink":false,"countComments":3,"countViews":21,"score":null,"hot":3383364395,"url":"https:\/\/community.smartsheet.com\/discussion\/108786\/cant-save-field-logic-updates-in-dynamic-view","canonicalUrl":"https:\/\/community.smartsheet.com\/discussion\/108786\/cant-save-field-logic-updates-in-dynamic-view","format":"Rich","tagIDs":[443],"lastPost":{"discussionID":108786,"commentID":390063,"name":"Re: Can't Save Field Logic Updates in Dynamic View","url":"https:\/\/community.smartsheet.com\/discussion\/comment\/390063#Comment_390063","dateInserted":"2023-08-10T16:42:12+00:00","insertUserID":8888,"insertUser":{"userID":8888,"name":"Andrée Starå","title":"Smartsheet Expert Consultant & Partner | Workflow Consultant \/ CEO @ WORK BOLD","url":"https:\/\/community.smartsheet.com\/profile\/Andr%C3%A9e%20Star%C3%A5","photoUrl":"https:\/\/us.v-cdn.net\/6031209\/uploads\/userpics\/0PAU3GBYQLBT\/nXWM7QXGD6464.jpg","dateLastActive":"2023-08-10T19:35:44+00:00","banned":0,"punished":0,"private":false,"label":"✭✭✭✭✭✭"}},"breadcrumbs":[{"name":"Home","url":"https:\/\/community.smartsheet.com\/"},{"name":"Get Help","url":"https:\/\/community.smartsheet.com\/categories\/get-help"},{"name":"Formulas and Functions","url":"https:\/\/community.smartsheet.com\/categories\/formulas-and-functions"}],"groupID":null,"statusID":3,"image":{"url":"https:\/\/us.v-cdn.net\/6031209\/uploads\/8C0H47JEM9MT\/fieldlogic.png","urlSrcSet":{"10":"","300":"","800":"","1200":"","1600":""},"alt":"fieldlogic.png"},"attributes":{"question":{"status":"accepted","dateAccepted":"2023-08-10T15:49:43+00:00","dateAnswered":"2023-08-10T14:51:23+00:00","acceptedAnswers":[{"commentID":390035,"body":"

Hi @BristolCVN<\/a> <\/p>

I hope you're well and safe!<\/p>

You must add\/change the Rule #1 name.<\/p>

Did that work\/help? <\/p>

I hope that helps!<\/p>

Be safe, and have a fantastic week!<\/p>

Best,<\/p>

Andrée Starå<\/strong><\/a> | Workflow Consultant \/ CEO @ WORK BOLD<\/strong><\/a><\/p>

Did my post(s) help or answer your question or solve your problem? Please support the Community by <\/em>marking it Insightful\/Vote Up, Awesome, or\/and as the accepted answer<\/em><\/strong>. It will make it easier for others to find a solution or help to answer!<\/em><\/p>"}]}},"status":{"statusID":3,"name":"Accepted","state":"closed","recordType":"discussion","recordSubType":"question"},"bookmarked":false,"unread":false,"category":{"categoryID":322,"name":"Formulas and Functions","url":"https:\/\/community.smartsheet.com\/categories\/formulas-and-functions","allowedDiscussionTypes":[]},"reactions":[{"tagID":3,"urlcode":"Promote","name":"Promote","class":"Positive","hasReacted":false,"reactionValue":5,"count":0},{"tagID":5,"urlcode":"Insightful","name":"Insightful","class":"Positive","hasReacted":false,"reactionValue":1,"count":0},{"tagID":11,"urlcode":"Up","name":"Vote Up","class":"Positive","hasReacted":false,"reactionValue":1,"count":0},{"tagID":13,"urlcode":"Awesome","name":"Awesome","class":"Positive","hasReacted":false,"reactionValue":1,"count":0}],"tags":[{"tagID":443,"urlcode":"dynamic-view","name":"Dynamic View"}]}],"initialPaging":{"nextURL":"https:\/\/community.smartsheet.com\/api\/v2\/discussions?page=2&categoryID=322&includeChildCategories=1&type%5B0%5D=Question&excludeHiddenCategories=1&sort=-hot&limit=3&expand%5B0%5D=all&expand%5B1%5D=-body&expand%5B2%5D=insertUser&expand%5B3%5D=lastUser&status=accepted","prevURL":null,"currentPage":1,"total":10000,"limit":3},"title":"Trending in Formulas and Functions ","subtitle":null,"description":null,"noCheckboxes":true,"containerOptions":[],"discussionOptions":[]}">

Trending in Formulas and Functions