Some years back, there was an internal consultation in Oracle Europe about whether we could write something to generate Workflows instead of using the workflow builder. One of the main flaws with the builder is that it only runs on a Windows machine – what do you do if you are running Linux? The only thing to do is to use an emulator to run the builder. Unless Oracle move the builder to something platform non-specific, such as Java, then this is always going to be a problem.
Sadly, this didn’t really come to anything – there wasn’t enough interest or time to put people on it, and unless a customer was paying, then it was never going to get done. We did look at writing something in XML that could then get loaded into the workflow tables, but it became quite tricky. It’s reasonably straight forward to work out the insert statements that you would need to call to load the core definition into the workflow datastore, since the tables identify which activity comes next in the process, and at one stage we did have something running that would allow this bit to work.
The part of the load that we found particularly difficult was the geometry and layout, which we couldn’t really work out in the time that we had available was the co-ordinate system for laying out the diagram correctly (something that is important for usability).
In the end, we gave up, since we also needed to come up with some mechanism to convert a flow from whatever mechanism people were starting with (Visio, Word, Powerpoint diagram, any third party tool, anything else!) into XML, to convert into an Oracle proprietary format, and since no-one had actually asked for it…
If anyone out there has actually worked on this and got it working, I’m more than interested in learning how it was done (or even why!), but there were some ideas that came out of the discussions – more about that in the next post though!