Import and Export Applications

Overview

This page will walk you through how to export an application from one environment, and import it into another.

Exporting an application compresses it and its associated objects into a package that can be imported on other environments. This is typically done to move work from a development environment into a staging or production environment.

The links between related objects in the application are preserved when importing, but related objects are not exported by default unless they are already in the application. Appian Designer allows you to scan for missing precedents and add them to your application before export to ensure that your work functions properly when imported into a new environment.

Both export and import create an event in News Feed. For imports, this event has the import log attached. Events for exports have both the export log and the exported package attached. By default, the user performing the export or import is the only viewer of the post, but they can add other users to it to share the logs or export package.

Applications that contain many objects may take a long time to export. You can navigate away or log out while the export is in progress, and the event will appear in the News Feed when the export is completed.

To combine multiple applications into the same export package, select all the applications from the applications list that you want to export together. These applications must all be on the same page of the applications list.

Deploying applications is covered in detail here.

Check for Missing Precedents

A precedent is any object that an object relies on to function properly. For deployment to another environment to be successful, all precedents of application objects must either be exported with the application, or already be present on the target environment.

The missing precedents dialog allows you to scan the application for referenced objects that are used by the application, but not associated with the application. An initial scan is performed when the dialog is first opened. From the list of missing precedents, designers can add objects to the application, and run another scan. The Referenced By column in the grid displays the object or objects that require each of the missing precedents, so that designers can tell why the missing precedent appears on the list.

Missing Precedents

Not all missing precedents need to be added to the application. Objects in related applications are deployed with those applications, and do not need to be added even though they are precedents of objects in this application. To narrow the list to only precedents that need to be added, use the filter options below the grid:

  1. Below the grid, click the link. If none of the missing precedents in the list are in any other application, the link does not appear, because there is nothing to filter by.
  2. A list of applications displays. These are all the applications that one or more of the missing precedents belong to.
  3. Check the box for an application to hide all missing precedents associated with that application.
  4. Click the Save current filter selection link to save the current filters to the application. Any designer viewing the application sees the same filters, and they are exported and imported with the application. Application filters saved here never cause export or import errors.

Missing Precedents Filter

Only save a filter option when the corresponding application will be kept up to date in all environments. For example, any missing precedents from your Common Objects Application should not be added to this application, as the Common Objects Application is intended as a library that other applications can use. Saving that application as a missing precedents filter ensures that you do not accidentally add its objects to your applications.

Selecting all the applications in the list shows only missing precedents that are in no applications. These should always be added to your application, or moved to another application. Setting up these filters correctly allows a designer to confidently add all remaining missing precedents to the application.

Exceptions

The following items are not identified as missing precedents during a scan of your application. Make sure to add these manually.

Export/Import an application

The following steps will walk you through how to export and import an application.

  1. Once you check that your application objects aren't missing any dependents. Select the application in Appian Designer.
  2. Click the Export button and click the Export button on the confirmation dialog.
  3. The application will automatically download to your local machine.
  4. You can import an application into another environment in Appian Designer by clicking the Import button and uploading your application zip file. Make sure to click the Inspect button before importing your application to check for any missing object precedents or dependents.
  5. Create import customization files to make your application deployment more efficient.

Application Patching

Designers create patches to deploy updates for existing applications. A patch is a collection of application objects, exported and imported from inside the application to modify it directly. Patches are used to enhance existing business solutions without creating new applications, and may include bug fixes, enhancements, or new application objects.

Create Patch

It's best practice to build patches incrementally, so you don't spend additional time finding objects when you do decide to deploy.

  1. As soon as you save changes to an object, select the object from the application view.
    • If you don't see the object in your application, run Missing Precedents, add it to the application, and select it.
  2. Click the Add to Patch button.
  3. The Export Patch button appears and displays the current number of objects in your patch. Patch contents persist even when you navigate out of the application or log out.

Export Patch

When you are ready to export, click the Export Patch button in the header to review your patch. From here, you can remove objects and rename your patch package. The Clear Patch Contents button allows you to clear the entire patch and start over. You'll also see a checkbox to Keep patch contents after export, which is checked by default. Unchecking it will clear patch contents on export; the objects will remain a part of your application. Export Patch Exporting a patch posts an entry to the News feed just as exporting an application does. Only the author and the entry participants can see the entry.

Import Patch

On your target environment, navigate to the application you are patching and click the Import Patch button. Once you upload the patch, you can click the Inspect button to check for any conflicted objects before you import. When you’re ready to proceed, hit Import. Importing your patch package here adds the objects directly to this application.

Importing a patch using the Import Application option does not throw an error. The objects are added to the system, but are not added to any application. If this is done accidentally, re-import the patch inside the correct application.

Importing an application using the Import Patch option does not throw an error. The application is added to the system as normal, but all of its objects are also added to the application you patched. You can remove them by selecting the objects imported with the patch and using the Remove from App option in the toolbar.

Bulk Export and Import Patches Across Applications

You can export and import multiple patches in one single step from the applications list view.

The Applications with Patches filter on the left-hand pane helps you quickly find the applications you’ve already built patches in. You can then select multiple applications to export your patches from in a single file.

The Import option in the applications list handles both applications and patches for multiple applications. When you import a file that contains multiple patches, objects are added to the appropriate applications, depending on where they were patched from.

Export Patch

FEEDBACK