Enriching a Database through a Form
Database enrichment allows you to set up forms which will directly update the personal information of the profiles of your database (for example, their address, their hobbies, a new mobile phone number,...).
Database enrichment is only possible if you selected a profile database during the definition of the main parameters of your forms (see the 'Participant parameters' point in the 'Creating a form' chapter). Forms that are not linked to a database (namely 'anonymous participants') cannot update any profile.
If your form uses the mode "unique participation, but the participation can be updated" and that you define database enrichment rules, only the first participation will update the profile.
In the case of "multiple participations" forms, each participation will enrich the database.
During the sixth step of the preparation of your form, you will be able to choose how to update your profile database.
Database enrichment rules
To the left, the 'database attributes' will present all existing attributes in the selected database.
The center of the screen will be dedicated to enrichment rules.
Click on the '+' button to add an enrichment rule block. Select the attribute to be updated in the list, then drag and drop it.
You will be invited to match the attribute with the question providing the new value.
If the attribute has a specific type format (date, integer, e-mail address,...), a pop-up window with a the drop-down list will open. This list will only display questions with answers sharing a format with the attribute.
If there is only one question defined with the same format as the attribute (for example, for specific formats such as country or language), ACTITO will directly associate the rule to this question.
Define profile database attribute value
If ACTITO cannot clearly identify a question compatible with the attribute, or that you click on the 'for more options' link at the previous step, you will be directed to the screen used to 'define the profile database attribute value'.
Attribute on which the rule should be defined
The first section of this interface will give you details about the nature of the selected attribute, such as its type and whether it is multi-valued.
The 'Attribute value' section lets you define the updated value of the attribute.
Answer to the question: You can associate a question from the form to the attribute, whose value will therefore become the answer to this question. This is the default principle.
Constant value: It possible to add a constant value. It is possible to create more complex enrichment by combining constant values with trigger conditions, which will be explained in the next section.
Advanced expression: You can also code the value yourself.
No value and Existing values
The last section will vary depending on whether the enriched attribute is simple or multi-value.
If it is a simple value attribute, the section will be called 'No value'.
If the attribute is multi-value, the section will be called 'Existing values'.
This section will be used to decide the course of action if the defining question yields no value.
You can either:
Keep current attribute value: If the question is intended only for updates (for example, the current e-mail address should not be deleted if 'new e-mail address' is intentionally left empty.)
Delete current attribute value: If the nature of the question is such that leaving it empty means the attribute value is no longer relevant. For example, if your form is used to notify an address modification, the new address might not include a postal box, so this field might be left empty intentionally. The former value of the attribute 'addressBox' must therefore be deleted, not kept.
This section will be used to define the effect of the enrichment rule if there are existing values for this profile attribute.
You can either :
Add answers to the existing values: This option allows you to add answers without affecting the existing values of the attribute.
Override existing values with the answers: This option allows you to replace all existing values by the new answers. If a previously existing value is not selected during this participation, it will be deleted.
Override only existing values that match possible responses: During the definition of the question, it is possible not to include all possible values of the attribute (for instance, you may want to give your profiles the possibility to subscribe to the subscriptions 'Newsletter1' or 'Newsletter2', but without involving other existing subscriptions in your database). This last option will allow you to replace existing values by the new answers, but only for values predefined as possible answers. You will therefore not risk erasing values that you deliberately excluded from the question.
Subscriptions count as multi-values attributes. In their case, choosing the appropriate rule is necessary to avoid subscribing profiles that unsubscribed again, or the other way round. You should therefore always choose one of the two override values options, depending on whether all subscriptions are involved or not.
'Never override existing values?': Check this box if you only want your profiles to be able to update incomplete information in their profile file, but not to modify existing data about them already stored in ACTITO.
Edit the value of an attribute
After you finished 'defining the value of a attribute', or if you did not go through this stage because you went through the 'question selection' pop-up, it is still possible to edit the value of an attribute and its parameters, as explained above.
To do so, click on the 'pen' icon next to the attribute name.
Define a profile database enrichment rule
If you do not specify any rule, enrichment will be triggered if the the form is completed.
However, you have the possibility to add restrictions by defining more precise trigger conditions.
To do so, click on the pen icon in the header of the rule block.
Depending on your form, there are up to 5 options available to trigger database enrichment:
The participation to the form is complete: This is the default option. In this case, the profile must reach the end of all pages to trigger enrichment.
A specific page is submitted: If your form has multiple pages, you can choose to update the attribute even if the contact does not proceed to the end of the form.
All the following conditions are satisfied: This allows you to target a question, by triggering enrichment only if the answer is known or if a specific answer is given. You can set up several conditions. Enrichment will be triggered if all conditions are fulfilled.
One of the following conditions is satisfied: This allows you to target a question, by triggering enrichment only if the answer is known or if a specific answer is given. You can set up several conditions. Enrichment will be triggered as soon as one condition is fulfilled.
The following expression holds: This option allows you to code your condition.
Webservices related to forms do not take the notion of pages into account. If you push your data through webservices, the trigger condition "The following page is submitted" should not be used. Instead, the condition "The participation to the form is complete" should be preferred.
Database enrichment mode
In the same frame as the trigger condition, you have the possibility to check the database enrichment mode and to modify it in some cases.
Update only: This lets you update the participant's profile. Choose this option if you do not want your form to create new profiles.
Creation only: This lets you create a new profile in the participant DB, such as for a new user registration form. In this mode, it is necessary to have a rule for each mandatory attribute.
Mixed: Use this option to update existing participant profiles and create a new profile if the participant is unknown. In this mode, it is advised to include a rule related to a unique (key) attribute, in order to ensure the identification of existing profiles. Otherwise, ACTITO would only create new profiles.
If multiple participations are not allowed in your form, only the 'update only' mode can be used.
Attributes enriched through an identical enrichment rule (condition and mode) can be grouped in a same block.
Updating database enrichment
It is still possible to modify the database enrichment rules after the publication of the form.
To do so, we advise you to read the 'Update database enrichment' point of the 'Managing an active form' page.
Modifying the enrichment rule will not revert any already registered update to a profile attribute.