The Attach field type allows users to attach documents and files from a device or various web locations. Like most field types, it includes the appropriate basic properties, layout & styling, and validation & behavior such as visibility, dynamic values, and read-only behavior. 

TABLE OF CONTENTS




Some pointers about attaching files and utilizing them in your output reports

Unlike photo or signature controls, there is no way to include a document inside your document template fully. If you need an image of your document to show up inside a Word or Excel output design, please take a photo of a document and include that as a separate media field. If your form screen includes a connector, such as an email connector or other file storage to Dropbox, Google Drive, etc., you can select the box to "Send Media Files Separately" and, in that connector, all media files, file attachments and signatures will be attached separately. If the attachment you include in your form is a PDF document, for example, that will be sent alongside your connector document, if you have one using a template./var/folders/pq/fjgldpr17y1b43bxbhnxc2f00000gn/T/com.microsoft.Word/WebArchiveCopyPasteTempFiles/MWpXBX_lnGW_euSmpvTtxbgY1pDvsdZ4Kw.png?1579826904

 If you do not want to send media files separately, because too many files are part of the document, or because you want it all contained in a single output report, such as PDF, you may want to consider using a hidden field to capture the URL of where the file exists. In this instance, you can use a hidden or other text field along with the function, {( FILEURL(mediafield) )}, in order to associate the file attachment directly in an output template, such as Word or Excel, which may be converted into PDF on any specific connector.  

Example: Say you have a floor design document that you attach to a work order, and the attachment field is called {{FloorDesign}}. You can create a hidden field for the exact URL location of any PDF attachment. The hidden field, say that is called {{HiddenURLField}}, you will use the formula {( FILEURL({{FloorDesign}}) )}. 

Your output document will then reference this hidden field using the following formula:

{( LINK(‘Click here’, {{HiddenURLField}}) )}

Whether you are sending a Word, Excel, or PDF document in your connector, the words "Click here" will be a link to the PDF document attachment. This is a powerful capability to attach and utilize additional documents inside your form screens.

 


Basic Properties

Data Name

This is the name of the field that should be referenced in any form logic or API calls. Users will not see this name on the form.

Data names cannot contain spaces or any special characters other than an underscore and must begin with a letter. They are case-sensitive and must be referred to precisely whenever they are referenced.

Title Text

This is the name of the field that will be displayed to users on the app. This property is completely optional; while a field must contain a data name, a field title is optional.

The text color may be chosen with a hex code. The text may be also formatted as Bold or Italic and given a relative size -- Small, Medium (the default) or Large.

Hint Text

This optional field can be used to show secondary information to the user in the app. Consider using this to provide instruction or clarification to the user as they fill out the field.

Formatting options for this property are the same as those given available for the Title Text property. 

Go to the top.



Layout & Styling



Field Layout

 

This drop-down determines how this field is shown on the screen.

 

  • Vertical places the Title and Hint vertically above the entry field.
    /var/folders/yf/4dbjhxmx3xx657c5cbgdx0kc0000gn/T/com.microsoft.Word/WebArchiveCopyPasteTempFiles/fNZFGXmNweX---9hKOLhmtiV1ng5naMh3Q.png?1616007014

 

  • Horizontal will stack the entry field to the right of the Title and Hint text.
    /var/folders/yf/4dbjhxmx3xx657c5cbgdx0kc0000gn/T/com.microsoft.Word/WebArchiveCopyPasteTempFiles/eSBClQSryiPADib3vux4NJ3l3GiA7BgGmg.png?1616007043

 

 

  • Horizontal (Tablets Only) will use Vertical layout for phones and Horizontal for tablets.

 

Background Color

The color chosen in the hex code field here will apply to the section field. The Transparent box can also be chosen instead for making this transparent instead of a solid color.

 

Go to the top.



Validation & Behavior

 

Required

 

Checking this box will enforce validation against this field to make the field required, disallowing the user from progressing to the next page or submitting the form if it is left blank. If the user tries, they will be prompted with an error to return to the field and enter a value. When this validation occurs is determined by the "Validation Property" chosen on the page level; please see this article for more detail on this.

 

 

