Access previous versions of form definitions with Orbeon - orbeon

It appears that Orbeon does not support form versioning. When a change is made to a form definition, the form builder will only show the most recent version of the form. We are using MySql to store our data and I have noticed that the form definition is not overwritten in the database. A new line is added with a newer time stamp.
One requirement we have is that old revisions of a form must be trackable. At the very least we need to be able to view old versions of a form. How can this be done? The only way I can think of doing this is creating an instance of a form named with the revision everytime the form definition is updated. Has anyone found a better way to handle versioning in Orbeon?

At this time, and this includes the upcoming Orbeon Forms 4.0, there is no proper form versioning feature in Orbeon Forms (but we have some ideas as to how to implement this).
If what you want is that form data entered with a given version of a form definition is always loaded with that same version of the form definition, then unfortunately that feature isn't there.
Now, as you have noticed when using MySQL or Oracle, form data and form definitions are never actually deleted from the database. But this is more of an auditing feature rather than a versioning feature. With this, if you just want to find or restore an older version of a form, you can do this with a SQL query.

Related

Generated models property type changes after updating to latest version Umbraco 7

I've got an Umbraco site in Visual Studio that uses the generated Umbraco.Web.PublishedContentModels.dll for its models.
I'm trying to update this site from 7.5.6 to the latest version of Umbraco 7 (7.15.5). Along with the updated Umbraco CMS Nuget package, I get the updated Umbraco.ModelsBuilder 3.0.10.
Everything seems OK, but when I try to regenerate the Umbraco.Web.PublishedContentModels.dll through the backend, the generated DLL has different property types for certain models.
Mostly it's properties that used to be strings, that are now IPublishedContent. For instance, I've got a Document Type "Meal" that has a Media field "Photo". Photo used to be a string, but it's now Umbraco.Core.Models.IPublishedContent.
I inherited this site recently, so I'm not really sure how the type of the Photo property was generated as string to begin with. Has there been a change between 7.5 and 7.15 in how models are generated? Or was some configuration broken?
I guess I can rewrite each place where these properties are used to unwrap the IPublishedContent and get the right property out, but it'd be a lot of work that I would rather avoid.
Umbraco team added value converters to all built-in data types in v7.6.
Value converters can be disabled in ~/config/umbracoSettings.config:
<!-- Enables value converters for all built in property editors so that they return strongly typed object, recommended for use with Models Builder -->
<EnablePropertyValueConverters>true</EnablePropertyValueConverters>
You can find more details here:
https://issues.umbraco.org/issue/U4-7318

Orbeon forms 2016.2 to 2016.2.1

I am using orbeon forms 2016.2 professional edition right now and I plan to switch to 2016.2.1 because the release notes highly recommend for the upgrade. When I perform the switch, can I use the same orbeon database that created with version 2016.2 without doing any patch works?
The data and table format hasn't changed between 2016.2 and 2016.2.1. (And in general, it shouldn't change in point releases, unless the change is really necessary to fix a bug.) So:
If you are using a relational database, and have already upgraded it to the 2016.2 format, or created it with the 2016.2 DDL, you're good to go, and can just switch to 2016.2.1.
If you're using the embedded eXist, you'll want to "copy" the WEB-INF/exist-data to the new version. For more on this, see point 2 in the When using Form Builder and Form Runner section of the documentation.

Orbeon 3.9.1PE upgrade to 4.1CE

Tomcat 7
Orbeon 4.1CE
After using 4.1CE, it cannot read the handwritten form in "orbeon/conf/resources/forms/"
Is there any new file need to define in 4.1 version?
Now, I know that the properties-local.xml affects this problem.
Is there any sample of properties-local.xml for 4.1CE?
First, if you're upgrading, I'd recommend you upgrade to the latest version (4.9 at the time of this writing), since 4.1 is already quite old.
Now, regarding your specific question, I can't remember Orbeon Forms ever using a orbeon/conf/resources/forms folder. Maybe orbeon/conf/resources was setup as a resource folder in your web.xml? If not, this must have been a directory your app was explicitly reading from.
About the properties-local.xml, you can define your own values for properties to configure the way Orbeon Forms works, and for more on this I'd recommend you go through the documentation about properties.

Symfony2 standalone Form component v2.3 - setting up a form

This is the same question asked here: Symfony2 standalone form component - setting up a form. The answer to this question seems to fully address the issue.
Unfortunately back when this question was asked the version of the form component was 2.0.x, and several things have changed since, for example the form creation using the form factory is quite different now compare the old code vs the new one.
I looked around but didn't find any documentation or examples on how to do this with the latest versions.
any updated versions of a sample application using the form component outside of Symfony2?
I have a repository demonstrating the standalone usage of the Form component for Symfony 2.1+ with both Twig and PHP as templating engine (check the branches): https://github.com/bschussek/standalone-forms/blob/2.1%2Btwig/src/setup.php
The crucial part is that you shouldn't instantiate FormFactory objects manually anymore (to give us core developers more flexibility in changing its constructor), but use the Forms class instead:
$formFactory = Forms::createFormFactoryBuilder()
->addExtension(new CsrfExtension($csrfProvider))
->addExtension(new ValidatorExtension($validator))
->getFormFactory();
A nice side benefit is that your IDE will list you the setters of the form factory builder, showing you what you can configure and how.

New To Orbeon Forms and Need Mysql Connection With Orbeon CE

I have Few Doubts about Orbeon CE
If i build the form in form builder how this form can be used in my other context of webapps(I am Using Tomcat 6).
for ex: categoryfrom i build in orbeon context. I want to use this form in My own Context example foo.
How can i proceed with database connection in Orbeon CE to save the data that are entered in the form i build in orbeon. If i click on database connection it is saying like "This Feature is supported in PE version only".
3.How to Establish the Database(Mysql) connection with the form build in Orbeon CE. I have gone through your site but Its not in detail with Orbeon CE.
Orbeon CE says that Mysql is supported. In What way?
About the location of deployed forms: forms you create with Form Builder are also ran by Orbeon Forms. After you hit the Publish button in Form Builder, the form becomes available on a path that depends on the app and form name you chose when creating the form. For instance, if you have Orbeon Forms deployed on http://www.example.com/orbeon, and your app is called patients and the form is called registration, the URL to fill out a new form will be:
http://www.example.com/orbeon/fr/patients/regisration/new
To setup Orbeon Forms with MySQL, see Oracle and MySQL Persistence Layers. You don't need to use Services and Actions for this. The latter is not for form data persistence, but to make queries to the database, say to populate a drop-down, or pre-populate a field live based on a value entered in another field.

Resources