error on draft form earlier form version

2 views
Skip to first unread message

Sorin Vasilescu

unread,
Aug 27, 2018, 3:39:17 AM8/27/18
to Orbeon Forms
Hi,

I've found an error that has to do with old drafts still being loaded.
I was able to reproduce it directly in Orbeon, no integration was used.

Summary: After I add a new field to a form and publish the new form version, everybody who had a draft saved for that form will be presented with the option of using the draft, but will be displayed an incomplete form and encounter an error if they try to use it.

Prerequisite: MySQL db, draft auto-save enabled, 5 sec interval

Steps:
1. Create a form with one field
2. Open the form for filling, write something in the field, wait for the autosave to occur
3. Leave form
4. Edit form and add a second field
5. Open the form again for filling
--> Expected behavior (simple solution): will not say anything about draft because of different form version
6. You are asked if "start from scratch" or "open auto-saved draft"
7. Click "open auto-saved draft"
--> Expected behavior(complicated solution): opens up the form with field 1 filled in and field 2 blank, because it didn't exist when the draft was saved
--> Actual behavior: opens up the form with field 1 filled and field 2 missing
--> Actual behavior: throws error 5 secs after opening draft because it fails to auto-save draft

Best regards,
Sorin.

Jarosław Kowalewski

unread,
Aug 27, 2018, 4:00:38 AM8/27/18
to orb...@googlegroups.com
Hi Sorin. 
In such case you have take care about new fields and also deprecated fields using xf:insert or xf:delete with conditions. 
Eg. 
Insert missing field if don't exist. If exist do nothing. 
The same situation is if want to have xml instance corroct based on xsd schema and you just deleted field. You should add xf:delete with condition. 

Hope this help you. 
Br
Jarek


--
You received this message because you are subscribed to the Google Groups "Orbeon Forms" group.
To unsubscribe from this group and stop receiving emails from it, send an email to orbeon+un...@googlegroups.com.
To post to this group, send email to orb...@googlegroups.com.

Sorin Vasilescu

unread,
Aug 27, 2018, 4:17:35 AM8/27/18
to orb...@googlegroups.com
Hi Jarek,

Thanks for the very quick reply.
Please forgive me, I'm a bit new to Orbeon and there are some things I'm not quite clear on yet.

xf:insert and xf:delete seem to be XForms actions, it's great they exist, but I'm not using XForms directly.
I'm editing the form in the Form Builder interface and, as long as I use the GUI, I expect to end up with a form that works without manually editing the XML form definition.

Best regards,
Sorin.


You received this message because you are subscribed to a topic in the Google Groups "Orbeon Forms" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/orbeon/sjZpIh-b5uU/unsubscribe.
To unsubscribe from this group and all its topics, send an email to orbeon+un...@googlegroups.com.

Jarosław Kowalewski

unread,
Aug 27, 2018, 4:47:25 AM8/27/18
to orb...@googlegroups.com
Hi Sorin,
I understand. I had the same issues but when you start to think about details there is a lot of non tryvial aspects:
1. Your example is just one new field. I can imagine simple solution for that
2. But what about new field or fields in a repeat? Eg. User added already 100 rows and you just want to add new field or fields
3. More complicated situation is when you try to add whole sections or sub sections or even combination of them
4. And what about when you just change the name of the field? What should happen? 
5. What should happen with constraints, calculations etc.

 But yes. It would be nice to have the whole change track in the forms but my expirience shows that in non tryvial modyfications you just have to know something about xforms:)

BR.
Jarek

Reply all
Reply to author
Forward
0 new messages