How Can We Help?

Search for answers or browse about Sintel Forms.

Best practices when designing forms

You are here:

Here are a few tips that we recommend when building forms or solutions using our platform.

Before creating anything

  1. Think about your layout
    Whether you are designing a form from scratch or have an existing paper-based form or electronic form to start with, it’s always a good idea to think about the design before creating anything. You should review the data that is being captured & the layout of the form. Your original form (if you are working based on an existing design) is probably not responsive. This means it doesn’t change its layout based on the size of the screen it’s displayed on so it’s not likely to look well on smaller screens. The new form you design with Sintel Forms will be responsive so it’s worth thinking about how you lay it out to make it as user-friendly as possible.
  2. Speed up data entry
    Once you have an idea of the fields that you need take some time to consider if they can be auto-set so that form filling is as efficient as possible for your users. You can do things like auto-setting the submitter, the date, setup cascading drop-downs or automatically setting the approver. Anything you can do to speed up the process of filling in a form will help with user adoption and make everyone’s life easier.
  3. Use the appropriate field types
    Some people have a tendency to use a single-line of text field for capturing all types of data-this is a bad idea. Excessive use of single-line of text fields leads to the capture of poor/inconsistent data which in turn leads to poor reporting on that data after it’s been captured from end-users. If you need a date then use a date field, if you need a number then use a number field, it’s that simple.
  4. Choice fields vs lookup fields
    If there are fields on your form that the user selects from a drop-down you should consider whether to use lookup columns or choice fields. If the options are not likely to change or be renamed in the future then choice fields are a good option and they are also quicker to create. However, if the options are likely to change or you want to control the sort order of them then a lookup column is a much better option. It does require you to create a list to store the values but it gives you a lot more scope for changes in the future. We in Sintel generally use lookup fields rather than choice fields when designing forms.
    Tip: While you can create many lookup columns in a list, you can’t display more than 12 lookup columns in a SharePoint list view by default.
  5. Linked lists
    Linked lists within Sintel Forms enable you to create parent-child relationships such as individual expense items on an expense form. This functionality is similar to the repeating table feature that was available in InfoPath with the difference that Sintel Forms stores such data as individual list items in a linked SharePoint list which allows for better reporting.
    Tip: Using linked lists will save you from creating an excessive number of columns in your main list to store data. If your form has a large number of fields then consider of some of those fields can be moved into linked lists.
  6. Do you need workflow-yes you do!
    Regardless of the type of form you are designing, it’s highly likely that a workflow of some sort is required. Sintel Forms has a built-in workflow engine that can be used to automate most business processes but you can easily use other workflow solutions such as Power Automate if you wish. The key thing here is to consider your workflow requirements before designing your form. You may think workflow can be added after your design is completed but it may be the case that at various stages of the business process you need to disable or hide sections or fields on the form and it’s always better to consider this before creating anything.

Design Recommendations

  1. One form per site
    For each new form, you intend to create it’s best to create a SharePoint site (Site Collection or subweb) in which to host the form. This provides more granular control over the form configuration including who can access it.
  2. Avoid spaces
    When creating lists, columns or lookup columns do not use spaces and do capitalise the first letter of each word example (DateItemReturned) instead of (Date Item Returned).

    If you create all the columns within our Sintel Forms Designer (which is the recommended way) it will automatically correct the column internal names so you don’t even have to think about this! You can set the SharePoint column display name and the label to use on the form and our Sintel Forms Designer will take care of the rest.

     

  3. Prefix lookup lists
    When creating “Lookup lists” (lists that contain values to be used in forms such as drop-downs) prefix them with the word “Lookup” Example “LookupCountries”, “LookupStates”, “LookupCities”. This will make it very easy to find or update these lookup lists in the future.
  4. List naming
    When creating the main list for storing form data use a name that reflects the data that will be stored such as “Ideas”, “Timesheets”, “Inspection Reports” etc…
  5. Column naming
    Resist the temptation to create columns with long names as this will make it more difficult to troubleshoot a form in the future or for another user to update it. Additionally, if you use Sintel BI to build dashboards or reports, the long field names will likely cause display issues. As an example, if you have a number of questions on a form then we recommend you set their name to Question 01, Question 02 etc… and then override the field label to whatever text you wish to display.
  6. Large files
    When using related Document or Picture Libraries on a form we recommend that users don’t attempt to add many files large files at once as the form can take some time to save.
  7. Enforce relationship behaviour & Cascade delete – during the creation of a lookup column, we highly recommended selecting ‘Enforce relationship behaviour – Cascade delete’ for the created lookup column. For more information please click here.
  8. Rules execution order
    Within the Logic section of the Sintel Forms Designer the rules are executed in the order in which they appear.
  9. Changes to lists
    When Sintel Forms is enabled and there are some changes made to the underlying SharePoint list, the user needs to open the Sintel Forms Designer and click save to ensure the changes made to the list are propagated into the Sintel Forms configuration.
  10. Removal
    A site in which the Sintel Forms Add-in has been added cannot be deleted until the Sintel Forms Add-in has first been removed.

