Appian Release Notes

Speed, style, and substance—Appian 18.2 is a spectacular release that proves once again you don't have to choose between simplicity or power. With Appian you can build robust, beautiful apps lightning fast. Check out the video below to see what life without compromise looks like.

Users

Wow your users with new and improved components, customization options, and more Sites capabilities.

Card Layout

Card layouts are one of the most popular design patterns for modern websites. Regardless of color, size, or style, cards are popular because they're flexible and enable simpler, more intuitive interactions. For those reasons, we're excited to be able to bring them to Appian with the new Card Layout component.

Cards can bring a dramatic clarity to interface organization and open up endless design possibilities. We've added cards to some of our interface templates so you can discover some easy design patterns you can use. Also be sure to check out the UX Style Guide discussion of this layout.

Web Content for Interfaces

Take your external, web-based systems, services, and content and display it easily in an Interface with the Web Content component.

This component offers a seamless, user experience with the simple addition of a URL, letting users view relevant data without having to open additional tabs.

If you've been experimenting with the preview version of the Web Content component we released in 18.1, you'll be happy to know we've added support for Microsoft Edge browsers. However, to protect users from how Safari and IE11 currently handle memory leak issues, the Web Content component will display as an inline link when viewed in those browsers.

Modern Record News in Sites and Embedded

Given the success of the Sites and Embedded user experiences, we've added new functionality we think you'll like. Users can now collaborate on record news while working in a Site or Embedded experience. This includes viewing record news with modern styling, adding comments, sharing news entries, and more.

For Sites specifically, designers will have the option to turn the news on or off for each Site individually. In addition, navigating to a user profile while in a Site shows all news associated with that user if the Site is configured to show News.

Custom Colors For Rich Text & Charts

Custom colors are here for Rich Text and Charts!

Sometimes you need just the right shade of red on a particular slice of a pie chart to match the adjacent graphic, or use the exact same purple as another company's logo for all the headers on a page talking about them. Whatever the situation, you can now set custom hex color codes on Rich Text, Charts, and Chart Reference Lines.

This doesn't replace our intent-based options, which let you build interfaces fast without having to worry if they're all styled the same. Nor does it replace our centralized branding that lets you apply your company logo and custom colors to everything at once. Custom colors is about giving you more options so you can do whatever you need to make something feel right.

Export to Excel for All Records

Export to Excel for entity-backed Records has been so well received that we've expanded it to support process-backed and expression-backed Records. Now all types of record lists can be exported to Excel with the click of a button.

For more information about how to get the most out of this feature, check out Optimizing Record Lists for Export to Excel.

New Selection Style for Grids

You can now configure grids to allow selection by row instead of checkboxes. The row-selection style highlights a selected grid row with the accent color when the user clicks anywhere on the row.

There's also new UX style guidance on when it's a better option to use grid row selection.

Add Divider in Sections

The more capabilities we added to create wide, dense Interfaces, the more we saw the need for more subtle forms of information organization. You can now set a dividing line to display either above or below a Section Layout to improve readability.

Connect Null Values in Line Charts

Connect the dots and provide more context for your Line Charts! You can now configure line charts to connect null values where continuity is more meaningful than highlighting gaps in data.

Autofocus for All Interactive Components

When you load an interface, typically the first interactive component will automatically take the focus, letting users start working right away. In this release, all interactive components can now receive autofocus. Specifically, these components can now receive focus: Date, Date and Time, Multi-Dropdown, File-Upload, and Pickers.

Users may notice that the initial field of focus for a given interface may have changed after update to 18.2.

Designers

We're committed to speeding up the time it takes to build apps; our CEO talks about it, and we even have a dedicated team called Design Accelerators. In this release, as with the previous releases, we've introduced a lot of really cool features that demonstrate our commitment to this principle.

Drag-and-Drop Interface Design

We’ve proudly bragged about how quickly you can build an interface in Appian compared to competing products, but with 18.2 we’ve taken a huge leap forward. Interface designers can now enjoy the speed and simplicity of drag and drop.

