Appian Release Notes
Changes to the Intelligent Contact Center can be found here.

User

We've improved usability, style, accessibility, and added cool new functionality so you can provide an even better user experience.

Record List Action

Performing actions on records is now easier than ever. Users can now launch an action right from a record list. You no longer have to navigate away from the page, so you can get work done faster.

Frozen Grid Headers and Grid Heights

Appian now gives you more control over the look and feel of grids with a new height parameter. Setting a height freezes the header and footer and allows large grids to take up a fixed amount of space, which is especially useful for grids that might be viewed on smaller screens.

Easily Navigate to Sites on Mobile

Users can now view and navigate to sites they have access to right from their mobile device. You no longer have to find URLs or set up multiple accounts. All the sites you need are right there at your fingertips.

Box Layout Collapsibility

Box Layout is one of our most popular components for organizing content, and in this release we've made it more flexible with collapsibility so you can use it however best suits your design.

Margin Below for Side-by-Side Layout

Appian now gives you more control over your layouts so you can create denser interfaces without wasting space. Like sections, columns, boxes, cards, and billboards, you can specify the amount of space below the side by side layout.

More Accessible Grids

Make your grids and applications 508 compliant and more accessible. We've added a new parameter on gridField, gridLayout, and record grids that allow screen readers to properly identify a cell's row title and read it out to a user.

More Style for the Tempo Menu

We've improved the styling of the Tempo menu so it looks as nice as Sites. Even though this is a small change, we wanted to bring you more consistency and clarity across all your work spaces.

Designer

In this release, we're making it even faster and easier to build applications by enabling you, the Designer, to work faster, with immediate access to important information, smart, easy-to-configure tools, and loads of time savers—because every click counts.

A Better Query

We're giving more love to our queries in this release, and the newly-evolved query entity is more capable, performant, and intuitive.

Extended Capability: Group by Year and Month

We've added the groupingFunction parameter to a!queryAggregationColumn. Using this feature, you could take any record that has a date field and easily create a monthly or yearly report out of it. This means you can set up your query right from the data source without fiddling around with database views.

Better Performance: Fetch Total Count

Getting the total count of rows for your query adds a little time to the query, especially for large database views, and you don't usually need that number. So, we turned it off by default, and added a new parameter,totalCount, to the new version of a!queryEntity() so you can turn it on only when you need it.

Easy Configuration: Conditional Filters

We've also added an applyWhen parameter to a!queryFilter. Now you can limit when your filters apply without needing to wrap them in conditional logic. This removes the need to create any dummy filters and creates a much simpler design.

18.3 18.4
a!queryEntity(
  entity: cons!SALES_DATA_DSE,
  query: a!query(
    logicalExpression: a!queryLogicalExpression(
      operator: "AND",
      filters: {
-       a!queryFilter(
-         field: "id",
-         operator: "not null"
-       ),
-       if(local!applyFilter<>3,
          a!queryFilter(
            field: "status",
            operator: "=",
            value: local!statusSelection,
+           applyWhen: local!applyFilter<>3
          ),
-         {}
-       ),
-        if(local!applyFilter<>2,
          a!queryFilter(
            field: "productcode",
            operator: "=",
            value: local!productCodeSelection,
+           applyWhen: local!applyFilter<>2
          ),
-         {}
-     )
      }
    ),
    pagingInfo: local!pagingInfo
  )
)
a!queryEntity(
  entity: cons!SALES_DATA_DSE,
  query: a!query(
    logicalExpression: a!queryLogicalExpression(
      operator: "AND",
      filters: {
          a!queryFilter(
            field: "status",
            operator: "=",
            value: local!statusSelection,
            applyWhen: local!applyFilter<>3
          ),
          a!queryFilter(
            field: "productcode",
            operator: "=",
            value: local!productCodeSelection,
            applyWhen: local!applyFilter<>2
          )
      }
    ),
    pagingInfo: local!pagingInfo
  )
)

Compare Versions for More Objects

As promised, we are continuing our mission to provide version comparisons and enable designer collaboration. Designers can now enjoy easier peer reviews and troubleshooting by comparing different versions for four more object types: Constants, Web APIs, HTTP Integrations, and Documents.

When comparing objects, we've also collapsed sections that have no changes by default so you can review a little faster.

Appian Designer Experience

This release includes targeted enhancements that improve how you work in Appian Designer.

Search options are now more readily available on all views across Appian Designer. You can now immediately choose your search type, rather than wait for your initial search to finish first.

