È possibile impostare la variabile timer.date di un elemento Timer in attesa su una data e un'ora relative associandolo a un oggetto Date. È possibile definire l'oggetto Date in una funzione controllata da script.

Quando arriva l'ora della data indicata, il workflow con esecuzione prolungata basato su timer si riattiva e continua la sua esecuzione. Ad esempio, è possibile impostare la riattivazione del workflow a mezzogiorno del 12 febbraio. In alternativa, è possibile creare un elemento workflow che calcoli e generi un oggetto Date relativo in base a una funzione definita. È ad esempio possibile creare un oggetto Date relativo che aggiunga 24 ore all'ora corrente.

Prerequisiti

  • Creare un workflow.
  • Aprire il workflow per la modifica nell'editor dei workflow.
  • Aggiungere alcuni elementi allo schema del workflow.

Procedura

  1. Trascinare un elemento Attività gestibile tramite script dal menu Generico nel riquadro sinistro allo schema del workflow e posizionarlo prima dell'elemento che richiede l'oggetto Date relativo per la variabile timeout.date.
  2. Fare clic sull'elemento Attività gestibile tramite script.
  3. Immettere un nome e una descrizione per l'elemento del workflow controllato da script nella scheda delle proprietà Dettagli nel riquadro destro.
  4. Nella scheda delle proprietà Input/Output, creare una variabile del workflow.
    1. Assegnare alla variabile il nome timerDate.
    2. Selezionare Date nell'elenco dei tipi di variabile.
    3. Lasciare vuota la casella di testo del valore della variabile. Questo valore viene fornito da una funzione controllata da script.
    4. Fare clic su Crea.
  5. Fare clic sulla scheda Scripting per l'elemento del workflow controllato da script.
  6. Definire una funzione per calcolare e generare un oggetto Date denominato timerDate nel pad di scripting nella scheda Scripting.

    Ad esempio, è possibile creare un oggetto Date implementando la seguente funzione JavaScript, in cui il periodo di timeout è un ritardo relativo espresso in millisecondi.

    timerDate = new Date();
    System.log( "Current date : '" + timerDate + "'" );
    timerDate.setTime( timerDate.getTime() + (86400 * 1000) );
    System.log( "Timer will expire at '" + timerDate + "'" );

    La funzione JavaScript dell'esempio precedente definisce un oggetto Date che ottiene la data e l'ora correnti utilizzando il metodo getTime e aggiunge 86.400.000 millisecondi o 24 ore. L'elemento Attività gestibile tramite script genera questo valore come parametro di output.

  7. Fare clic su Salva e confermare la selezione.

risultati

È stata creata una funzione che calcola e genera un oggetto Date. Un elemento Timer in attesa può ricevere questo oggetto Date come parametro di input, per sospendere un workflow con esecuzione prolungata fino alla data incorporata in questo oggetto. Quando il workflow arriva all'elemento Timer di attesa, sospende la sua esecuzione e attende 24 ore prima di continuare.

Operazioni successive

È necessario aggiungere un elemento Timer in attesa a un workflow per implementare un workflow con esecuzione prolungata basato su timer.