You are viewing limited content. For full access, please sign in.

Question

Question

Forms Repeating Timer Capabilities

asked on March 12, 2018

I am looking to have a Form's process that assigns a form to a person to work on.  This person may have it assigned to them for a few minutes or a few months but they want it to automatically end should a related process in another application be canceled.  This can be accomplished by:

  1. Putting a timer on the approval task that runs every 15 minutes (does not interrupt the task)
  2. Having that call a workflow that looks up the process status in the other application and updates the variables
  3. Then going through an exclusive gateway to see if the status is canceled
    1. If the status is unchanged the path ends at an end event
    2. If the status is canceled then it calls a signal throw event
      1. The original approval task also has a signal catch event that is triggered that interrupts the approval task
      2. The path then goes to an end event
  4. The process looks like this:

 

My question is about the workload this puts on the Forms routing service and it's SQL database.  Is Forms designed to have this kind of frequent interaction done over long periods of time with hundreds, possibly thousands of forms functioning like this at once? 

In Laserfiche I would not write a scheduled workflow to run against one document at a time but instead would have it search for all that qualify and run against them all so that is is more efficient.  As we do not have the capability in Workflow to search Forms or to update the variables directly without being called first by Forms, I've not found another way to do this other than the way listed above.  Has anyone else found a more efficient process for updating variables across hundreds of Forms on a schedule?  Direct calls to SQL?

2 0

Replies

replied on July 26, 2019

I'm interested to hear how this worked out for you as I am in a similar situation with the exact same questions.  Did you implement as described or find a better way? Thanks

0 0
replied on July 28, 2019

It has worked well.  Initially, the version of Forms we were running (I can't remember the specific version) had an issue that every time a timer ran against the same task it would take a bit longer.  Thus for a task that ran the timer every 15 minutes for weeks, the related path the timer started would start out taking seconds and after several weeks would take hours to complete.  Laserfiche found that issue and fixed it (working in 10.3.1 and greater). 

We are only using this on one process but that process has hundreds of active instances at any time and has not caused any noticeable issues to Forms or Workflow.  I still have concerns on this if run across dozens of processes with thousands of instances.  My hope is that Laserfiche in future versions allows Workflow to directly interact with Forms without Forms needing to first call it.  Thus Workflow could:

  1. Query all Forms processes that are at a certain task
  2. Apply updates to the Forms variables as needed
  3. Approve/Reject a Form instance at a specific tasks
  4. Reassign a Form instance to a new person in the same task or a new task completely
1 0
replied on July 29, 2019

Thanks for the reply.  I have the same wish list. We are on Forms 10.3.1 and are looking to have about 600 active instances updating every 15 minutes.  My fear is that I don't know exactly how my workflow server will be impacted running a single workflow up to 600 times every 15 minutes.  I would have to build out the process and let it run and see what happens.  But the fact that you aren't noticing an impact really make me feel better about it. 

Thanks Again.

2 0
replied on September 26, 2019

Beau I have similar use case you and Eric.  Agree on your possible future uses of Workflow as being much more efficient.  What I'd like to know is what application are you checking for a status change?  Is it another currently running form?

0 0
replied on September 27, 2019

I am checking a 3rd party application independent of Laserfiche for the status change.  As we have this deployed at multiple customers, the 3rd party differs depending on what they use but we've had good results with this design.  I still hope to be able to handle this from a schedule workflow down the road but this works for now.

1 0
replied on September 30, 2019

Beau, thanks for letting me know it's a 3rd party application.  I have need of monitoring a completed form's status.  I'm working on a proof of concept on this now.

0 0
You are not allowed to follow up in this post.

Sign in to reply to this post.