Hierarchical View

Designers can now see the hierarchical view in both their Objects and Application Contents view. This view only displays top-level objects so Designers have a simple way to navigate their objects in an application or environment. Browse your objects easily and focus on the objects you need.

No Wait for Objects View

In this release, the list of all objects in your system doesn't load when you open the Objects View in Designer; they now only load when you initiate a search or filter. This simple, but effective change is a boon to users working in systems with a lot of objects, as the overwhelming majority of users go to the Objects View to search and filter.

If you ever go to the Objects View to check recently modified objects, you can quickly use a date-range search to find what you're looking for straight away.

Enhanced Interface Design Tools

Building an interface in Appian is fast and easy, but we never stop looking at ways to make it even better. This release packs in a ton of improvements and new features that take it to the next level.

Component Patterns

With every release, designing beautiful, dense, and impactful interfaces in Appian keeps getting faster and easier, and this release is no exception. We recognized that there are particular combinations of components that are very popular, like a Key Performance Indicator (KPI), which is a combination of a Card Layout with a nested Rich Text Component, with a large-style sub-component, etc. Wouldn’t it be nice to be able to just drag that combination of components from the palette directly into your interface? Well, now you can with Component Patterns!

Patterns are like templates for common, component combinations. Not only do they show off best practices in UX, they also follow our best practices for expression design, and many of them include basic behavior like paging and filtering. They also include sample data to best illustrate how to incorporate them into your interfaces.

More Desktop Size Options for Form-Factor Preview

The Form-Factor Preview now has size options to match every Site page width, so you can see exactly what you’re going to get without leaving the Designer experience.

Simpler Side-by-Side Navigation

Working with the Side-by-Side Layout got a lot easier navigate and configure, as Side-by-Side items will now show their child-component configurations in the configuration pane, and show the component labels in the navigation pane.

Better Button Drops

We brought the smart handling of dropping columns onto an interface to buttons as well. Now when you drop a button into your interface, we automatically put it within a button array layout, and when you remove the last button in a button array layout, we delete the layout as well.

Since you don't need to think about it anymore, we've taken the Button Layout component out of the palette; dragging buttons just works.

Jump to Reference in Design Mode

If you didn’t already know, there’s a great, time-saving feature where you can CTRL/CMD + Click on any rule or Constant reference in an expression editor to have that object open in a new tab. In 18.4, this convenient shortcut is now available in Design Mode as well.

You can either click the new option in the context menu to open the referenced rule, or directly on the label of the selection box in the Live View.

Do More with Record Types

We're happy to see so many of you leveraging the power of Appian Records, so we've made some killer improvements that will give you more information and control over your record design.

Visualize Performance of Record Types

Records are one of the most important pillars of your applications. They are incredibly powerful and have a lot of flexible configurations, which as a result, sometimes makes optimizing their performance less than obvious. To better support you, we’ve added another tab to the Record Type that will let you see how your record UIs are performing. You can now see how your record design affects the speed of your record lists, record views, and related actions and choose what record data to run the performance measurements against.

You can even drill down into descendant functions and rules to get a deeper view of what’s going on, so you can streamline your record UIs for maximum efficiency and performance.

Enter Any Paging Value for Your Record List

Rather than picking a value from a dropdown, you can now set your desired rows-per-page for grid-style record lists.

This is a nice change for most records, but it’s particularly helpful for expression-backed records that are pulling their data from an external source that doesn't support one of the size options or let you request a particular batch size. The mismatch was annoying to deal with before. So, if you’ve avoided creating a record for a particular service because of this, you can now set any value for your paging row size.

Record View URL Stub in Record Type

We added a column to the views table in the Record Type that displays the URL stub for each view so you can easily identify them when reviewing certain logs.

Configure Custom Email Senders Inline

