With the release of Caspio Bridge 8.4 in early November of 2014, we have changed and standardized the behavior of field parameters inserted in emails. They now work properly, and if the data source of the DataPage is a View, the parameters adhere to the filters imposed by the View. However, if your DataPage relied on the past behavior of these parameters you will need to make some adjustments.

The issue is only relevant if all the conditions below are present in your DataPage:

  1. Your DataPage is a web form or a one that includes an editable details page.
  2. The DataPage is based on a View that filters data of the underlying table.
  3. The data entered in the form does not meet the filtering criteria of the View.

When you insert a data source field into an email, or in the case of notification emails, when all the fields are automatically inserted to the email, Caspio grabs the field values from the data source and not from the form. In other words, it first inserts the record into the underlying View and then reads it back to populate the fields inserted into the email. This is because some fields such as Autonumber and timestamp only become available after the field is inserted.

You receive blank values when a field that has been submitted is filtered out by the View filter. For example, if you set your filter to only show records that are checked “Admin”, and a record is entered that is not marked “Admin”, the parameter values in your email will be blank.

View Filter:

blank_values_in_emails_1

View filter field is not checked:

blank_values_in_emails_2

Result:

blank_values_in_emails_3

There are two ways to address this issue.

  1. Submission web forms generally don’t require a View, if you were to use a table, you can avoid this issue entirely. For the details pages, there may be cases that a View is used. See the next option.
  2. The default behavior of the Insert Field option is to put a parameter in your email that looks like this: [@field:FIELDNAME]. This is a format Caspio uses to signify that the value is read from the data source. In order to read the value from the form itself and before it’s entered into the data source, manually change the syntax of all of your parameters to this [@InsertRecordFIELDNAME] for submission forms and to this [@EditRecordFIELDNAME] for update (details) forms. Note that the new format does not contain a colon whereas the initial format does. In both cases the FIELDNAME part is the actual name of the field as it appears in the View. There is not currently a point-and-click way of doing this, but if you manually make the change, you will address the blank values issue.

Sample for Details Form:

blank_values_in_emails_4

Result:

blank_values_in_emails_5