If you haven’t had a chance to see the video, we highly recommend it. We haven’t just made it so you can drag components from a palette onto a canvas—it’s a complete overhaul. We’ve polished the experience with tons of assistive features like clear visual indicators for borders, drag zones, target highlighting, and component-specific time savers, like buttons for adding or removing columns.

Check out this walk through on building Interfaces in Design Mode.

One Designer to Rule Them All

With every previous release, we’ve made progress in migrating the core functionality of the legacy /designer environment to Appian Designer so there could be a unified, modern, design space with all the bells and whistles. With this release, we reached our final milestone and brought over all remaining core functionality, thus leaving nothing behind!

If you were used to working in /designer, we added a page specifically to help you move forward by listing some of the common things you used to do and how to easily do them in Appian Designer.

Monitor Processes from Appian Designer

All the functionality of the Processes tab from /designer is now in the new and improved Monitoring view of Appian Designer!

There’s a lot to love here: better search and filters, toggle process details, and easy troubleshooting with the ability to view all process errors from one place!

You’ll also find the monitoring view available from within an application, showing only processes and errors relevant to that application so you can quickly get to the information you need while building apps.

Speaking of building apps, you’ll love the ability to take bulk actions when it comes to a huge number of running processes (multiple pages worth); when you select all processes on a page, you’ll get a helpful link to expand your selection to all matching processes. This makes cleaning up after testing easy.

If you want more information about all the capabilities, check out the Monitoring View page.

Cloud Logs and DB Access

Appian Cloud designers and system administrators can access their MySQL database or the system logs from convenient links in the navigation menu anywhere in Appian Designer.

Smart Object Renaming

As your design objects evolve over time, sometimes their original names don't make sense anymore. Or, maybe you want to implement a new object-naming convention, but you already have a lot of objects using the old one. Or, maybe there’s a small typo in the name that just bothers you every time you see it. In all of these cases, you now have the power to make a change.

Your eyes are not deceiving you—yes, you can now rename Interfaces. Actually, you can rename a whole host of design objects:

  • Interfaces
  • Expression Rules
  • Constants
  • Query Rules
  • Decisions
  • Integrations

And it's not just renaming the object; this feature also updates all references to that object to use the new name. Learn more about this feature here.

Easily Integrate Using Connected Systems Templates

Our initial motivation for creating Connected Systems was to make the process of working with other systems as easy as filling out a form, regardless of the complexities with the other services.

Artificial Intelligence (AI) and Machine Learning (ML) have been transformative technologies on everyone’s radar lately, and for good reason. However, while these technologies can deliver exceptional value, they’re notoriously difficult to integrate with business systems.

In this release of Appian, connecting to complex services is easy with Connected System templates. Connected System templates allow you to store much of the integration configurations. From this, the Connected System template will create a custom Integration UI tailor fit to the third-party service.

Artificial Intelligence and Machine Learning Templates

Digital transformation is moving at such a fast pace, modern applications really need to rely on AI & ML to assist users with more complex business requirements.

We’ve created three Connected System templates to the three most popular AI & ML services out there: Amazon Machine Learning, Microsoft Azure LUIS, and Google Cloud Natural Language.

Each template is customized to work with each service. This means that Integrations using the Connected System will also have custom template settings to control.

For example, using the Amazon Machine Learning (AML) template in an integration yields an Integration whose configurations are tailored for AML models.

We really feel this is the easiest method of connecting to Artificial Intelligence and Machine Learning services anywhere! To learn more about Connected Systems check out this page.

OpenAPI Connected Systems Template

Connected System templates aren’t just limited to AI & ML services. In this release, Appian supports the importing of an OpenAPI file as a Connected System template.

OpenAPI (formerly Swagger), is a method for standardizing APIs to make them both human and machine readable. With a new Connected System template, designers can import an OpenAPI document to inherit base URLs, authentication details, and a list of operations. This means that if the API is already defined, you shouldn't need to manually define it from scratch a second time.

Designers can then create Integrations from that Connected System. They can select from the available operations defined in the specification, and Appian will automatically generate the required parameters.

API Key Authentication in Connected Systems

Many third-party systems require an API key to connect to it. When API keys are used for authentication, they should be treated as a password. In this release, you can securely store and share your API keys via a Connected System.

Integration Improvements