Custom Email Senders can now be configured directly from the Send Email Smart Service without any need to restart the system! While on-premises customers will appreciate this feature for the simplified, low-code configuration, Cloud customers will be especially happy that they no longer need to open a support case to add a custom email sender (don't worry, Support knows that you still love them).

Setup is as simple as choosing a display name and email address!

Monitor Process Model Performance

We've built more insights into the Monitoring page to provide a holisitic view of how your process models are performing, eliminating any delay between you and the metrics about your processes. Now, you can easily monitor this information and understand if you may need to make any adjustments to your process model designs or data retention policies as a result.

Process Model Metrics

The new Process Model Metrics tab will list all of the process models you have access to, with a whole new set of information accompanying them. Now, you'll be able to see how much memory each of your process models is consuming. You'll also gain visibility into the number of instances in the system, completion percentages, and the data retention policies of these process models.

Finally, to make monitoring even easier, we've also added visual indicators to let you know which process models are consuming the most memory, so that you can quickly identify which models need the most attention.

Learn more about Process Model Metrics.

Live Process Instance Memory

Not only will you be able to see memory usage rolled-up by process models, but we've also built this capability all the way down to the process instance level.

Both process model and process instance memory are expressed in a new metric, AMU, which makes it easier for Designers to compare memory usage between process instances and overall by process models.

Check out Process Activity to learn more.

Process Modeler Properties in Read-Only Mode

You can now view properties and nodes of process models in read-only mode, letting you dig into the information without having to disrupt another designer by breaking their lock.

Fetch Group Members

Last quarter we released two People functions, a!groupsByName and a!groupsByType, to better support dynamic group management. In this release we're extending that toolset with a!groupMembers. This new People function provides designers with an efficient way to retrieve all the group and user members of a particular group.

This function includes filters and paging capabilities, which allow you to get manageable lists of groups members whether they're directly or indirectly added to the group.

Snazzy Styles for the Process Modeler

We gave our Process Modeler a makeover; we've modernized all dialogs so that their font, button, and tab styles unify the look and feel across Appian Designer. Also, Designers don't have to worry about selecting their preferred view every time they open up process models anymore; the process modeler automatically opens up in the view that the Designer last selected. We've also moved process validation errors out of the Process Analyst view so Analysts can focus on the design.

Expression Editor Shortcuts

We've added some more useful shortcuts to help Designers work more efficiently in the expression editor. When you're working on more complex behaviors, such as nesting functions or components, these shortcuts can help improve readability and comprehension.

Quickly find all occurrences of a local variable or rule by double-clicking its name. To quickly select a large block of expressions, double-click a parenthesis or bracket to select all the text within that pair of parentheses or brackets.

Google Cloud Vision Connected System Template

We're excited to offer Google Cloud Vision as a Connected System template. With Connected system templates, Appian makes integrating with other systems as easy as filling out a form.

With our low code integrations capability, and Google's world class Optical Character Recognition (OCR) models, Designers will be able to extract information from images and documents in a matter of minutes, not hours or days.

This feature, along with the rest of our Connected System Templates epitomizes the philosophy of Automate more and code less.

Integrate Using the OAuth 2.0 Client Credentials Grant

Appian has supported the OAuth 2.0 authorization code grant since 17.3. In this release, we're excited to support the OAuth 2.0 client credentials grant! The client credentials grant is used to grant resource permissions on behalf of an application, rather than on behalf of a particular user. This authentication type is commonly leveraged by the Microsoft Graph API, and can be used to execute background services that run without the presence of a logged in user.

Improved Test-Case from Ad-Hoc Test

Working with test cases in your expression rules just got easier. Designers can now quickly create and save a test case with blank input values. You no longer have to go to the test cases view to do this.

Administrator

Administrators will be able to enjoy these great new features.

New Server Sessions Automatically Recreated for SAML SSO on Mobile

User Experiences have been improved for environments utilizing SAML Single Sign-On for authentication. As long as the Identity Provider is configured to remember username and password, users will no longer have to re-enter credentials for SAML authentication on application launch.

Control Access to Tempo

Keep your Sites-only users in Sites. You can now limit which users and groups have access to Tempo. To support this, we've added a new system group, Tempo Users, that Administrators can access from the Admin Console.

Only users within the Tempo Users group will be able to access any links to Tempo interfaces or data.

With this more granular control, you can ensure the Sites-only users can maintain a consistent experience when using Appian.

User Start Pages for Mobile Users

Start Pages now apply to mobile users as well, meaning you can now customize the launch experience for your mobile users with a centrally-managed onboarding or landing-page experience for all users.

Appian Cloud

The following apply only to Appian Cloud customers.

Premier Support for Appian Cloud

We're excited to introduce a new tier of support for our Cloud customers: Premier Support.

Enhanced Data Pipeline

Appian Cloud customers with High Availability instances and enrolled in Premier Support can now use a database client tool (e.g. MySQL Workbench) to connect to their MySQL business data source hosted on their Appian Cloud instance.

Log Streaming

Appian Cloud customers enrolled in Premier Support can now request to enable log streaming in their Appian Cloud instances. When this service is enabled, Appian will forward supported logs in real-time to a centralized syslog receiver managed by each customer. By consolidating logs of their Appian Cloud instances, customers can further index, aggregate, and analyze logs with their existing tools such as Splunk, LogRhythm or Elasticsearch-Logstash-Kibana (ELK).

RPO Upgrade

Recovery Point Objective (RPO) has been upgraded to 1 minute for Appian Cloud instances with High Availability (HA) configuration (previously, RPO was 15 minutes). This means that in the event of a system failure, Appian Cloud HA instances can be restored without losing no more than the last 1 minute worth of data. Existing customers receive this benefit immediately.

New JDBC Driver for MySQL

Version 5.1.47 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-47.html

We recommend reviewing these documents and updating any incompatible query syntax you might be using in your applications. This should be completed before converting to our latest release to avoid any problems.

Server Administrator

The following administrative features and enhancements are available in 18.4.

No Analytics Rebuild on Update

We used to rebuild analytics engines on update, and for some systems, this could make updating take a long time. We've improved update handling so that now Appian doesn't need to rebuild the analytics engines at all. This can save up to 30 minutes.

Leaner Data Server

We put our Data Server on a strict diet of grilled chicken and spinach, and left it in the weight room for 3 months. In that time, it's managed to reduce its memory footprint by over 60%. Now that it's down to 200MB of RAM, you will be able to use the available memory for other systems and processes.

Resolved Issues

This release resolves the issues listed below. To assist you in your update 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-113816 - Medium
    Fixed an issue with thumbnail creation for attached images in the news feed.
  • AN-113523 - Medium
    The name fields in the user creation and update dialogs on the Users page of the Administration Console now obey the configured name length limits. Also, the nickname field length is now configurable using the new resources.appian.ag.constants.ag.nn.maxsizeconfiguration property.
  • AN-103523 - Low
    Accidentally leaving out the parentheses when typing a rule or function name in an interface no longer throws an error.
  • AN-103914 - Low
    Immediately dragging a new column in Interface Designer no longer throws an error.
  • AN-108547 - Low
    Logging during engine startup no longer trims the first character of the names of properties that have been overridden.
  • AN-94964 - Low
    Placeholder text color on the login page now satisfies WCAG 2.0 contrast ratio requirements.
  • AN-115738 - Low
    Dragging a list into another list in an interface no longer causes them both to disappear until the next evaluation
  • AN-106515 - Low
    Several functions were not being autosuggested correctly or displaying their documentation in the expression editor. This has been fixed.
  • AN-99950 - Low
    A columnsLayout is now correctly deleted when you delete the last column in it via the context menu.
  • AN-114186 - Low
    In the Missing Precedents dialog, links to the folders and groups that reference a missing object will now open a new tab and load the corresponding folder or group.
  • AN-115555 - Low
    Record lists with the export to excel button enabled no longer evaluate user filter and default filter expressions multiple times when loading the list.

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.

Query Entity

a!queryEntity_18r3()

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.

Auditor Role

The default system role, Auditor, is no longer available. Existing instances of the Auditor role have been replaced with Viewer. The Viewer role can now see an object's security, which results in the same permissions as the former Auditor role.

Convert Expression Rules to Interfaces

The ability to convert an expression rule into an interface (via the expression rule dropdown menu) has been removed. Designers who still need this functionality can easily copy and paste the expression from the expression rule into an interface and recreate the rule inputs.

Deprecations

Minor Versions for Process Models

The ability to create a minor version for a process model has been deprecated. This feature will be removed in a future release of Appian.

Designers who previously used minor versions for testing large changes to process models can instead create a copy of the original process model and utilize that for testing purposes. For any other scenario in which you created a minor version, we recommend creating a major version instead.

Process Model Internationalization

The ability to internationalize a process model name and description via sub-tabs in the Process Model Properties dialog has been deprecated. This feature will be removed in a future release of Appian.

In the past, this capability was required to internationalize related action names and descriptions on record types. Since 18.1, designers have been able to create custom related action names and descriptions by entering a string or an expression.

For internationalization best practices, see Application Internationalization

Name Length Validation Public Java API

The com.appiancorp.suiteapi.personalization.UserValidationUtils.isValidNameLength(String, int) method, which is used to validate the length of a user's first, last, and middle names is being phased out and has been deprecated. Instead, use com.appiancorp.suiteapi.personalization.UserValidationUtils.isValidNameLength(String, NameField), which uses an enumeration for the name field to validate and includes support for validating the length of the display name.

FEEDBACK