Bpmn diagram versioning and best practices

Hi all,

I am having perhaps a trivial issue, but I couldn’t find the proper document, so here I am.

I am changing the versions of a diagram, where I am deprecating some of the existing elements.

On localhost I do not have much data and there are no issues, but on Staging we have many documents from different versions of the diagram. The workflow and delegates are fine, but when it comes to loading the overlays it starts to blow up.

The exception is that there is no such element, which I understand and I expect this element to be missing, but at the same time it is not willing to iterate any further past this same element.
The diagram function is pretty standard:
As well as the DART code:
The above snippet is just one of the variations I tried to walk through the elements and despite the try catch it still crushes and starts from scratch (not expected).

So the question I am building to is as following:
What are the best practices when deploying a new diagram?
Should I include the elements that were deprecated outside the drawn flow(this way the flow works, but feels stupid)?
Is there a collection handling technique that could overcome this iteration issue?

Thank you.

A slight situational update:

  • I added the queues that were deprecated into a group with label - legacy queues inside the diagram, which fixed the overlay count issue.
  • now the deprecated queues cannot open the docs directly, an are trying to create a brand new document instead.

It looks like no one was able to get behind your use case until now. Did you resolve your issue?

From what I understand you try to display overlays on elements that may not be there anymore. This could be circumvented by querying the canvas to see if elements exists for which you want to display an overlay:

const element = elementRegistry.get(elementId);

if (element) {
  // display overlay

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.