App column type (deep link)

The App column type is used to navigate to a different view in the current app or to another app. The value in an App  column must be a deep link.

Note: In addition to being a normal column, App columns can be used with app launchers and app actions.

A deep link is a special text value that follows a particular format. There are two ways to create a deep link:

Get started

Learn how to deep link to a view in another app using LINKTOVIEW() by using the Change view on row selection feature sample. This sample defines an action called Change View that uses the LINKTOVIEW() function to change the current view based on the View Name column in the Views table.

AppSheet provides helper expressions to create deep links.

Link to an app:

  • LINKTOAPP("MyApp-123") navigates to app MyApp-123 and displays its default starting view.

Link to a view in the current app:

  • LINKTOVIEW("New Orders") navigates to the New Orders view in the current app.

Linking to a particular view in another app:

  • LINKTOVIEW("Other New Orders", "MyOtherApp-123") navigates to app MyOtherApp-123 and displays the Other New Orders view.

Linking to the parent view in the current app:

  • LINKTOPARENTVIEW() navigates to the parent view in the current app.

Linking to a particular view and row in the current app:

  • LINKTOROW("order456", "Order Details") navigates to the Order Details view in the current app for the row having key order456.

  • LINKTOROW([Order Detail ID], "Order Details") navigates to the Order Details view in the current app for the row with the key value contained in [Order Detail ID].

Linking to a particular view and row in another app:

  • LINKTOROW("order456", "Other Order Details", "MyOtherApp-123") navigates to app MyOtherApp-123 and displays the Other Order Details view for the row with key order456.

  • LINKTOROW([Order Detail ID], "Other Order Details", "MyOtherApp-123") navigates to app MyOtherApp-123 and displays the Other Order Details view for the row with the key value contained in field [Order Detail ID].

Linking to a form with pre-filled values in the current app:

  • LINKTOFORM("New Order", "Store", "Main Warehouse", "Type", "Wholesale") navigates to the New Order form in the current app. It pre-fills the [Store] column with the value Main Warehouse and the [Type] column with the value Wholesale. You can include any number of column name-column value pairs in the function.

Linking to a form with pre-filled values in another app:

  • LINKTOFORM("Other New Order", "Store", "Main Warehouse", "Type", "Wholesale", "MyOtherApp-123") navigates to app MyOtherApp-123 and displays the Other New Order form. It pre-fills the [Store] column with the value Main Warehouse and the [Type] column with the value Wholesale. You can include any number of column name-column value pairs in the function.

Linking to a view with filtered values:

  • LINKTOFILTEREDVIEW("Order View", [Order Status] = Open) navigates to the Order View and displays Orders whose Order Status is Open. The second argument to LINKTOFILTEREDVIEW() is a filter expression over the rows in the view. This is similar to the filter in SELECT() expressions.

  • LINKTOFILTEREDVIEW("Customers Table View", AND([Sales Rep] = [_THISROW].[Sales Rep Id], [Priority] = High)) navigates to the Customers Table View and displays high-priority customers associated with the current sales rep.

  • LINKTOFILTEREDVIEW("Students Table View", [Age] < [_THISROW].[Age]) navigates to the Students Table View and display students having ages younger than the current student.

You can manually construct deep links.

App name

Your deep link can specify the app name. When no app name is specified, the current app name is assumed.

The app name is defined by the appName query parameter in the app URL when viewing the app in the editor or accessing the app in your desktop browser. (It is not equivalent to the Short Name of the app defined in Settings.) For example, in the following app URL the app name is ShiftManagement-3518598:
https://www.appsheet.com/template/AppDef?appName=ShiftManagement-3518598&appId=58bb9fcc-b701-462a-87fd-34129fe8fcba&quickStart=False#Data.Columns.Admin%20Scheduled%20Shift

Link parameters

Your deep link can control which view and row is displayed by specifying optional link parameters following a # symbol. Link parameters are separated using the & symbol. The following link parameters are supported:

  • view (formerly control)
    If any link parameters are specified, this parameter is required. It specifies the name of the UX view to be displayed.

  • row
    This parameter is required for some views and is optional for others. It specifies the key of the row to be displayed.

  • mapcolumn
    This parameter is used for Map view controls. It specifies the name of the Address or LatLong column on which the Map view is based.

  • at
    This parameter specifies a timestamp and is used to require the data be at least as fresh as that timestamp. The most common use for this parameter is in sending a workflow email, SMS, or push notification with a link to a particular data entry in the app. This can force the app to sync to pick up the data change rather than work with stale data.

Format tips

Whitespace or other HTTP special characters in a deep link must be URL-encoded using the ENCODEURL() expression.

A deep link is a text value, not an app expression. The link must be enclosed in quotes.

Examples

Link to an app:

  • "MyApp-123" navigates to app MyApp-123 and displays its default starting view.

Link to a view in the current app:

  • "#view=New Orders" navigates to the New Orders view in the current app.

Link to a view in another app:

  • "MyOtherApp-123#view=Other New Orders" navigates to app MyOtherApp-123 and displays the Other New Orders view.

Linking to a view and row in the current app:

  • "#view=Order Details&row=order456" navigates to the Order Details view in the current app and displays the row with key order456.

  • CONCATENATE("#view=Order Details&row=", ENCODEURL([Order Detail ID])) navigates to the Order Details view in the current app and displays the row with the key value contained in [Order Detail ID].

Link to a particular view and row in another app:

  • "MyOtherApp-123#view=Other Order Details&row=order456" navigates to app MyOtherApp-123 and display the Other Order Details view for the row with key order456.

  • CONCATENATE("MyOtherApp-123#view=Other Order Details&row=", ENCODEURL([Order Detail ID])) navigates to app MyOtherApp-123 and display the Other Order Details view for the row with the key value contained in field [Order Detail ID].

Link to an app and force a sync:

  • CONCATENATE("MyApp-123#at=", ENCODEURL(NOW()+1)) navigates to app MyApp-123, forces a sync, and displays its default starting view.
Was this helpful?
How can we improve it?

Need more help?

Try these next steps:

Search
Clear search
Close search
Google apps
Main menu
16832807058000984380
true
Search Help Center
true
true
true
false
false