New features are described below in detail. Behavior changes, resolved issues, deprecations, and removals are called out in their own sections.
In this release we provide many exciting new features for Appian users. Sites users will receive some important enhancements to help them maintain a more consistent user experience. And, regardless of the environment, all users will benefit from our Modern UI initiative, which also includes a facelift for Quick App Designer.
Appian Sites provide a great working environment that can be tailored to a particular set of users or around a particular type of work. For Sites-only users, it's best if they don't have to leave their primary work environment.
Along with the navigation changes we implemented in the 17.2 release, the following changes in this release establish a high level of environment independence for Sites users.
Task notification email links will now send users to the environment of their start page to view the task.
Before this change, all users were taken to Tempo for an email task notification. Now, if a user's start page is a Site page, clicking on a task link will take user to a Sites environment to view the task.
Users no longer have to go to Tempo to access their user settings; they are now available from the user option menu in all Appian environments (Tempo, Sites, Designer, and the Admin Console).
The new box layout provides another option for organizing your interfaces. Fundamentally, it's a container you can use to wrap information or other interface elements. There are a lot of common uses for the box layout like direct messaging, related content, important information, etc.
We've provided six distinct styling options to support the different types of content you may want to put in there. For example, you can use the
SUCCESS style to provide a notification.
Or use your brand's themes and colors with the
ACCENT style for an order-summary.
There are a ton of great uses for this new layout. For guidance on how you can best take advantage of box layout, see the Overview of Layouts topic in the UX Design Guide.
Many components benefit from new configurations that control label or component position, creating more harmonious and appealing UIs that are cleaner and easier to read.
We've added another label position option: JUSTIFIED. You can use this label position to distribute your fields and labels evenly within a column space where it can improve the appearance or readability of a field set.
You can now further refine your interfaces with alignment options for the button array layout, providing more freedom in how you can arrange the elements of your interface.
As you can see in the previous note, we also added the ability to align images as well. This can be done on their own, or within grids.
Grids are a popular tool for designers to present large amounts of data. To give you greater styling control, we've added some new styling options.
The lean, light-bordered style provides a modern look and feel, and best suits grids with fewer columns.
Row-banding (the alternating light and dark rows) is now optional for both read-only and editable grids, making it easier for users working in large grids.
For grids with a lot of information, we also added a "dense" style to let you fit more content in, or make it easier to follow rows in grids with a lot of columns. In the image below, you can see how this new style option affects the same grid: without the option (left), and with the option (right).
To learn more about how you can make best use of these new styling options, check out the new grids styling page in our UX design guide.
The multi-dropdown component has some notable enhancements in this release.
First, multi-dropdown fields are now supported within editable grids. For example, if you want to assign reviewers for all of your open contracts, the multi-dropdown component can now be used provide a list of available reviewers directly in the grid.
You might have noticed in the previous image that you can now define a placeholder value for the multi-dropdown component, giving you another option for adding inline instructional text.
Social engagement is important in the workplace, which is why at Appian we encourage new hires to upload their profile photo on day one. It personalizes the news feed, and puts a face next to what would otherwise just be a text comment.
In appreciation of the small, but important role the profile photo plays, we've made it so you can now preview, zoom, reposition, and crop your profile photo to help you get it just right.
It’s our driving purpose to give you the most capable, easy-to-use tools to build amazing applications for your business processes. This release has no shortage of features that support this goal. Designers will also appreciate the new components of the Modern UI initiative when working with all of our design objects, making the application building experience a joy to use.
Lets face it, when it comes to enterprise software development, integrating systems is the most difficult and important thing you can do. That's why making the process easy is a goal that's driven the creation of new tools to do exactly that.
The first step was the introduction of the Integration design object in 17.2, which simplified the configurations process of integrating with another system. In addition, Integrations provide a suite of diagnostic capabilities giving you immediate feedback as you connect Appian with other systems.
In this release, we're taking the next steps by offering you a new object, better process model support, and better visualization tools.
A new object has been introduced into the Appian family: Connected Systems.
Connected Systems provide a secure location for Designers to store authentication credentials that can be called across multiple Integrations. Similar to how Constants can be used throughout your Expression Rules and Interfaces, Connected Systems can be used throughout your Integrations
This means that a password only has to be updated once, even if it's used in 25 different Integrations. This also greatly improves importing and exporting integrations into different environments, especially if it's your policy to use different authentication credentials between environments.
The Process Modeler has a new smart service: the Call Integration Smart Service. Previously, Integrations that query data (GET) could be called in a script task or expression, but Integrations that modify other services (POST, PUT) could not. Now, Designers can call any Integration safely though this new smart service.
In addition to making it functional, our engineers worked hard to make it as easy to use as possible. Setup is a breeze. You simply call an existing Integration, and the smart service will automatically generate the needed data inputs. All you have to do is tell the smart service what data should go in and what to do with the results.
Based off your process data, you can also create an Integration directly from the smart service. Simply create the necessary activity class parameters, and Appian will get you started with an Integration that’s designed to work seamlessly with your process.
As the idiom goes, a picture is worth a thousand words. This is why we've made it so you can add logos to Connected Systems. This simple feature makes reading Process Models with a lot of Integrations much easier.
You can more easily find your Connected System when creating Integrations:
It's also easier to see at a glance what's happening within Process Models:
We've added a powerful new capability that gives you wide-ranging visibility to expressions within your application objects. In addition to being able to search for objects by name, description, or UUID, you can now also perform searches of the expressions within design objects from Appian Designer.
Toggle your search to Expressions to find plug-in or integration functions, look for specific components, or easily hunt down legacy functions so you can take advantage of their improved, modern versions.
When inspecting a patch or application package in 17.3, you'll find that your inspection results are not only easier to read, there's a lot more information about what will happen on import, so you can make better decisions and prevent accidental overwrites.
In the Change Status column, we can show you what will happen for each object, and alert you to potential conflicts and overwrites.
Additionally, we've improved the efficiency of the import process. Now, when Appian detects that an object has not changed, it will no longer import it (whether it is a manual or automated deployment). For Designers that wish to always import application objects, regardless of change, we’ve also included an option to force update.
With this release, conflict detection is supported for a large number of objects. For more details see the inspect package page in our documentation.
Folders remain an important part of organizing applications, so it's about time we made them available to open and browse in the modern Appian Designer environment. Opening a Rule Folder in Appian Designer will reveal the contents inline, giving you full control and navigation capability within that folder.
We were excited to release Decisions in 17.2, our easy-to-configure approach to handling your business rules, and we're delighted with positive response you've given us.
And since so many of you have many of you have quickly adopted Decisions to capture your business rules, in this release, we're keeping the up the momentum with a slew of improvements and new features for Decisions.
We've added a simple and reliable way to configure a default output for Decisions with the Else row. The Else row is always the last row of your decision table, it doesn't take inputs, and the output value you define there will be returned when none of the other rows hit.
This addition allows you to easily account for exception flows directly in the object.
Improve readability of decisions on the fly. Decision columns now support reordering, preventing you from having to worry during building and testing whether this is the best way to visualize the business rule.
Save yourself some time, and lower frustration for your fellow Designers by saving default test values in your Decisions. Just as you can with Interfaces and Expression Rules, you can now save default test values in the Decision object. Next time you, or someone else opens a Decision for editing or auditing, you won’t have to re-configure the test inputs.
Do you have Decisions that needs to check a start date or deadline? Decisions now support date values for inputs and outputs.
We added "not null" as an operator for all decision input types. Now, Designers can easily account for unintentional nulls without having to add additional rows or check before/after the Decision.
The following improvements to Appian expressions will speed up the design time of Applications as well as provide even more capabilities with Appian's already industry-leading expression language.
Keywords are now more discoverable. The expression editor now auto-suggests the keywords of Designer-configured rules, system functions (e.g.
a!queryEntity()), or SAIL components.
Sometimes you need to change the name of an input you've already used throughout the Interface. Maybe you need to change a lot of input names. Of course, doing so means having to change all references to that input in your Interface. You could switch to Expression View and try to find-and-replace them all, or you could upgrade to 17.3, and we'll go ahead and do that for you.
That's right, when you change the name of an input in an Interface in 17.3, Appian will automatically update all references to that input for you.
We've added a new function, a!flatten(), that flattens nested arrays into an array of single items. This is particularly helpful when working with looping functions like a!forEach(), which return nested arrays if a single iteration returns a array.
For example, if you loop over an array of cases and get the users responsible for each one, if some cases have multiple responsible users then you'd get a nested array. If you want to display those users in a grid of cases, that's exactly what you want. But if you are just trying to get an array of all the users associated with any of these cases, then it's much easier to flatten it into a single array. Previously that could be tricky, but the new a!flatten() function makes it easy.
To complement the improved formatting of expression results introduced in 17.2, you can now choose between three distinct outputs: Formatted, Raw, and Expression to help you quickly inspect test outputs and debug your app.
Formatted returns the expression results in the most readable form. It's especially useful when you have a large array or heavily nested data.
Raw provides the greatest information density. This can be helpful when you're familiar with the data.
Expression returns a fully-functional expression that represents the output. You can can copy and paste the expression result into another rule or interface. This is extremely used in situations were you need the output of one expression as test data for another.
Functions that query external data like a!queryEntity() and a!queryProcessAnalytics now intelligently cache their results during the evaluation of that expression. If an expression calls a function more than once with the exact same parameters, the first call's result will be reused. This improves the performance of your expressions by eliminating redundant queries.
No design changes are required to take advantage of this! Simply upgrade to 17.3 and any redundant queries will no longer be made.
Testing is an important part of building applications, which is why we added the Expression Rule Test Cases feature in 16.2. In this release, we've added a couple of new features that extend its utility to help write more robust test cases.
You can now select Process Model as an assertion type when creating Expression Rule test cases. This lets you reliably reference Process Models directly.
We've made writing custom assertions easier with a new test cases variable that allows you to directly reference input values.
Using this new variable reduces the amount of duplicate information you need to provide, and lets you create reusable snippets.
You can now check your Interfaces more comfortably as the Test Input field (for text-based inputs) has been updated to preserve line breaks when you enter or paste multi-line text blocks.
The Quick Apps Designer has become a popular tool among Designers who've been using it to jump-start their application projects. Designers have come to enjoy the speed with which they can create the foundation of an application, as well as the ease with which they can iterate through changes before moving to extend its functionality in the Appian Designer.
In support of this usage, we added a small feature to the Quick Apps Designer to formalize the conversion of the Quick App to a regular application.
Using this option will remove the Quick App from the list in the Quick Apps Designer (instead of just disabling it), while preserving the functionality and data of the Quick App.
Appian now adds a time stamp to the default filename of any patch exported. While the change is small, it will help you more easily create unique filenames for better sorting and identification of your various patches.
This section describes new features for administering Appian.
We've added support for multiple Identity Providers (IdP) with SAML Single Sign-On (SSO). Now, you can you can easily tie-in more than one IdP into Appian while maintaining rigorous security standards. This allows your entire user base to leverage SSO and authenticate with whatever means you see fit.
See adding additional identity providers for more information.
The HTTP proxy page in the Admin Console now allows you to configure Appian to use a proxy server. Instead of writing a plug-in to connect to systems through a proxy, Administrators can add proxy configurations that can be used by the following Integration features:
Check out our Appian Administrator Console page to learn more.
This section describes new features for server administrators.
The Appian engine architecture has been re-built to dramatically simplify the network and administrative requirements for running a distributed, or highly-available engine cluster. This is the same architecture that has been running on all Appian Cloud installations since version 16.3, and was the basis for Appian Cloud's high availability offering.
Oracle 12c R2 is now a supported RDBMS for use with Appian.
Microsoft SQL Server 2016 is now a supported RDBMS for use with Appian.
IBM DB2 version 11.1 is now a supported RDBMS for use with Appian.
Windows 10 is now a supported platform to host Appian.
With the announcement of end-of-life for Apache 2.2 web server, we recommend that you upgrade to Apache 2.4. In support of this, we've updated our Configuring Apache Web Server with JBoss to help you upgrade your Apache web servers.
The following describes changes affect all Appian Cloud customers.
For customers running high availability for Appian Cloud, traffic will now distribute across all available Appian engine instances instead of routing all traffic to the primary engine instance. As a result, your environments will have an increased ability to handle high levels of concurrent usage.
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-55769 - Medium - Deleting all applications on the last page of the applications grid no longer causes an error.
AN-75577 - Medium - When viewing a record type as read-only in the record type designer, the user filter dialog now closes correctly.
AN-86226 - Medium - The efficiency of indexing of object relationships for impact analysis has been significantly improved. This improvement will be most noticeable as reduced CPU usage for sites that modify many objects in a short period of time, for instance when importing large applications or deleting many documents.
AN-87835 - Medium - When viewing a record type as read-only in the record type designer, all configurations within the user filter dialog are disabled so that they cannot be edited.
AN-85098 - Medium - When resizing a browser window that contains the interface designer in Internet Explorer 11, the expression editor no longer disappears in some circumstances.
AN-84730 - Medium - Expression editors now display the correct value when it has been updated by another component in the design interface.
AN-62435 - Medium - The full name of each object that is displayed in the Dependents or Precedents views is now displayed in a tooltip when hovering over the object name.
AN-55646 - Low - The validation messages for SAIL integer fields are now always correct for extremely large and extremely small numbers.
AN-63504 - Low - An error is no longer received when deleting objects from a Precedents or Dependents view in Appian Designer.
AN-85183 - Low - When setting the Visibility parameter for a component in the design view of the interface designer, the expression editing dialog now correctly displays the name of the parameter that is being edited.
AN-88555 - Low - The Wizard template in the interface designer now contains a functional Cancel button and the corresponding interface input. Additionally, the Basic Page no longer creates an unnecessary input.
AN-55646 - Low - The validation messages for SAIL integer fields are now always correct for extremely large and extremely small numbers.
AN-86169 - Low - Quotes are no longer auto-completed when typing inside comments in an expression editor.
AN-85122 - Low - Components in the live view of the interface designer can no longer be tabbed to or maintain focus while the interface has a syntax or evaluation error.
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.
The concept of personal user storage is not longer relevant in modern environments. Modifying user storage space quotas in a user's personal knowledge center is now deprecated and this functionality will be removed in a future release.
The ability to star the following objects in /designer has been deprecated:
Additionally, the ability to star processes has also been deprecated. Designers are offered more filtration option in Appian Designer through: application-specific object lists, object type filters, as well as name & description search.
On a case-by-case basis Appian may remove the ability to star objects as tabs in /designer are retired.
The ability for knowledge center administrators to approve or reject changes within the knowledge center has been deprecated and will be removed in a future release.
Situational awareness of knowledge center changes should be exposed on an interface and approval handled in process. This design pattern offers greater flexibility to users needing to manage documents.
The "Security Rules" for Knowledge Centers, found in
/designer and the Create Knowledge Center Smart Service, no longer apply to modern Appian security design, and have been deprecated.
Security for knowledge centers is best managed in Appian Designer.
Rules creation settings from the system tab in /designer has been deprecated and will be removed in a future release of Appian. By default users in the Designer role are able to create rules.