First word and note… I am a complete new person to this software. I have done my best to not only understand the format but as much of the underlying code as I can. It is still impressively complex. Still I am possibly asking a stupid or maybe non-sensible question, but I am wanting to see what I can learn.
My department wants me to make an new bpmn object that essentially works like a html A tag. You can click on it to open a noted other diagram in a separate tab. My plan was to make a custom object, and have it contain an ID code that I would store in my data base, and when that ID is called from y data base the XML data would load in and open up as a existing bpmn diagram in a separate tab.
So I would need to make or over write an existing object, and have it somehow store the data of the document. Then I can make a custom event when it is clicked on to open the desired data in a new tab.
So. I looked at the bpmn.io examples for a reference. The one named “Custom Elements” seems to sorta make new elements, but they don’t store int he XML. Instead it seems to use data which is off in a json file. I don’t know why they would do that, but that seems to be what is done. I need the data to be stored in the bpmn xml file generated at save.
I also looked at the Nyan cats example which seems to sorta make a custom element. If I am understanding correctly it looks like it is more hijacking an existing element and re-defining it. Sorta. It is shorter and simpler, and I had an easier time understanding it, but I am not sure what I want to do is to hijack an existing element in order to do what I want to do. Not to mention the fact that I still don’t know how I can store the extra data that I want to. My implementation of BPMN uses the commenting system so I can;t store the data as a comment without it looking weird when people open comments.
Any suggestions would be welcome.
As to providing a link showing an example of what I am doing, I can’t as it is behind my companies firewall. Still for the most part is standard BPMN with commenting added much like the example provided, and the properties panel much like shown in its example.
The only thing I have added that is extra is a ajax code that calls to an API and provides the ability to load and save data to a MS sql database.