Calculated value to validate multiple check boxes(All check boxes checked, Status = Complete)?

  • 4 March 2016
  • 2 replies
  • 186 views

I have a panel in a Nintex form that has multiple check boxes for tasks, like this:

[ ]Task 1

[ ]Task 2

[ ]Task 3

 

I want to have a calculate value field("Status") above this panel that validates whether all check boxes have been checked.  If all are checked, Status = "Complete".  If any are unchecked, Status = "In Progress".  I've done similar things in InfoPath, by setting the value to each check box to 1, then adding them together.  If sum = 3, Status = "Complete", if < 3, Status = "In Progress", but is there a better way to do this in Nintex Forms?  Perhaps if Task 1, Task 2, and Task 3 are all true, Status= "Complete", else Status = "In Progress"?  I'll end up having 12 different panels/sections with 6 tasks each that need to all roll up to the Status field, so I'm trying to make this as simple as possible.

 

I'm brand new to Nintex Forms, so any help would be greatly appreciated.  Also, I'm using the O365 version of Nintex Forms, if that makes a difference.


2 replies

Badge +11

Hi Eric,

i think you can use rules to solve your problem. Create 2 labels above your panel (one "Complete" one "In Progress") and place them on top of each other. You can then create a formating rule for both fields. Configure this rule to hide the control if your formula is true.

As a formula you can use something like "and(equals(checkbox1, true), and(equals(checkbox2, true), equals(checkbox3, true)))" to hide the "In Progress" label and the opposite "not(and(equals(checkbox1, true), and(equals(checkbox2, true), equals(checkbox3, true))))" to hide the "Completed" label.

Use the "named controls" tab of the formula builder to insert the checkbox references. You can then just copy these labels for all of your checkbox-panels.

Regards

Philipp

Badge +3

Hi Eric,

You can do this with Calculated Value and three Yes/No controls. In the formula field of Calculate Value put this:

if((Task1 == true) && (Task2 == true) && (Task3 == true),"Complete","In Progress")

This works for me.

Regards

Kyriakos

Reply