In addition to the functionality that the new Connected Systems Templates bring to Integrations, we've added some important enhancements to the Integration object as well.

Send Documents Through Integrations

Sending documents to third-party systems like Google Drive, OneDrive, or SharePoint has never been easier. Integrations can now be used to send binary data and multipart/form-data requests. This is extremely important for customers using a third-party document management system.

Designers can now configure an Integration to send documents and other types of binary data, without the need for any additional plug-ins.

Save Test Values for Integrations

Write a test value once and use it over and over. You don't have to remember a valid set of test values to execute an Integration. Test values for Integrations can be saved like Expression Rules and Interfaces. And just like Expression Rules and Interfaces, these default values are stored with the object and can be exported into a test or staging environment.

Faster Application Design

Appian designers who’ve been around a while know how committed we are to speeding up the time it takes for you to develop an app, and in this release we're excited to announce a lot of fantastic new features that make it faster and easier to build apps.

Application Builder Basic Template

How long does it normally take you to create the first 20 objects of an Application? If it's more than 20 seconds, then you may want to consider starting with the Basic template in the Application Builder.

Instead of the 80+ objects created with the full template, the Basic template creates only the objects needed for a simple, record-centric application. As it doesn't include all the features of the Full template, like reporting and auditing, it can make for a much better starting option when your app isn't headed that way.

Expressible Default Filters for All Record Types

Designers can now leverage the power of expressions for default record filters on entity-back and process-backed Records!

the expression option with a neat expression. Maybe just the options? Does it really help to show a lot of code in our release notes?

Previously only available for expression-based Records, this allows you to define default filtering that isn't easily realized with a combination of field-based filters. Security is a great example; you may have a set of records for which certain types should only be visible to certain groups, but a user of any group should always be able to see the Records they created themselves. Using an expression makes this very simple.

You can read more about it here.

Bulk Export and Import of Patches Across Applications

In the 18.1 release, we made patches persist before and after export. Now you can deploy multiple patches faster than ever. The new Applications with Patches filter in the applications list in Appian Designer helps you quickly find the applications you’ve already built patches in. From there, you can select multiple applications to export your patches from in a single file!

There’s now a single Import option in the applications list that handles both applications and patches for multiple applications. On import, objects are added to the appropriate applications, depending on where they were patched from. This simplifies the import process and eliminates the need to import multiple patches in a particular order to manage cross-patch dependencies.

Automatic Rule Input Renaming

Whether it’s an Expression Rule, Interface, or Integration, now when you rename a rule input, all references to that rule input in your object will be updated automatically.

Maybe a gif? Maybe nothing here unless there’s a button to engage this. Could do an easy gif on MAD_GridFilters turning creator into author.

Easier Rich Text Styling

In this release we evolved the Styled Text component to allow users to add multiple styles to reduce the amount of time you spend configuring the component and simplifying the design.

Rich text item with multiple styles, and the value field with the array in them.

Along with this, we've introduced a new Heading Text component to help designers find the right tool for the job when building Interfaces.

Filter Applications and Objects by Who Last Modified Them

To make it easier for you to find applications and objects recently edited by you or your team, we’ve added a new filter for users: Last Modified By.

This filter is helpful when putting together patches, quickly navigating to your team’s work, or identifying Process Models last modified by a deactivated user that might need to be republished.

Better Performance

We’ve made the Objects view faster, which includes loading, searching, and filtering. This is significantly noticeable on systems with many versions of rules and documents.

Process Modeler Enhancements

In the spirit of making relevant information readily available, we’ve added the ability to see process instance details and errors directly from the Process Modeler.

Everything you used to see from the Process Details page is now available from the dialog so now you're just one click away.

Search the Process Modeler Palette

Appian now makes it even easier for you to find what you need in the Process Modeler. We have provided a search box located at the top of the Process Model palette. Just start typing the name of the node or smart service and then simply drag it onto your Process Model. Our Appian Engineers even had a contest to see who could build a Process Model faster: one team using the palette search and the other team using the traditional method. The team using the palette search were about twice as productive when creating processes!

Split Export to Excel/CSV Smart Service into Two

