Migrating Customizations
It has been a constant pain for SP/PowerForms designers trying to migrate the customizations made in their development environment to their production environment.
PowerForms store the customization in a pure XML format, inside the BPC PowerForms Customizationscustom list in the root of each site collection.
The reason for the difficulty resides on that URLs and Lists stored inside the XML must be changed to point to the corresponding production lists and although changing urls should be easy, replacing list GUIDs is a time consuming task.
For that reason, a new Migration wizard has been introduced which helps users produce the XML customization text for their migrating forms.
The wizard replaces the List GUIDs for Lookup controls as well as List Queries automatically, by searching for lists (using the same list name) in the production environment.
IMPORTANT : The wizard will work for Lists in Lookup Controls and List Queries. Any other url or list used either in Web Services, SQL Queries or inside script must be changed by editing the XML itself. A simple search-and-replace would do the job.
To use the migration wizard, open the designer and press the appropriate migration wizard button on the toolbar:

This will open a new form that will display all lists identified inside the form customization :

In order to identify the list ids in the production environment, users must change the URL of each entry in the datagrid.
The wizard will try to find a list with the same Title in the target site and fill the ID in the New Listcolumn
As soon as you have completed the required changes, just press the OK button to receive the XML text for the new configuration.
Next in the target list, open the designer and import the final customization text using the “Import Customization” button from the toolbar.
IMPORTANT : In order for this to work, the workstation must have access to both servers (Development/Staging and Production). If this is not feasible, another option may be used :

An option is availble in the Migration form that allows users to export the XML using the List Names and View Names instead of the IDs. To do that, just select this option an press OK.
You will get a version of the XML customization. At this point you have 2 options :
1. You can use the xml customization to directly import it in the target form
2. You can use a win 32 application (available after request from our support team) that can be executed from a workstation that has direct access to the target server. The migration tool will convert list names to the corresponding IDs this not allowing our forms to break if any list is renamed.
Right to Left support
Since v.2.5, PowerForms support Right to Left control positioning for the produced form design as well as for the designer itself.
For example here is a form customization before changing RLT options:

Opening the designer and navigating to the Options section, users can see the Right-To-Left option.

Changing this option has the following effect on the produced form :

And a similar effect on the designer screens :

Setup Required Fields
Automatically activating the designer
While customizing a SharePoint form, you may add an invalid script or perform some other customization that throws an error before the form completes loading, not showing the form toolbar and making it impossible to fix the issue.
Additionally, in version 2.3, a new feature has been introduced that allows the user designing the form to hide the toolbar completely (since there are other ways to Save, Delete and Cancel).
In order to show the designer, add an extra parameter in the querystring of the page : “_mode=design” (without the quotes).
This will bring up the designer skipping the display of the customized form.
Just remove it after saving the customization in order to display the form again.
Setting multiple forms for the same List/ContentType based on conditions
Sometimes in Sharepoint we have to make different forms with different fields for the same list depending on some field values. This feature is easily implemented with the button Customizations. By default when a form is customized for the first time, the first customization is automatically created with no condition. If the form remains without further customizations, then it will be loaded with the same fields in every record.
If the designer wants to create a different form, that will be loaded under specific conditions, he should copy the Default Customization and create the apropriate condition as shown below.

In this example the first condition (which is blank) is the Default one. After writing the new condition in the Textbox (“{Launched}”=”1”) and clicking on Copy button, we created a second customization which currently is a copy of the default. Now we select the new customization and click on button Select. The form will open and we can start designing it from the beggining. The new form will now open every time we want to edit or add a new record and our condition is fulfilled.
The condition can be editted from our Form Designer by clicking the second tab Options .

The syntax that shoud be used is “{FieldName}”=”Value”. We can also use the operators and, or and functions like nn(),nnus etc. for numbers. In the above example we have a boolean field (Yes/No) named Launched and we want to alter the form checking if this field is checked or not.
The result of this condition is shown below. 
Form with Unchecked
Form after Checking field

How to use the Designer
It is very simple to change the position of the controls on any form. Click on Design Form and the view of the forms will change.Now you can view all the forms controls, drag any of them and drop it in a new cell. When you drop the control in an occupied cell, it automatically generates a new row and drifts the other rows down.

At the top of the form you have the options to Save the design, Add a new tab, Add a new section to the selected tab, Exit without saving, and Hide or Delete the selected controls (they can be multiple controls).
You can edit one specific control by clicking the button that is on the right corner of the control.
The control properties window will appear and all the properties of the control can be edited from here.

On the right corner of every control you will also find a set of arrow buttons that can be used to increase or decrease the columns or rows that the control is occupying.
On the right of the form designer the toolbox appears. It has 3 sections Add Control, Hidden Controls and Unbound Fields.
You can drag a control from any of these sections and drop it in your form.
In the first section all the possible controls of PowerForms are listed.
In second section the Hidden controls are listed.All the controls that you choose to hide with all their properties are here and can easily reused in the forms in the future. Their values can also be used in other visible controls for validation reasons or in calculated fields.
The last section contains all the fields of the list or library that are not used in the form and remain unbound.In that way you can easily find a new field an d by dragging it in the form you can create automatically a new control for it.