Development Recommendations

  1. Use rules
    Instead of JavaScript use rules to disable buttons like “Save/Edit/Export to PDF”.
  2. Use the “Run Once” flag
    If you don’t need a Rule to execute every time a field on a form is changed then enable the “Run Once” flag to optimise performance.
  3. Avoid using temporary CSS classes
    These might change with each new update of Sintel Forms.
  4. Avoid overriding Sintel Forms root styling
    Overriding our root styling can affect many other Sintel Forms components.
  5. Avoid using custom popups/message containers
    We recommend using sections for this that could be initially hidden and then triggered to display using our Rules.
  6. Use theming
    Instead of JavaScript if you need to modify the form width.
  7. Avoid using Microsoft UI Fabric specific CSS classes
    It’s possible that class names could be changed whenever the Microsoft UI Fabric used within Sintel Forms is updated.
  8. Use logic for custom errors
    Use our custom errors step within Logic instead of writing custom code.
  9. Finally and probably most importantly
    If you need to do something custom or something that you think can’t be achieved by Sintel Forms functionality please contact us – customers often ask for new features and we listen. Many of our new features are as a result of feedback from customers and this improves our product as we can enhance it based on real-life use cases. For example, we have added some empty containers that don’t change and it allows you to find a reference point in the page easily and inject anything you need. This is not a feature we advertise but it does exist and is used by some customers.

Design for best User Experience versus Form Load Speed

When Designing your forms you should consider both the user experience and the form load speed. Using lookups (aka dropdowns) will speed up the data entry process for your users and will help improve the accuracy of the data that is captured but using too many lookups will affect the load time of your forms. When a form that contains lookups is being loaded the data source of each lookup field needs to be queried to retune a list of items to display in the lookup field. Conversely using text fields to capture data will slow down the data entry process for your users and potentially reduce the accuracy of the data that is captured however your forms will load faster as there are no additional data sources to be queried.

  1. For the best User Experience-Use Lookup fields
    Also known as dropdowns these types of fields provide faster data entry for users however they slow down the load time of forms so avoid using too many of them.
  2. For the fastest Form Load Speed-Use Text fields
    Text fields slow down data entry for users but using them results in your forms loading faster for your users.
  3. For the best User Experience and Form Load Speed-Use Text fields with autocomplete
    This approach combines the best of options 1 & 2 above.
    In this scenario, text fields are used which means your forms will load quickly however when a user interacts with a text field a query will be run to populate it with values from your data source, which will most likely be a SharePoint list. Using this approach ensures that forms load quickly and the additional data sources for the text fields are only queried when the users interact with them. It also allows users to use auto-complete such that as they type into the text fields related entries are shown to them from the data source which speeds up the data entry process further. Additionally, as the form uses text fields the user can enter a value that does not match any of the suggested results from the data source. learn more
Was this article helpful?
0 out of 5 stars
5 Stars 0%
4 Stars 0%
3 Stars 0%
2 Stars 0%
1 Stars 0%
How can we improve this article?
Please submit the reason for your vote so that we can improve the article.
Table of Contents