When we released our Export Data Store Entity to Excel/CSV Smart Service in 17.4 it was one of our most popular features for that release. We got a lot of great feedback about it, so we made it easier to configure by splitting it into two different smart services: Export Data Store Entity to CSV, and Export Data Store Entity to Excel.

Shortcuts

Shortcut keys save time. Ctrl/Command + S this section, because we've added some more keyboard shortcuts.

Keyboard Shortcut: Ctrl/Command + Click to open data types

If you see a type! prefix in your expression, you can use Ctrl/Command + Click to open the Data Type in a new window. This is especially useful if you need to refer to one of the Data Type fields.

Test Rule Shortcut

Designers can now use the Ctrl/Command + Enter shortcut to trigger the Test button on Expression Rules, Interfaces, Decisions, and Integrations. And when you do this in an Expression Rule, it runs all of your test cases.

New Keyboard Shortcut for Interfaces

Already a capability for Expression Rules, Decisions and Integrations, Ctrl/Command + I now lets you add a new rule input in Interfaces.

Rearranging Fields for Data Type Designer

Designers are now able to change the order of fields in their Data Types. Before this feature, designers would have to download the .xsd file to reorganize CDT fields. Now, as your Data Types change, the order of the CDT fields can change with it.

Better Constants

Three new features have been added to Constants, providing you with additional ways to leverage Appian's powerful expression language.

Environment Specific Email Address Constant

Constant of type Email Address can now have their values configured for different environments in the import customization file. Previously, only primitive data types were supported for import customization.

This gives designers the ability to use a test email address in Development and Test environments, while setting it to the desired email address in Production.

Get rid of CB's email address in above screenshot.

Create Constants for Connected Systems

Connected Systems can now be referenced as an object type in a Constant. You can now conditionally define a Connected System in an expression by calling it as a Constant.

Smart Defaults

Software should be smarter. We want to make sure that the things you would commonly do are already done for you. Given this, we've provided some feature that improve on our already smart application design.

Smart Default for Document and Process Report Save Location

Appian Designer now auto populates the Save In folder when creating Documents and Process Reports. Similar to what we do for rules, Constants, and Process Models, when you create a new Document or a Process Report, we'll take an educated guess on where you want to save it and suggest a default so you can create objects more quickly.

Smart Default Labels for Report Builder

The Report Builder now creates friendly label from data type fields. For example a field called, firstName will now have "First Name" as its label. Designer can still adjust the display name if they need to, but do not have to in many cases.

Appian Cloud

Sentiment Analysis: The Feeling Behind the Words

Wouldn't it be great if you could automatically flag potential customer satisfaction issues for further attention? Wouldn't it be even better if you could do this without the complexity of using a third-party natural language service provider?

Appian Cloud customers can now do this all with a new function, Sentiment Score. This function allows designers to analyze the sentiment of an US English text value and assign that text a range of scores between -1.0 (negative) and 1.0 (positive).

Attention Appian Cloud FedRAMP, HIPAA, or PCI-DSS customers: Use of the Sentiment Score function results in sending data outside of Appian Cloud's FedRAMP, HIPAA, or PCI-DSS in-scope service boundaries. Customers should use caution when using a!sentimentScore() with regulated data, and review for their own compliance requirements.

Bring Your Own Key (BYOK)

This feature is only available to Premier Support customers.

With the release of this functionality, customers can enjoy the multiple benefits of Appian Cloud while retaining control of the key used to secure the data stored in their Appian Cloud sites. Customers can have extra peace of mind knowing that they have more control over their data.

Appian Cloud sites can now use a key stored in a Hardware Security Module (HSM) hosted on the customer’s AWS Virtual Private Cloud to encrypt their data. The communication between Appian Cloud and the HSM is secured by an End-to-End encrypted connection.

With the introduction of BYOK, customers have decryption control of the disk that contains their data. For more information, please review Bring Your Own Key Setup Process in Appian Cloud.

Filtering Traffic Coming from Appian Cloud Based on Source IPs

Appian is now making the list of source IP addresses available so customers can filter incoming traffic from Appian Cloud into a third-party system or a system hosted on-premise. Please be sure to review the considerations and recommendations carefully when using this approach to manage web traffic: KB-1582.

Appian Cloud High-Availability Support Available in GovCloud Region

