A convenient way for form users to access frequently used contact details

Rulestar's Contacts feature gives you the functionality of an electronic address book, much like you'd find in an email client or browser.  Fields containing contact details can be mapped to a Contact.  This enables form users to save contact details of individuals and companies to which they frequently refer so that they don't have to enter them every time they're required in a form.

What is a 'Contact'?

In Rulestar, a Contact is a collection of related fields/properties.  The relationship is defined in the Builder which we'll discuss below.

A Contact will be associated with either all internal Users OR a specific client (Company).  This means that internal users of the application can share contact details and that your clients will have access to the feature but with segregated data.

Contacts are divided up into two 'types': Individuals and Companies.  Possible Contact properties and the fields used in mapping them are listed in the table below. 

Contact Properties
Individuals Companies Field Type
Individual or Company Radio^
First Name* Company Name Name* or Text
Surname*   Name* or Text
Address Address Address
Email Email Email
Phone Number Phone Number Text
Fax Number Fax Number Text
Gender   Radio^
Date of Birth   Date/Time
Trustee (Yes/No) Trustee (Yes/No) Radio^
Trust Name Trust Name Text
Trust ABN Trust ABN ABN
  Australian (Yes/No) Radio^
  Company Number Text

*An Individual's name can either be a 'Name' field for Full Name or separate 'Text' fields for First and Surnames.
^Radio fields must be configured according to their particular Contact property


Mapping Contacts in the Form Builder

The most fundamental concept to remember when mapping fields to Contact properties is that only one Contact can be mapped per Section.  This also works in reverse in that Contact mappings cannot stretch over multiple Sections.

There are two methods implementing the mapping.  One can either map existing Fields or create a new set of Fields which will be automatically mapped.

Mapping Existing Fields

The first step is to ensure that all of the Fields are in the same Section.  Then, from the Section's 'More Actions' menu, choose 'Map Contacts'.  This opens a dialogue with all of the possible properties a Contact can have.  At this point there are two ways to complete the mapping, either use the 'Guess Map' function or manually map each field. 

If you want to use the 'Guess Map' function, just hit the button at the bottom of the dialogue
and the application will look for the fields in the section that it thinks best matches the Contact properties.  Changes can still be made after this, so it's usually the best place to start.

Mapping fields manually is straightforward, just choose the field that you want to correspond to a particular Contact property.

Please note: For a field that delineates a Contact as an Individual or Company, it must have Options with labels "Individual" and "Company" with values of 1 and 2 respectively.
For the Gender field, the options must be "Male" and "Female" with values 1 and 2 respectively.
For the Trustee and Australian fields, the labels must be "Yes" and "No" with values 0 and 1 respectively.


Creating new Fields for Mapping

If you're creating a new Section that is going to contain Contact properties then the easiest way to achieve this is to create all of the relevant fields in one go.  First, from the 'More Actions' menu, choose 'Map Contacts'.  Choose the 'Add Mapped Fields' item from the bottom of the dialogue.

You will then be prompted to supply a title/reference to this contact that will be added to each field created in the process.  This will then create ALL of the possible fields for a Contact (both Individual and Company) and map them accordingly.  After closing the dialogue you are able to delete any unnecessary fields as required.

The Contacts Page

This is where all of your contacts' details are stored.  You can use this page to manage your existing contacts and add new ones.  You can filter by 'Type' or by any of the other visible properties using the Filter box in the top-right corner of the page.

Any changes made on this page will be reflected immediately in the list of Contacts available in your forms.



Using Contact Details in the Forms

Retrieving Contact Details

When form users are presented with a Section that has a contact mapping, they will be able to retrieve contact details by entering data into one of the Name fields (i.e. Full Name, First Name, Last Name or Company Name).  Typing the first three characters of the name will trigger an auto-complete based on all of the available matches in the user's Contacts database, as is visible in the screenshot below.

Contacts in Form

Once the user selects an item from the lookup, all the other mapped fields in that Section will be completed with the available data for that Contact.  If the data does not exist the field will be left blank.

Note: default answers for mapped fields in the section will automatically filter the lookup data so it's important to use default values sparingly.

Address fields can also trigger a lookup of the database in the same way (type at least 3 characters) but will not cause other fields to be completed once selected.  In this way, you can select an address from the database even when you have manually filled in the Name or other fields in the Section.

No other mapped fields will trigger a lookup and are only populated in response to choosing a Name field.


Saving and Updating Contacts

If a user enters data into a mapped Name field then this, along with any other data entered into mapped fields in the same section will be cached and treated as a [retrievable] Contact for the remaining sections in the form.  Upon submission of a form, the user will be presented with the option of saving any new contacts to the database.

Save Contacts

If a Contact is retrieved in the form and changes are made (either by amending existing mapped fields or by adding details), users will be asked whether they want to save the Contact as a new Contact or update the existing contact.