I am experiencing an issue where a simple multi-step Optimizely Form is only posting the submission data from the final step to a custom actor introduced into the solution. The frustrating part is this only happens when the 'store form submissions' option is unchecked. I need this unchecked because I don't want data to be stored in the DDS and presented in the form submission UI on the container inside the CMS. The idea is to store the data in an external system which is the job of the custom actor except I'm losing the submission data in this scenario.
Example Scenario
Complete Step 1 > submit will go to the next step
Complete Step 2 > post data to to the default '/EPiServer.Forms/DataSubmit'
This is what SubmissionData.Data in the custom actor (which inherits PostSubmissionActorBase).It's missing all step 1 properties
If I re-enable 'store form submissions' in the CMS and repeat the process above to populate all properties in the two steps I get the following in SubmissionData.Data in the custom actor.
It's worth pointing out that when 'store form submissions' is unchecked if I use developer tools and inspect the network tab I can see that the payload contains all of the data when i select submit btn. Ive also completely stripped all custom js and styles so the form is raw. I still see the issue so it must be on the server side.
Convinced that this surely wasn't by design I created an Alloy Demo site, installed the Episerver.Forms package, and created an identical simple multi-step form. My testing confirmed that regardless of 'store form submissions' published value the SubmissionData.Data always contained the full dataset. 🥴
This pointed to an issue with the solution I was working so I also tried
The forms package I had installed on the Alloy Demo site was 4.30.4 (forms, core & UI) so I updated the package in my solution - didn't work
Updated the dependency resolver to match Alloy so that the custom actor was being registered in the same way - didn't work
Removed all custom routes/form related logic - didn't work
Compared all configurations on the containers/elements and they are identical
I raised an Optimizely support ticket to engage them and although I have scree shared to demo the issue, understandable without the solution they are struggling to pinpoint what might be happening. The only real difference is the CMS versions (alloy = 11.15, solution 11.13) but that shouldn't make any difference I don't think. I guess I'm raising this ticket to see if anyone can think of anything else I can try to get to the bottom of this?
Hello,
I am experiencing an issue where a simple multi-step Optimizely Form is only posting the submission data from the final step to a custom actor introduced into the solution. The frustrating part is this only happens when the 'store form submissions' option is unchecked. I need this unchecked because I don't want data to be stored in the DDS and presented in the form submission UI on the container inside the CMS. The idea is to store the data in an external system which is the job of the custom actor except I'm losing the submission data in this scenario.
Example Scenario
Complete Step 1 > submit will go to the next step
Complete Step 2 > post data to to the default '/EPiServer.Forms/DataSubmit'
This is what SubmissionData.Data in the custom actor (which inherits PostSubmissionActorBase).It's missing all step 1 properties
If I re-enable 'store form submissions' in the CMS and repeat the process above to populate all properties in the two steps I get the following in SubmissionData.Data in the custom actor.
It's worth pointing out that when 'store form submissions' is unchecked if I use developer tools and inspect the network tab I can see that the payload contains all of the data when i select submit btn. Ive also completely stripped all custom js and styles so the form is raw. I still see the issue so it must be on the server side.
Convinced that this surely wasn't by design I created an Alloy Demo site, installed the Episerver.Forms package, and created an identical simple multi-step form. My testing confirmed that regardless of 'store form submissions' published value the SubmissionData.Data always contained the full dataset. 🥴
This pointed to an issue with the solution I was working so I also tried
I raised an Optimizely support ticket to engage them and although I have scree shared to demo the issue, understandable without the solution they are struggling to pinpoint what might be happening. The only real difference is the CMS versions (alloy = 11.15, solution 11.13) but that shouldn't make any difference I don't think. I guess I'm raising this ticket to see if anyone can think of anything else I can try to get to the bottom of this?
Thank you for reading!
Paul