|Applies to version 2019; author: Anna Puka, Michal Rykiert|
InstantChange™ technology can be seductive. There’s no restarting or (re)deployment involved, and the results are available immediately after hitting the save button. That’s one of the things that make power users fall in love with the platform.
Although, it also entices to execute the wild-wild-west approach to provide on-the-fly changes for ongoing workflow instances directly on PROD environment. Which is great, but with great power comes great responsibility. Some enjoy the thrill, but most prefer it safe. For the second group, WEBCON BPS enables the Export-Import mechanism, which combines safe with the flexibility of InstantChange™.
In essence, the Export-Import allows packaging whole configuration of application: workflow(s), forms, actions, rules, data source definitions, etc. into a single file. Such file is then transported between DEV/TEST/PROD or to a completely new environment. Et voila! Changes are embedded immediately and new applications are imported.
To make sure the importing process involves as little manual work as possible (or not at all), we’ve prepared 3 tips to keep in mind while preparing to export.
Using a built-in rules engine not only ensures functional compatibility for all devices (desktop, mobile) but also allows to easily leverage Export/Import mechanism. While we are at it, make sure to always use variables (reference tags) within the configuration of your rules to ensure your rules would work on any environment. For instance, whenever you need to reference process or workflow ID, use a variable instead of a fixed number. Depending on the environment the ID may change, but the variable will always be right :).
|Protip: WEBCON BPS 2019, a configuration of Data row and Data Table fields allow for using variables to create hyperlinks to open a referenced workflow instance. Very useful when you want to allow users to get additional information about the item of interest :).|
Some business applications delivered with WEBCON BPS can be highly complex and will require some manual changes in the configuration whenever the application is imported to a new environment. To make the modification as easy as possible, as well to ensure future swift maintenance, it’s worth to remember that many configuration pieces can be created as reusable templates. Why should you care?
|Protip: Every reusable configuration elements have “Usages” tab available that will allow you to quickly find where exactly it is used.|
Here’s what specifically you should consider:
|Protip: Constants are also environment-sensitive which means you can provide different constant for DEV, TEST and PROD.|
Data sources are a crucial element of most applications, so it’s really important to take care of them during export/import process.
First of all, in WEBCON BPS data sources are environment-sensitive, which means (once properly configured) when you migrate your application from TEST to PROD, the system will automatically connect you to the proper instances of your external data sources.
You’ll find proper connection placeholders in Designer Studio (Data sources -> Connections)
Secondly, if you have a data source with values that rarely change (or not at all), always configure them as Fixed values list directly in Designer Studio. That’s the easiest way to have them automatically exported, compared e.g. to SharePoint lists which as such are not exported by WEBCON BPS (although the definition of the data source using SP list in fact is).
Additionally, if you want business users to be able to add/change your selectable values from time to time, the best way to handle this (without giving the business user access to the Designer Studio) is to have a small process that would allow them to do so. Therefore, they’ll be able to interact with it just like with any other application in the system. In such case use data source type: BPS Internal View
Side note: soon, so-called dictionary processes will be available in Designer Studio as a standard, so you won’t even have to configure them to store data :).
Last but not least, keep in mind that since v. 2019, the system allows exporting processes as a template. Selecting this option will create a package with a template process. It means that whenever you import it to any server it will create a new process (instead of amending the existing one if there is any). With that, you can create:
Export-import is a very powerful mechanism and if you give your processes a little bit of extra love, they’ll return you a favor by being super easy to import wherever you choose :).
HOW TO BUILD A BUSINESS APPLICATION IN 45 MINUTES