Get Help from Others
Q&A: Ask OpenMRS
Discussion: OpenMRS Talk
Real-Time: IRC Chat | Slack
There are a lot of documentations for using xforms module. For xforms newbies, they might not know the right lingo how to ask and what keywords to use to search. This page contains common questions for xforms newbies which might help them to get started.
Set xforms.allowBindEdit to “true” in global properties. Please see XFRM-79 for more info.
Set xforms.useConceptIdAsHint to “true” under global properties. When you mouse over the form field question, it will display the concept description its concept id. However, it doesn’t show concept id for the form fields’ answers when the concept question is coded datatype. Please see XFRM-102 for more info.
Delete the dropdown box for Encounter ID and add a text box on Design Surface. Click on the text box and go to properties to bind it to Encounter ID. Click on the Encounter ID form field, go to its widget properties. Put “location” on the External Source.
Right click on any empty space (not on any widget) on Design Surface. If you right click on empty space in Group Box Widget, you won’t see the “New Tab” option.
First to change the widget type to “Single Select”. Then add child options with displayed text and binding to different values. Delete the old field from the Design Surface. Drag and drop from the single select field.
Add a new field and change the datatype to date, update the node name of binding to “obs/fieldname/date”. If binding field is disabled, you will need to set xforms.allowBindEdit to true first. Remember to turn it back to false after you are done to prevent any changes of binding accidentally. Please see XFRM-79 for more info.
You can use the rubber band by pressing left click on Design Surface. Remember that all elements must be totally inside the rubber band in order to be selected.
You can first use rubber band to select the elements you want them to be aligned. Then, select one of the Align Left, Align Right, Align Top, or Align Bottom function to make them looking nice and neat.
Set “true” for xforms.isRemoteFormEntry in global properties.
Select the group box widget, then go to the widget properties panel and change the Text Align property.
Before adding a column or row, you need to first click on the table or row from which you are going to add a new column or row. Then right click, go to "table", and then select "add columns" or "add rows".
If you want to resize a column or row without moving the widgets within or without the columns and rows (which is the default), you can re-size the lines with the mouse while pressing CTRL on the keyboard.
Click on the widget to select it, and then use the Left, Right, Up, Down keys on your keyboard.
Click on the widget to select it, the press to hold down the SHIFT key, and then use the Left, Right, Up, Down keys on your keyboard.
Right click in the table and from the menu that pops up, select "Table" and choose the appropriate action from the menu items under it.
Drag a rubber band around the cells you want to merge. Then right click in the table and from the menu that pops up, select "Table" and choose "Merge Cells" from the menu items under it.
While on the design surface, right click on the widget and select "Change to TextBox". Then using the Widget Properties Pane set the "External Source" property to either time, datetime or date depending on the widget type you want. If after all this, the date picker widget does not show up when you click on the widget, then go back to the design surface and set the widget's ID property, to any value you want, using the Widget Properties Pane
Click on the design surface where you want to add text and then just directly start typing. After you are done with typing the complete text, just press ENTER, on the keyboard, to exit the edit mode.
Click on the label widget to select it, then press ENTER on the keyboard. This will let you change the text and when you are done, press ENTER again to exit the edit mode.
Select "Find" from the "Edit" menu or click the find Toolbar icon. Enter the search text in the window that comes up and click OK. If you have the Properties Tab selected, this will search for a form field containing that text on the Form Fields Panel. But if you have the Design Surface selected, it will search for a widget which contains that text. When searching for form fields, the search start at the selected field and goes downwards. If you want it to start from the top, ensure that you click on the form name to select it.
Just press the ENTER key as an alternative way of going to the next field in accordance to the tab index.
Select the date field under the form fields panel. Then use the validation logic tab to add two validation conditions. (1) Value is greater than 2001-12-31 (2) Value is less than today()
Do not forget to add the validation error message that you want displayed to the user when they enter a date outside that range. Also notice that the format of the date you enter in the first validation condition should match that in your "xforms.dateSubmitFormat" global property.
Using the properties panel, check to ensure that the field does not have any skip logic to hide it. Then using the widget properties panel, make sure that it is not sharing a tab index with another widget. A very easy way of checking this is by assigning it a randomly big tab index value like 333 or any other value that you are sure is not yet used.
Just clear the background color property for this header, using the widget properties panel. Or simply make it to have the same background color as that of the table. After doing so, the vertical lines supposed to start from the top of the table may appear as not starting from the very top. To fix this, drag re-size them to the top.
Refresh the form in the form designer to pull up the new relationships field. For new forms, this will come up the first time you open the form in the designer. Drag and drop this field to the design surface, if it is not already there. Using the widget properties panel, set the external source property for the relative widget to: person. That way it will show a person picker widget when you start typing. Save the form.
When you load a form in the form designer, under the "Properties" tab (at its bottom), you will see a tab named "Others", which is next to the "Dynamic Lists" tab.
1) Click on a multiple select question to select in under the "Form Fields" panel.
2) Using the "Others" tab, just select the "Exclusive Option" from the drop down list you see on this tab. This is the answer which cannot be ticked together with others for the same question. And hence this is the "none" option. So just select "NONE". It can have any other name you want, other than none, which was just an example. Remember to save the form.