Expression evaluation error: You must specify a variable to save into, such as ri!name << fn!sum. Received: List of Save.

I have a portal set up to use the a!verifyRecaptcha function.  I am receiving the following error referencing the line the buttonWidget starts. 

"Expression evaluation error: You must specify a variable to save into, such as ri!name << fn!sum. Received: List of Save."

Based on the error and I know that you can't have both the saveInto and the recaptchaSaveInto in the same buttonWidget, but it looks to me that I am trying to have too many saves?!?!

Here is the code.  I checked all of the a!save and they all have the target and value defined.  I'm not sure what is throwing the error.

                        a!buttonWidget(
                            label: "Check Your User Account",
                            recaptchaSaveInto: a!verifyRecaptcha(
                              onSuccess: {
                                a!match(
                                  value: fv!score,
                                  whenTrue: fv!value > .7,
                                  then: {
                                    saveInto: {
                                      a!save(local!mainSignUpSectionAction, null),
                                      a!save(local!userAccountSectionAction, "R"),
                                      if(
                                        a!isNotNullOrEmpty(local!speakerRecord),
                                        a!save(local!userAccountReactivatedSectionAction,"R"),
                                        a!save(local!userAccountNotActivatedSectionAction,"R")
                                      ),
                                      if(
                                        a!isNotNullOrEmpty(local!speakerRecord),
                                        a!startProcess(
                                          processModel: cons!PMSO_ReactivateSpeaker_PM,
                                          processParameters: {
                                            speakerId: local!speakerRecord['recordType!PMSO Speaker.fields.speakerId'],
                                            speakerRecord: local!speakerRecord,
                                            volunteerRequest: local!volunteerRequest,
                                            speakerDocument: local!speakerDocuments
                                          }
                                        ),
                                        a!save(local!userAccountNotActivatedSectionAction,"R")
                                      )
                                    },
                                    
                                  },
                                  whenTrue: fv!value > .3,
                                  then: {
                                    saveInto: {
                                      a!save(local!mainSignUpSectionAction, null),
                                      a!save(local!userAccountSectionAction, "R"),
                                      if(
                                        a!isNotNullOrEmpty(local!speakerRecord),
                                        a!save(local!userAccountReactivatedSectionAction,"R"),
                                        a!save(local!userAccountNotActivatedSectionAction,"R")
                                      ),
                                      if(
                                        a!isNotNullOrEmpty(local!speakerRecord),
                                        a!startProcess(
                                          processModel: cons!PMSO_ReactivateSpeaker_PM,
                                          processParameters: {
                                            speakerId: local!speakerRecord['recordType!PMSO Speaker.fields.speakerId'],
                                            speakerRecord: local!speakerRecord,
                                            volunteerRequest: local!volunteerRequest,
                                            speakerDocument: local!speakerDocuments
                                          },
                                          
                                        ),
                                        a!save(local!userAccountNotActivatedSectionAction,"R")
                                      )
                                    },
                                    
                                  },
                                  default: {
                                    a!save(local!reCAPTCHAfailSectionAction, "C")
                                  }
                                )
                              },
                              onError: {
                                a!save(local!reCAPTCHAfailSectionAction, "C")
                              }
                            ),
                            style: "GHOST",
                            color: "ACCENT",
                            disabled: not(local!activateAccount)
                          )

  Discussion posts and replies are publicly visible

Parents
  • +1
    Certified Senior Developer

    onSuccess is meant to be a list of a!save() and the first two possible outcomes of your a!match() are not a list of a!save(). Try moving the a!save()s directly into the then output array.

    /* current configuration */
    whenTrue: fv!value > .7,
    then: {
        saveInto: {
            a!save(local!mainSignUpSectionAction, null)
            ...
        }
    }
    
    /* remove saveInto from you then outcome */
    whenTrue: fv!value > .7,
    then: {
        a!save(local!mainSignUpSectionAction, null)
        ...
    }
     

Reply
  • +1
    Certified Senior Developer

    onSuccess is meant to be a list of a!save() and the first two possible outcomes of your a!match() are not a list of a!save(). Try moving the a!save()s directly into the then output array.

    /* current configuration */
    whenTrue: fv!value > .7,
    then: {
        saveInto: {
            a!save(local!mainSignUpSectionAction, null)
            ...
        }
    }
    
    /* remove saveInto from you then outcome */
    whenTrue: fv!value > .7,
    then: {
        a!save(local!mainSignUpSectionAction, null)
        ...
    }
     

Children