1 Reply Latest reply on Jan 28, 2017 6:30 AM by Donato Marrazzo

    Creating a timer subprocess

    Fernando Pena Cantu Newbie

      Hello, I am trying to create a timer sub process. I am new to Jbpm thus I will explain what I am trying to accomplish and see if there is a way to do that in Jboss bpm suit.

       

      I edited this message because the explanation of what I was trying to accomplish was messy and confusing.

       

      So my current business process is looking like this:

      Busines process.PNG

       

      So what I want to accomplish is to send a notification to someone (for now it does not matter who or how it does it it could just be a script task) if the catching intermediate event signal has not caught a signal in X amount of time.

      This should be a accomplish by a process which for now lets call it the "Timer process".

       

      Requirements of the "Timer Process":

      1. The "Timer Process" should be started by the Start Timer Signal.

      2.  It must send a notification after X amount of time.

      3. The amount of the which the "Timer Process" waits before sending a notification should come form the Start Timer signal. Depending of the information which the  start timer signal sends the timer should wait different amount of times.

      4. The "Timer Process" should not send a notification if the Caught Signal is received before the X amount of time has passed.

      5. the "Timer Process" must be able of handling multiple request and should send the appropriate notification to each request. Example :

      2 Signals.PNG

      In this business process we have 2 incoming signals. the "Timer Process" should be able to handle both of this incoming signals, without the process of one affecting the process of the other.

       

      Do you know I can use a sub process to create something like this?

       

      Also do you guys know how I can send information by using a signal?

      I thought I would just give the assigned the appropriate variable to each signal (the throwing intermediate events signal and the start event Signal ).

      Like this :

      for the start timer signal (throwing intermediate events signal)

      Variable start timer.PNG

      and for the start even signal

      start timer enven variable.PNG

       

      However when I do this I get this error:

      variable error.PNG

      Thanks for the answers.

        • 1. Re: Creating a timer subprocess
          Donato Marrazzo Newbie

          Hello Fernando,

           

          It's not easy to understand the context and give an advise, you should add more description and a picture of the process.

          If you talk about Human Task, I suggest you to consider the Task Escalation capability.

           

          Chapter 12. Human Tasks Management - Red Hat Customer Portal

           

          Signals usually arrives from external system in an automated fashion, so usually you don't need to notify humans about them.

          But, I suspect that you want to alert a sort of system administrator if something wrong happens and a signal will not arrive on time.

          In this case, I don't think that you could generalize the signal handling because for different situation there should be different "service level agreement" in other words different delays.

          So I suggest to set process by process, signal by signal a timer event.

          You can generalize a bit for classes of interactions, using a subprocess that deal the communication with the external system and defines a general pattern to handle to delays.

           

          This a good book:

          Mastering jBPM6 | PACKT Books