sartography / bpmn-js-spiffworkflow

A BPMN.js extension to improve working with SpiffWorkflow - the python BPMN engine.
MIT License
19 stars 5 forks source link

Feature/data store props #53

Closed danfunk closed 7 months ago

jbirddog commented 7 months ago

I didn't see this, and may have missed it so if so please disregard - but with a data store ref there is a dataStore node that is a sibling to the process. This dataStore node has a name that maps to the class the backend provides to SpiffWorkflow and the id maps to the dataStoreRef. Any way just wanted to mention that and if its there all good bpmn-js is hard for me to follow.

Also in talking with Dan we likely want to configure these out of process items somewhere else and add the nodes needed right before the xml is executed (vs design time) which I do think has some interesting aspects.

danfunk commented 7 months ago

@theaubmov - can you add the dataStore to the xml as well - will need to be at the process level, per @jbirddog comment. Then we can merge this and get it closed out. this is tight work and well done.

theaubmov commented 7 months ago

@danfunk @jbirddog | I pushed new changes to add dataStore to the xml, with a test to check that dataStore has been added correctly to the process definition.

Screenshot 2023-11-22 115348

theaubmov commented 7 months ago

Yes, good point, I saw those scenarios but I thought maybe to start handling the more obvious one like avoiding having two dataStores with the same ID, but you re correct, there's a missing part if the user deletes a datastore from a dataRef, and it's no longer in use, normally it should be deleted from the process too. Also might be usefull to show dataStores in the level of process for better visibility like the case with DataObjects, but that might be secondary.

theaubmov commented 7 months ago

@danfunk @jbirddog | I've made further changes with a test case to handle the deletion of the dataStore element in the event that it is not linked to a dataStore reference.