Moving from Metastorm BPM Version 7 to Version 9
Metastorm BPM has been evolving since its very early days as an Oracle application. It has been a strong leader in the BPM area for over 12 years. It was a market leader in the Web Client arena, and has consistently kept up with and taken advantage of the ever changing technological landscape as it has grown.
Throughout these changes the fundamental ease of use and 'descriptive' Process Design that has made it a favourite of many for many years has been maintained.
The latest incarnation as a fully .Net application and code generator is yet another almost complete makeover, possibly as significant as its transition from Oracle. We've waited a long time for this, but the real question is, are we going to enjoy the same ease of process design and overriding clarity that we have come to rely on, and has been the main strength of the product to date.
In this and the articles to follow over the next few weeks we shall try to give you all the information you will need to answer that question, and, we hope, many others.
Jerome was one of the original development team of the Metastorm BPM product at Metastorm, and has been using it for over 12 years.
He has also written the Metastorm BPM Developer's Guide
One of the most important additions to the Metastorm BPM product in version 9 is the ability to create processes in multiple languages. Here we show you how effective it is, and examine the limitations.
imageWe start off with a basic process map. The title is 'Leave Request'
The process itself is pretty simple, as this is just for demonstration purposes.
imageWe've left all the stage and action names as the defaults, as we are pretty sure this is what will occur in the real world.
imageAnd we have edited all titles with the in-place editing for the same reason.
There is only one form, again because this is a simple demonstration.
imageWe've set the name according to our standards, and the title as 'Leave Request'.
imageEverything else is edited in- place for the same reasons as the process map.
imageNow, we add some languages.
imageThis brings up the Project properties, were we add French and Spanish.
imageWe have to save for this to 'take' and begin editing the captions.
imageThen we select the map, select French, and begin editing.
imageNotice that the un-editable properties are marked as read- only. We will see later that this is not quite the case, as it can be overridden in some cases.
Only those properties relating to visible captions of some kind are editable.
imageSo we change the process caption...
... and the action and stage names. I apologise if these translations are not accurate ? they are merely what seemed sensible at the time.
imageWe now do the same with Spanish.
imageNotice that changing to an unedited languages reverts to the default.
So we make our changes. Again, the translation may not be accurate.
And we then do the same for the form. Notice the layout needs changing as the caption drops off the left of the form
imageSo we adjust the field placement. Note that this is only affecting the layout for this language.
imageAnd we do the same in French.
Again the placement needs changing from the default...
image... so we move the fields.
imageNote the properties we can change here. The position, width (height too if applicable) and caption alignment, as well as the hint.
imageAlthough oddly the hint is not editable for dates.
imageNotice though, that the action message is NOT editable.
This is set by default to the action caption, however, so will reflect the user's language.
imageWe are going to set the Subject on a form submit.
imageWe add an assignment activity...
... and set the subject to ' for ' like so.
We would like a history form too, so we decide to add our Common Library and use the History form from that.
imageIn the Library, we set the languages we wish to use. We add French and Spanish here.
Notice that although the 'columns' property for the grid is read-only, we can in fact edit it.
The only editable property within is the Caption, obviously.
imageFor this demonstration we only edit the caption for the 'from stage' column to French.
imageIt is NOT reflected in the Designer, however. The Designer seems not to know Grid column captions are editable.
imageWe have a Business Object that selects values from the view supplied with the product that uses the user's locale id.
We have added the parameters of folder id and locale id to the query. We have also set the defaults that we would expect to use.
imageWe include this Library in our Project.
We then add the forms to all stages and actions as required, and deploy.
In the Client
imageIn our browser we have selected French and Spanish as additional languages. Aussie is our default at present.
imageNotice the names 'Leave Request' and 'Submit a Leave Request' in the Blank Forms list.
imageAnd the form has the default captions.
When submitted, the To Do list looks like this. Note the Subject, Stage and message.
imageAnd it looks like this when opening the form itself. Notice the Form names at the top, and the Action names at the bottom.
imageThe History grid is not working for us, however.
It seems that the view supplied by Metastorm does NOT show the default captions if no valid language is passed in. That is something that will have to be fixed for it to be useful.
imageNow we change or default language to French.
Notice the icons, top bar and column captions have changed. These are supplied in a few languages by default. I assume you can create your own quite easily for other languages, or to change what is displayed.
Notice, however, that the Stage is still the same. This seems odd, as I would have expected that to be dynamic. The message and Subject I can see are calculated, but the Stage is fully under the system's control, so could easily be looked up at run-time.
Having said that, performance may be an issue.
imageAnd when we open the form, the captions, and indeed field positions, have been changed to the French ones I entered.
imageAnd now the history works as I'd like. The action I performed in English is shown in French now, as is the Stage. The message is obviously not.
Notice however, that the grid caption I changed IS in French, as we would expect, despite the Designer not showing it.
imageThe Blank Forms list has changed too.
imageAnd filling a form it is as you expect, in French.
imageEven the calendar control is in French.
imageAlthough, obviously, the options are the English ones I set as default. More on that later.
On submitting the form, the alert list for this Folder is all in French as well.
And the history is as well, being dynamic.
Notice the Form names are now in French, as are the Action names.
imageNow we change to Spanish.
imageYou can see the Blank Forms list is now in Spanish ...
image... as is the form.
The Alert list is was before ? each action in the language it was performed in.
imageAnd the History of all Folders is now in Spanish, regardless of the language performed in.
imageThe dropdown lists are fixed, but if we want language dependent captions we can use a Radio Group.
imageThis allows you to set the options in one language ...
image... or if we move to another ...
image.. in that language.
You could even have a different number of options in each language.
imageSo we set them for all three languages.
imageNow, when we edit the Folder we can choose the option in our selected language.
imageUnfortunately, it is fairly obvious that if you then change the language ...
imageThe selected option is no longer selected! This makes it very problematic. It also means if I edit the form in this language the original selection would be lost.
Overall the ability to select a language and have multiple languages for a single project is a very useful one. It allows you to create systems that are useable by users of different languages very easily.
Unfortunately, some important flaws make it almost impossible to use effectively by the same users in multiple languages. That means you can have users in France, for example, using it in French, and Users in Spain using it in Spanish. But when French users look at Folders edited by Spaniards, and vice versa, the result is not quite what you may expect. The areas that will not be translated are:
* To do and Watch lists
* Radio Group options (and data could be lost by editing in different languages)
* List or dropdown options (unless you do this manually very carefully)