High availability is now available for Appian Cloud sites hosted in the GovCloud (US) hosting region. Customers with sites hosted in this region who wish to enable this capability should work with their Account Executive.

Support for New Asia Pacific (Tokyo) Region Available in Appian Cloud

Appian Cloud now supports hosting Appian Cloud sites in a new Asia Pacific region, Tokyo. Customers can use this region to better serve their users in and around Japan. Customers who need to host new sites in this region or wish to move their existing sites to this region should work with their Account Executive.

New JDBC Driver for MySQL

Version 5.1.46 is the new JDBC driver used in Appian Cloud to connect to MySQL databases.

Please review the following documentation from MySQL to learn more about the changes introduced in newer versions of this JDBC driver:

https://dev.mysql.com/doc/relnotes/connector-j/5.1/en/news-5-1-45.html https://dev.mysql.com/doc/relnotes/connector-j/5.1/en/news-5-1-46.html

We recommend reviewing these documents and update any incompatible query syntax you might be using in your applications. This can be completed before being converted to our latest release to avoid any problems.

Server Administrator

The following new features are available for server administrators in 18.2.

Appian on Docker

Administrators can now containerize on-premise installations of Appian using Docker. Using MySQL and JBoss, Administrators can create a set of containers, which Docker can run in a single, easy to manage package.

We've provided a Docker tools file, which consists of all of the necessary configuration files needed to run Appian in a container along with an easy to follow guide.

For this release, Appian on Docker is not supported for high availability, distributed, or production environments.

More Execution Engines

The maximum number of execution engines has increased from 16 to 32. This means that more CPUs can be used to execute processes. While most instances of Appian only require 3 process execution engines, we want to make sure that Appian scales with any organization's growth.

Secure Cookies

Appian no longer requires you to modify the web.xml file to change cookie security when performing a local installation, thus simplifying the install and update process.

Updated Expressions Trace Logging

The expressions_trace.csv performance log has been updated to include the user who evaluated the logged expression and the thread where the evaluation occurred.

Resolved Issues

This release resolves the issues listed below. To assist you in your migration planning, issue severity is listed for each item. The values of high, medium, and low are based on the criteria of system availability, system integrity, and confidentiality. Use this information, along with how you use Appian, to evaluate the applicability of this version to your deployment.

AN-100747, AN-63987, AN-78881 - Medium - Process timers that were configured to fire after a certain number of months now fire at the specified time rather than many years in the future.

AN-104914 - Medium - Certain read-only data types no longer display a link to view them that results in an error.

AN-58141 - Medium - When a process variable is an array that contains a null value, the variable will display correctly.

AN-103118 - Medium - The performance of the all objects view and some searches has been improved on systems with many versions of rules and documents.

AN-98543 - Low - The text function now correctly formats decimal numbers greater than 2147483647.

AN-98543 - Low - When a user deletes the rule input type in an expression rule, they are now considered to be editing the rule and see an asterisk in the tab title indicating that the rule is being modified. Previously, the user was not considered to be editing until they entered a new rule input type.

AN-100766 - Low - Rich text with secondary styling now meets color contrast requirements.

AN-102340 - Low - Rich text links nested in bold styling now render correctly in Tempo.

AN-98887 - Low - A race condition that could occur when starting engines after resetting analytics has been resolved.

AN-103429 - Low - The default value for OLD_PATH_MWS in the change-paths script has been updated to expect migrating from a recent Appian version.

AN-98083 - Low - Importing a data type no longer updates the Last Modified information of any dependent data types that exist in the target environment, but not in the package.

AN-65972 - Low - File names on the Export Application and Export Patch dialogs must now contain more than whitespace and must be 255 characters or less in length.

AN-100141 - Low - Processes that are in the Paused by Exception state can now be resumed from the modeler.

AN-102572 - Low -The performance of using the object type filters in the All Objects view in Appian Designer has been improved.

AN-103752 - Low - The Missing Precedents dialog no longer fails to open if there are a large number of missing precedents in an application.

AN-104637 - Medium - The data collection for the Expression Rule Test Cases data metrics log is significantly faster.

Deprecations