This property can also be made conditional based on a formula. To enable this, click "add condition" below the checkbox and enter a formula into the field that populates. The formula serves as the basic of the required-ness of this field.

 

 

Please see this article for more information on conditionally-required fields.

 

Visibility

 

The contents of this field will determine whether the field will be visible to the user. For more detail on visibility rules, please see this article.

 

 

Dynamic Value

 

This property is used to define a calculation/formula that will populate the field's value. Often this is used in conjunction with the "Read Only" property (see below) so that the field will calculate and display to the user without the possibility of manual edits. This article is recommended as a starting point for more reading on this. 


 

Please see this article for details on the relationship between Default Value and Dynamic Value.

 

Read Only

 

If this checkbox is checked, users will be able to see the contents of the field but will be unable to make edits.

 

 

Similar to the Required property, the Read Only property also includes the ability to define a conditional formula determining whether the read-only property is enabled. Click "add condition" to define such a formula.

 

 

Custom Validation

 

Add your own custom formula to this property for validating numbers entered into this field by users. The formula is only applied when the field has an answer. Enforcement will be done according to the "Validation Property" chosen on the page level; please see this article for more detail on this.

 



Validation Message

The contents of this property will serve as a custom message to display to the user if their input fails validation.


Go to the top.


Advanced Options


Default Value

 

The value entered in this property serves as the initial value of the field prior to manual input. Please see this article for details on the relationship between Default Value and Dynamic Value.

 


Bind to Data Source Column

 

This property allows for the binding of the contents of the field to a data source that is linked to either a choices field or data field on the form. For details, please see the screenshot below:


  • The data source can be selected with this dropdown. More than one will be available if multiple data source control fields (choices fields or data fields) have been added to the form.
  • The data source control field can be selected from this dropdown. More than one will be available if multiple data source control fields for the same data source have been added to the form.
  • The column on the data source to be bound can be selected from this dropdown.

Data Source binding allows you to create forms that can load data from, and update data to, any given data source. This opens up amazing opportunities to have dynamic data that is updated on the move (e.g., adding contacts or clients). For more information, please see this article.



Bind to Global Value


Global Values are a local key/value store that is available to any Screen on the app. Use this property to allow the user to view and save defaults for use across the app (e.g., a default project or customer). Please see this article for more information.



Exclude from Export/Display

 

By default, every field is displayed on Form entries in the Data area, and is included in non-templated exports (e.g., generic pdf, CSV, spreadsheet, database connectors). Use this property to prevent this field from showing on all such display and exports.



Is Personal Data


As always, you can specific whether this field may contain personal data by checking the box for Is Personal Data.


Personal Data is selected indicates that data captured in this field may contain personal or sensitive data, which in turn can be anonymized when exported from the platform when then the "Anonymize Personal Data" option is checked on a form connector. Please see this article for more on this. 


NOTE: Use of this option does not grant or imply additional security, protection and privacy of data.


File Name

 


By default, the app will generate a date-based name for each file captured by the user. Use the File Name property to define your own file names using our template syntax for dynamic generation. The file extension is automatically added by the system based on the file type. Example below:


STOCK-{{mychoicefield}}-{(USERLASTNAME())}




Limit File Types

This property gives the screen designer the ability to limit file types and download from a URL. The file types and URL can also be data-driven; that is, their values can be driven by other fields in the form screen. 

Creating specific limits for file types can prevent a user from uploading something malicious, such as a .zip file containing viruses or other unwanted attachments.

Enter a comma separated list of file types to allow. If this field is left empty, then any file type supported by the device can be selected.


Download From URL

Instead of capturing the file from the device, the file is downloaded from the specified URL. This is useful for cases where other apps or external devices can provide files via a http:// or other URL scheme.


Note: You can use in app field references in your URL, e.g. http://{{otherField}}/getimage



Go to the top.