Process Mapping Logo

Process Mapping - Articles

A Process of Improvement. An Outcome of Excellence.

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 Pearce

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

Multi-Language Support

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.

Adding Languages

image
image
We start off with a basic process map. The title is 'Leave Request'

image
image

The process itself is pretty simple, as this is just for demonstration purposes.

image
image
We'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.

image
image
And we have edited all titles with the in-place editing for the same reason.

image
image

There is only one form, again because this is a simple demonstration.

image
image
We've set the name according to our standards, and the title as 'Leave Request'.

image
image
Everything else is edited in- place for the same reasons as the process map.

image
image
Now, we add some languages.

image
image
This brings up the Project properties, were we add French and Spanish.

image
image
We have to save for this to 'take' and begin editing the captions.

image
image
Then we select the map, select French, and begin editing.

image
image
Notice 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.

image
image
So we change the process caption...

image
image

... and the action and stage names. I apologise if these translations are not accurate ? they are merely what seemed sensible at the time.

image
image
We now do the same with Spanish.

image
image
Notice that changing to an unedited languages reverts to the default.

image
image

image
image

So we make our changes. Again, the translation may not be accurate.

image
image

And we then do the same for the form. Notice the layout needs changing as the caption drops off the left of the form

image
image
So we adjust the field placement. Note that this is only affecting the layout for this language.

image
image
And we do the same in French.

image
image

Again the placement needs changing from the default...

image
image
... so we move the fields.

image
image
Note the properties we can change here. The position, width (height too if applicable) and caption alignment, as well as the hint.

image
image
Although oddly the hint is not editable for dates.

image
image
Notice 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.

image
image
We are going to set the Subject on a form submit.

image
image
We add an assignment activity...

image
image

... and set the subject to ' for ' like so.

image
image

We would like a history form too, so we decide to add our Common Library and use the History form from that.

image
image
In 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.

image
image
For this demonstration we only edit the caption for the 'from stage' column to French.

image
image
It is NOT reflected in the Designer, however. The Designer seems not to know Grid column captions are editable.

image
image
We have a Business Object that selects values from the view supplied with the product that uses the user's locale id.

image
image

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.

image
image
We include this Library in our Project.

We then add the forms to all stages and actions as required, and deploy.

In the Client

image
image
In our browser we have selected French and Spanish as additional languages. Aussie is our default at present.

image
image
Notice the names 'Leave Request' and 'Submit a Leave Request' in the Blank Forms list.

image
image
And the form has the default captions.

image
image

When submitted, the To Do list looks like this. Note the Subject, Stage and message.

image
image
And it looks like this when opening the form itself. Notice the Form names at the top, and the Action names at the bottom.

image
image
The 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.

image
image
Now we change or default language to French.

image
image

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.

image
image
And when we open the form, the captions, and indeed field positions, have been changed to the French ones I entered.

image
image
And 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.

image
image
The Blank Forms list has changed too.

image
image
And filling a form it is as you expect, in French.

image
image
Even the calendar control is in French.

image
image
Although, obviously, the options are the English ones I set as default. More on that later.

image
image

On submitting the form, the alert list for this Folder is all in French as well.

image
image

And the history is as well, being dynamic.

Notice the Form names are now in French, as are the Action names.

image
image
Now we change to Spanish.

image
image
You can see the Blank Forms list is now in Spanish ...

image
image
... as is the form.

image
image

The Alert list is was before ? each action in the language it was performed in.

image
image
And the History of all Folders is now in Spanish, regardless of the language performed in.

image
image

image
image

Dynamic Options

image
image
The dropdown lists are fixed, but if we want language dependent captions we can use a Radio Group.

image
image
This allows you to set the options in one language ...

image
image
... or if we move to another ...

image
image
.. in that language.

You could even have a different number of options in each language.

image
image
So we set them for all three languages.

image
image

image
image
Now, when we edit the Folder we can choose the option in our selected language.

image
image
Unfortunately, it is fairly obvious that if you then change the language ...

image
image
The 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.

Conclusion

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)