The features listed below are deprecated and will be removed in a future release of Appian. Do not begin using deprecated features, and transition away from any prior usage of now deprecated features. Where applicable, supported alternatives are described for each deprecation.

Export Data Store Entity to Excel/CSV Smart Service

The Export Data Store Entity to Excel/CSV Smart Service has been deprecated in favor of two new smart services. Use one of the following Smart Services instead:

  1. NEW: Export Data Store Entity to CSV
  2. NEW: Export Data Store Entity to Excel

Removals

The following features have been removed from Appian and are no longer available for use. If you are using any of these features, you must move away from their use before updating to this version.

Legacy Designer Environment

All core functionality of /designer has been moved to modern Appian Designer. For information about going from /designer to Appian Designer, see how to do the things now. The following is a list of functionality that was not moved due to lack of relevance:

  • Viewing process model and process instance dashboards in the design environment.
    • Dashboards can still be viewed in your portal applications.
  • Creating new custom dashboards for process models and process instances.
  • Browsing Content Categories for Department pages.
  • “My Start Page” for /designer Home tab.
  • Portal Start Page from System tab.
  • Primary Navigation page from System tab.
  • Real Time Monitor page in System tab.
  • "Views" option on process reports for graph configurations.
  • "Email" option on process reports to send a link to the report to an Appian user.
    • Users can simply share the URL directly.

Evolved Functions

The following functions or components have newer, improved versions in this release. Existing, old versions of these components in your applications will continue to function normally, but will be renamed on update to indicate that they are older versions. As always, make sure you are using the right version of the docs for your version of Appian. See Function and Component Versions for more information.

Rich Text Item

a!richTextItem_r181()

  • New version allows for multiple styles to be applied to a single component.

Cancel Process

a!cancelProcess_17r3()

Behavior Changes

This release changes the following behaviors.

Autofocus Change

With more supported auto-focus components, the autofocus behavior of some Interfaces may change after update to 18.2. This will occur if a previously-unsupported component is located before another component. In this case, users may notice that the initial component of focus has changed for that Interface.

Option menu.

Process Calendar

The Process Calendar can now be found from the settings menu of the Objects View.

conf Directory Moved

The <APPIAN_HOME>/ear/suite.ear/conf directory has been moved to a top-level directory. Administrators can now find configuration files in <APPIAN_HOME>/conf.

Missing Precedent Groups Required on Import

Previously group references in object security role maps were removed on import. Now they are treated like any other missing precedent. This only applies to applications and patches created on Appian 18.2 and higher.

Note: Missing groups referenced as members of other groups will continue to be ignored on inspect and import.

Monthly Process Timers

Process timers configured to fire on a monthly basis now fire at the configured time. Previously they would fire many years in the future. If you have a process or process model with a monthly timer that was previously not firing, it will start doing so.

Starting a Process Node

When a user starts a process node manually or via the API startTasks(), existing instances of the node that are in the Paused by Exception state because of a node error will be canceled and their corresponding errors resolved.

Previously, the existing instances and their errors were not affected. The resolved indicator for a process error is new - this allows us to show you only the errors that need your attention. When errors first occur, they're set as unresolved. They become resolved when certain events happen, such as the process being completed or canceled.

Resuming a “Paused by Exception” Process

Processes in the Paused by Exception state are now able to be resumed from the process modeler. Their status is now correctly identified via the API getProcessDiagram(); previously, these processes would be incorrectly identified as Active instead of Paused by Exception.

This sounds like a resolved issue, as we've corrected a misbehavior.

Viewing Process Instances in the Process Modeler

Previously, only Process Administrators could view a process instance in monitoring mode in the Process Modeler. Now users with viewer, manager, and editor privileges can view process instances in the modeler, mirroring the access that these roles had for Process Models themselves. This allows these users to view the process errors for a process instance and the information in the Process Details dialog. Users in these roles still cannot perform any actions that they previously weren't allowed to do based on their privileges.

Stricter Rule Domain Validation

Previously, if a rule was called in a process model with an incorrect domain (e.g., rle!myRule()), Appian would assume it was the rule! domain. In 18.2, this will now produce an error consistent to when this type of expression is called in other parts of the system (e.g., reports, record views).

FEEDBACK