Currently the mobile apps only enforce the data types of some fields. I'm told by support the supported field types are: Double, Int, Lookup, DateTime, Date, Picklist, Boolean, Text, Text Area, Currency, Percent, URL, Record Type and Multi pick list.
However, if you enter an incorrect value in a field type other than those listed, the app does not give any errors, but when it syncs with Salesforce it results in a sync conflict. The unsupported field types are: Email, URL, Phone, Text Area Long and Rich Text
For example, we ask the customer to fill out their email address in the work order before we generate a service report and email it to them. However, if they enter an incorrect email address, there is no validation whatsoever in the app to enforce a correct email address format. This then results in a sync conflict that has to be resolved before the work order can be saved and the service report emailed to the customer:
As a bare minimum, the mobile apps should at least enforce the same data type specifications as salesforce so the techs don't get sync conflicts because of this.
For those that are interested, we implemented a validation rule in this SFM as a workaround where the criteria was this:
( Does not contain: @
Does not contain: . )
Is not null
This was tested on iPhone Winter 17
What is the underlying problem do you intend to solve with this idea?
Sync conflicts and usability
How is the problem being addressed today, if at all?