Below is a list of available column data types that you can use when structuring your columns.
See also: Change a column type
- Change types
- Communication types
- Content types
- Enumerated types
- Mappable types
- Numeric types
- Show types
- Temporal types
- Text types
- Other types
Change types
Use change types to do the following:
- Track changes made through an app: Track counter, location, and timestamp for changes that are made through an app.
- Track changes made to a row in an AppSheet database: Track the timestamp for changes that are made to a row in an AppSheet database through the AppSheet database editor or the app.
Track changes made through an app
In some apps, it's important to record a timestamp or increment a counter automatically in a row when changes are made to other columns, and even values within the columns, through the app. The following change types are available to track changes made through an app:
ChangeCounter
: shows how many times an entry has been edited.ChangeLocation
: will automatically populate with the current GPS location (where the change was made).ChangeTimestamp
: shows when an entry was last edited.Note: If the app is offline at the time the change is made,ChangeTimestamp
stores the time of the change, not the time the app is synced.
By default, change types automatically update when any other column value changes. However, they can be constrained to react to changes only on specific other columns. Change types can also be constrained to react to changes to certain values.
See Track app changes using change column types.
Track changes made to a row in an AppSheet database
The Update row timestamp
column data type specifies the last time data in a row of an AppSheet database was changed through the AppSheet database editor or the app. The value is displayed using the local timezone and is read-only.
Update row timestamp
column data type shouldn't be confused with the Change Timestamp
column type, which tracks changes made through the app only and displays them using the user-specified time zone.Communication types
Values of these types can be tapped to launch communication.
Email
: an email address, giving you the ability to send emails by clicking the email address. See also Set up email auto-completion for Email columns.Phone
: a phone number, giving you the option to both call and SMS text through the app. AppSheet only automatically recognizes phone numbers in North American format.
Content types
Values of these types are shown as inline content or open in an external content viewer.
Drawing
: creates a drawing pad in the app.Image
:.jpg
, .png
and.gif
images. The values may be image URLs or names of files in the source file system of the spreadsheet. See Display images and documents. Images are captured on the device using the camera or from the local camera roll.Thumbnail
: also models images, but instructs the app to expect small icons and thumbnails. Thumbnails are captured just like images.Signature
: a user signature. These are captured using a touch-based signature pad and are stored as small inline images in the spreadsheet.File
: any file content (typically used for PDF documents). Capture of files is only supported when running in a browser. In app environments, it is read-only.Video
:.mpeg
videos and YouTube videos. The values should be publicly accessible URLs of videos. The YouTube embed URL format is also supported. Capture of video is not supported.
Enumerated types
Columns of these types are constrained to having one of a fixed list of allowed values.
Color
: Color code entries in your app with a subset of standard colors:Black
,Blue
,Green
,Orange
,Purple
,Red
,Yellow
, andWhite
.Enum
: Allows the user to select a single value from a list of allowed values. See also: Drop-downs in formsEnumList
: Identical toEnum
except it allows the user to select multiple values from a list of allowed values. See also: Drop-downs in formsList
: Collection of zero or more values; supported for virtual columns only.-
Progress
: A system-definedEnum
that can be used to record the progress for a project. It can be assigned any one of the following values:Empty
,Quarter
(orOne Quarter
),Half
,Three Quarter
(orThree Quarters
), andFull
The state of progress is depicted graphically using Harvey balls.
TheProgress Enum
type is commonly used for applications based on Smartsheet worksheets. Smartsheet worksheets support aProgress
column type. When you create an AppSheet application from a Smartsheet worksheet containing aProgress
column, AppSheet creates aProgress Enum
type in your AppSheet application that corresponds with the SmartsheetProgress
column.
Although, theProgress Enum
type was originally added to support SmartsheetProgress
columns. you can include aProgress Enum
type in any table for any data provider.
See how theProgress
function works in the Marketing Projects sample. Ref
: are used to create relationships between one record and another. See also: References between tables.Yes/No:
also known as a Boolean data type.
Mappable types
In the app, values of these types can be seen on a map.
-
Address
: a fully-specified postal or street address. -
LatLong
: a latitude and longitude (such as48.5564, -122.3421
). Form fields for this data type can fill in the current location with a single click. For an example of usingLatLong
, see the Calculate distances sample app. -
XY
: models a location inside an image, such as a location on a custom map or schematic.XY
is a comma-separated pair of values, specified without parentheses, that define the X axis and Y axis position within the selected image. For example,0, 0
corresponds to the top-left corner and100, 100
the bottom-right corner. You choose the background image by providing a URL in the Background image for the XY coordinates setting for the column; this image is then used as the background for the map view when viewingXY
column values. The image must be public (anyone with the link can view) for the map to be displayed.
Simple address field
You can specify a complete address in a single worksheet column.
Include the word "Address" in the column name to help AppSheet identify the address column. For example, you could name the column Address
or Customer Address
.
Enter the complete address including the street, city, state, country and postal code values. This helps ensure the address geo-codes correctly.
You can include two or more addresses in the same worksheet. For example, your worksheet might contain a Billing Address
in one column and a Shipping Address
in another column.
Automatically-computed address field
You can store address information in AppSheet by creating adjacent columns in your worksheet and naming them appropriately. When you do this, AppSheet automatically recognizes the adjacent columns form an address.
For example, you can create adjacent columns in your worksheet, and name them Street
, City
, State
, Country
, Zip
. In this case, AppSheet will recognize that, taken together, these columns represent an address and it will create a Computed Address
column that concatenates the values in the component columns.
Do not specify a column name containing the word "Address" in place of "Street". AppSheet interprets any column name containing the word "Address" to mean the column contains an entire address. For example, a column name such as Street Address
or Home Address
is assumed to contain an entire address. This will prevent adjacent fields from being recognized as a multi-part address.
If you need two (or more) lines of street information, use Street1
and Street2
rather than just Street
.
You can include an apartment, suite, or unit number in your address by adding a column between Street
and City
named Apartment
, Apt
, Suite
, or Unit
. If you do this, ensure that the data values you enter in this column are legitimate apartment, suite, or unit numbers. These values are included when computing the geo-coded address. If you enter illegitimate apartment, suite, or unit number values such as "around the back" this may reduce the accuracy of the geo-coded address.
If you need to store other information with the address, such as "around the back", create a separate column following the address to contain this information. For example, you might call this column Delivery Notes
.
You may use Province
in place of State
.
You can omit Country
, but this may reduce the accuracy of the geo-coded address.
You may use PostalCode
or ZipCode
in place of Zip
.
You can include two or more addresses in the same worksheet. For example, your worksheet might contain both a Home Address
and a Work Address
. AppSheet recognizes the two addresses based upon a combination of naming and adjacency. Keep the Home Address
columns adjacent to one another and likewise for the Work Address
columns. Then name the columns to help AppSheet group them appropriately. For example, you might name the adjacent home address columns Home Street
, Home City
, Home State
, Home Country
, Home Zip
. You might name the adjacent work address columns Work Street1
, Work Street2
, Work City
, Work State
, Work Country
, Work Zip
.
You can use this approach to include three or more addresses in your worksheet.
Manually-computed address field
You can populate an address column by manually combining the values of two or more columns.
- In your worksheet create a column and include "Address" in the column's name. For example, you might call the column
Customer Address
. - In the app editor, add the worksheet as a table.
- Go to the Data > Column Structure tab. Ensure the
Customer Address
column has a type ofAddress
. - Assign the column an app formula such as
CONCATENATE([Calle], ",", [Ciudad], ",", [Estado], ",", [Pais], ",", [Postal])
, where the column names in theCONCATENATE()
function represent the names of the street, city, state, country, and postal code columns.
Numeric types
Values of these types can be graphed and used in mathematical operations.
Decimal
: a real number; a number with a fractional component; a floating-point number.Number
: a whole number; an integer. Internally, the value is stored as a 54-bit integer, allowing a range of -2^53 to 2^53.Note: AppSheet databases storeNumber
values as 64-bit integers, but AppSheet converts them to 32-bit integer when displayed in an app.Percent
: aDecimal
value representing a percentage. 0% is stored as0.00
; 100% is stored as1.00
.Price
: aDecimal
representing a currency value.
Show types
Show
types are empty columns in your spreadsheet that serve the sole purpose of improving the presentation of data capture forms and detail views. For more information, see Improve the presentation of detail and form views using Show types.
Show
type columns are only permitted in form views. To include Show
type columns in detail views, enable Include Show columns in detail views on the UX > Options pane in the Detail View section.Temporal types
These values are shown using the timezone and presentation format of the user's device.
Date
: a specific year, month, and day.DateTime
: a specific year, month, day, hour, minute, and second.Duration
: a period of time as a number of hours, minutes, and seconds.Time
: a specific hour, minute, and second without regard to the date.
Text types
LongText
: one or more lines of text.Name
: aText
value representing the name of a person or place.Text
: a single line of text.
LongText
app creators can choose to render Markdown or HTML in detail views. For more information about how to use this feature and the formatting tags that are supported, see Rich Text Formatting - in Preview Program.Other types
-
URL
: a web address. There are two parts to a URL value: a hyperlink address likehttp://en.wikipedia.org
and an optional hyperlink text likeClick here to visit Wikipedia
. If you wish to specify the hyperlink text value of the URL field, set its Content property to a fully qualified URL in the Data > Columns tab of the Editor. To set its display text, change the expression for the Display on the attribute.
-
App
: navigate to another AppSheet app or to navigate to a different view in the current app -
Multi Column Key
: a composite field representing the combination of multiple fields for the purpose of a key.