Skip to main content

I am brand new to K2.net 2003.  I have already surmised that, in order to report on workflow data and join it to other related data, I will have to save it to an external database.


 We have our application database in SQL Server 2005 and will be saving the K2 workflow data to this database.


 Is there anyone else out there who has done this?   Any best practices associated with this?  Articles you can point me to?


I would appreciate any and all information.


Thanks,


Liz 


 

First, please realize that only K2.net 2003 SP3 and SP4 supports SQL 2005. (since you're new to K2, I am assuming you're using SP4).


Next, it depends on what you want to report against: Process instances currently 'Active', 'Completed', both (Active and/or Completed), or neither (process security and system/administration, list existing user 'workspace' settings, etc.).


Note that Active processes involve 'live' data (very dynamic, constantly changing as processes are 'in flight'), and therefore require K2 (transaction) database information. 'Completed' processes and data a shuffled from the K2 transaction database to the K2Log (Log) database for reporting (pretty much static data). Given this, you need to consider which database(s) you need to push to your reporting database environment (datamart, SSRS, etc.).


K2 provides an 'Archiving' utility to move completed processes out of the K2Log database into a separate 'offline' database. You can then shuffle this data off to other systems however you'd like. For 'Active' instances, I'd recommend using the built in SQL Server 2005 features (replication, mirroring, etc.) but consider the impact on the system due to limited server resources (server memory, resource contention) and K2 functionality (record locking, data integrity involving synchronization between K2 and K2Log, etc.).


You may want to consider using the K2ROM (see KB170 for suported APIs: http://kb.k2workflow.com/articles/kb000170.aspx )


HTH.


- Dave


 


 


 


 


Reply