Expand my Community achievements bar.

Guidelines for the Responsible Use of Generative AI in the Experience Cloud Community.

Auto check calculating the Average

Avatar

Level 7

I do not know how to approach an issue with my form, so any help or quide will be appreciate very much!

For a Performance Form I have 5 sections for the managers to fill in.

Every section includes an Assessment drop down list with 5 items to select from.

Items for DDList (Named:Assessment):

Outstanding

Exceeds Expectations

Meets Expectations

Needs Improvement

Does Not Meet Expectations

Final at the end of the form I have a section named

OVERALL SUMMARY OF PERFORMANCE with 5 check boxes named:

Outstanding

Exceeds Expectations

Meets Expectations

Needs Improvement

Does Not Meet Expectations

Is it possible with a script(Calculating the average?), AUTO to check(one of the check boxes for the Overall sum of performance?

THANK YOU

26 Replies

Avatar

Level 7

Hi Niall,

Thank you for the idea about binding the values of the DDL! Maybe I have to go that way...

This which I am looking is to have a Summary for all the Areas of how many points total for outstanding, how many points for Ecxeed and so on...

Is this possible?

Thank you

Avatar

Level 10

Yes, I think you could get this to work.

You would need to check the .rawValue of each dropdown and if the value matched an item, 'outstanding' then it would increase that score.

Here is an example that tracks the number of checkboxes that are ticked:

https://acrobat.com/#d=onheZFBKvcuWg*9xyBn-Zg

This might give you some ideas.

Niall

Avatar

Level 7

THANK YOU  for all your help Niall!

Avatar

Level 7

Hi Niall, I took your advise form your last sample cindle you have send me, I am close but still I have a problem at the end of the line!

Here what I have till now:

On change event for the Area1 the script below:

switch

(xfa.event.newText)

{

case

"Outstanding":

NumericField1.rawValue

= "5";

break

;

case

"Exceeds expectations":

NumericField2.rawValue

= "4";

break

;

case

"Meets expectations":

NumericField3.rawValue

= "3";

break

;

case

"Needs improvement":

NumericField4.rawValue

= "2";

break

;

case

"Does not meet expectations":

NumericField5.rawValue

= "1";

break

;

}

For a NumericField1(Score for Outstanding) on Calculate event the script:

var

vScore=0 ;

for

(var i=0; i<5; i++)

{

if

(xfa.resolveNode("optionA[" + i + "]").rawValue=="5")

vScore

+=xfa.resolveNode("optionA[" + i + "]").rawValue;

}

NumericField1.rawValue

= vScore ;

This I am getting(for NumericField1) is for example select Outstanding for all DDL is:55555 than 25 which is the desire!

How I can make it work, where is my mistake?

Thanks Niall

Avatar

Level 10

Hi,

It is taking the .rawValue as a string, whereas you need it as a number.

Try this inside the loop:

vScore += Number(xfa.resolveNode("optionA[" + i + "]").rawValue);

Good luck,

Niall

Avatar

Level 7

Niall, stay "Beautiful" as someone said about you!

THANK YOU!