The "Allow Users to Edit Completed Submission" feature added in Machform 14 is a welcome addition; but, as it exists now, it is flawed. The main problem is that you have to decide how you will disable editing the form when you set it up and this cannot be changed after the fact. In other words, each form gets only one "edit completed submission" link, which has a specific, fixed "disable limit" hard wired into it.
It would be much better, for the purposes we use Machform for at my institution (a two-year community college), to have the option to override/expire the "disable limit" and/or create a new one from the entry manager.
One of the goals we need to achieve when allowing students to make corrections to their form submissions to to not allow then to change the form at will after it is supposed to be in final form. If a student reports their income is, for example, $5000 when requesting financial aid, but then can go back and change the value to $2000, that would be a huge problem. Because of this, I think the most important change to the "edit submitted entries" feature if to allow people with access to the entry manager for that form, with the ability to edit entries, to be able to expire the "edit links" on an entry by entry basis. There should also be an option to apply a "master time limit" to forms that have been set up to allow a fixed number of edits and resubmissions. With this option, you could give a user five chances to revise their entry, but they would only have a week to do it in. Even if that user hadn't revised the form at all, if they tried after a week, they wouldn't be able to update their entry.
Here is the use case I have in mind:
We want to allow the staff of our Student Services department to have the option to send back a form to the student for correction if they notice a problem. Ideally, we would like to give the student a relatively short time limit to submit the correction, but that won't work with the current version of the "edit submission" feature because the time limit starts when the form is submitted and will probably already be expired. Even if it isn't, there is no easy way to tell how much time the student has left to submit the correction. If we make the time limit very large, that defeats the whole purpose of having a time limit at all. The Student Services staff member should be able to override the existing time limit by generating a new link with a time limit that starts when they create the new link, not when the student originally submits the form.
If we give up on achieving the idea for now, we can set up the form to allow the student to be able to revise the form once. We hide the edit link and only send it to students who make a mistake. Students who don't make a mistake will never know what the edit link is (and can't change their entry after the fact) and students who do make a mistake and get the link sent to them will only have a single chance to update their entry. So, everything works fine, right? Perhaps not. What if the student makes another mistake when submitting their form the second time? The Student Services staff member can't give them another chance to revise the form. If we increase the number of entry revisions to two or higher, then we avoid that problem but cause a much worse one. Students who are sent the link to allow them to correct their entries will have extra chances to revise and submit their entries that we don't want them to have and there is currently no way to prevent this.
While we can see that the entry has been revised, a person looking at the entries later on won't necessarily know that a student was only supposed to have revised their entry once, instead of twice. And, even if it is noticed, the previous values of entries are not saved when a form is revised; only the fact that the entries where changed and when is recorded.
I hope I have explained why the changes I described to the "edit submission" feature are needed clearly and convincingly. I know this message is really, really long; but, I would be grateful for anyone who makes it to the end to indicate if they support my idea. Question and comments are also welcome.