回复 8# daniewang 流程数据和业务数据永远不可能完全解耦,方案一说的太笼统了,不管什么业务场景,如果业务数据全部外部实现,你通过什么和流程数据对接呢,一样需要有相关关联的字段的。
方案二,业务数据是千变万化的,正如daniewang兄说的,业务如果涉及子表等情况很多。
但是其实只需要有一套统一的数据规范作为流程与业务交互的方式就可以了。
通过IBM BPM,它本身有流程变量那个概念,你完全可以规约好一套流程变量,然后所有的业务流程都传入该类流程变量。以此来实现相关业务与流程的关联和解耦。
当然该定义的流程变量需要考虑好扩展,首先必须保存业务主键ID,保存一些业务的信息,然后你可以外部根据这些业务信息去封装和处理去打开相关的业务页面。
当业务与流程交互的时候也可以通过这些规范的变量去实现,不如金额大于多少走那些线等等。
甚至后续环节处理人都可以通过这些实现的。
不过外部需要封装很多内容,以上说的都是经过我们实践过的内容,而绝非空谈。
这里大概说了一下希望可以开阔下你的思路。