Scripting Contexts and Implicit Objects

Scripting contexts are points at which scripting may be used. While the language used in these contexts is the same (and hence the predefined functions available are the same), the implicit objects provided differ between the contexts.

REL Contexts

Substitution Parameters and REL Contexts

In fields that support REL expressions you can specify the substitution parameters using either REL variables or Ant syntax, the latter inside string literals. Note that the substitution parameters will be replaced after the REL expression has been evaluated; this means that REL will only see the substitution parameter names, not their values.

Example

In the Subject field of an email sent for a process server alert, the following expression has been specified:

='Process Server ${ProcessServer} went from ${oldStatus} to ${newStatus} at ' + Time.now()

This will first be evaluated as REL:

Process Server ${ProcessServer} went from ${oldStatus} to ${newStatus} at 12:00:00pm Tuesday 22 September 2015

Then the Ant substitutions are applied:

Process Server MSLN_UNIXS3 went from Running to PartiallyRunning at 12:00:00pm Tuesday 22 September 2015

This expression can also also be specified using REL syntax only:

='Process Server '+ProcessServer+' went from '+oldStatus+' to '+newStatus+' at ' + Time.now()

Since the Ant substitution is performed after the REL expression has been evaluated, the following example will not return UNIXS3 but cessServer} instead:

=String.substring('${ProcessServer}', 5)

AdHocAlertSource

  • alertSourceType (String) - Alert Source Type
  • alertSourceUniqueId (String) - Alert Source Unique Id
  • chainJobId (String) - The job id of the current job chain
  • chainQueue (String) - The queue of the current job chain
  • data (String) - The data associated with the current job or process server check
  • jobDefinition (String) - The name of the job definition of the current job
  • jobDescription (String) - The description of the current job
  • jobId (Number) - The job id of the current job
  • parentJobId (Number) - The job id of the current job's parent
  • partition (String) - The partition the object is in
  • queue (String) - The name of the queue of the current job
  • topLevelJobId (String) - The job id of the top level job in the chain
  • topLevelQueue (String) - The queue of the top level job in the chain

AlertGateway

    CallSchedulingParameter

    • $ (String) - The default partition used by the current object
    • chainJobId (String) - The job id of the current job chain
    • chainOutParameters (OutParametersScriptObject) - The values of output parameters of inner-most job chain
    • chainParameters (InParametersScriptObject) - The values of input parameters of inner-most job chain
    • chainQueue (String) - The queue of the current job chain
    • chainRequestedStartTime (DateTimeZone) - Job chain requested start time
    • chainRunStartTime (DateTimeZone) - Job chain run start time
    • jobId (Number) - The job id of the current job
    • parameters (InParametersScriptObject) - The values of input parameters of current job
    • parentJobId (Number) - The job id of the current job's parent
    • queue (String) - The name of the queue of the current job
    • stepIterations (Number) - The number of iterations of this step
    • topLevelJobId (String) - The job id of the top level job in the chain
    • topLevelQueue (String) - The queue of the top level job in the chain

    ConstraintLOV

    • $ (String) - The default partition used by the current object
    • parameters (InParametersScriptObject) - The values of input parameters of current job
    • value (Object) - Value of the parameter or process server check result

    DefaultParameter

    • $ (String) - The default partition used by the current object
    • jobDefinition (String) - The name of the job definition of the current job
    • jobId (Number) - The job id of the current job
    • parameters (InParametersScriptObject) - The values of input parameters of current job
    • parentJobId (Number) - The job id of the current job's parent
    • queue (String) - The name of the queue of the current job
    • username (String) - The name of the current user
    • waitEvents (JobWaitEventsScriptObject) - The wait event object

    ForecastCallPrecondition

    • chainJobId (String) - The job id of the current job chain
    • chainOutParameters (OutParametersScriptObject) - The values of output parameters of inner-most job chain
    • chainParameters (InParametersScriptObject) - The values of input parameters of inner-most job chain
    • chainQueue (String) - The queue of the current job chain
    • jobId (Number) - The job id of the current job
    • now (Long) - Override for current time in UTC milliseconds
    • parameters (InParametersScriptObject) - The values of input parameters of current job
    • parentJobId (Number) - The job id of the current job's parent
    • queue (String) - The name of the queue of the current job
    • stepIterations (Number) - The number of iterations of this step
    • topLevelJobId (String) - The job id of the top level job in the chain
    • topLevelQueue (String) - The queue of the top level job in the chain

    ForecastStepPrecondition

    • chainJobId (String) - The job id of the current job chain
    • chainOutParameters (OutParametersScriptObject) - The values of output parameters of inner-most job chain
    • chainParameters (InParametersScriptObject) - The values of input parameters of inner-most job chain
    • chainQueue (String) - The queue of the current job chain
    • jobId (Number) - The job id of the current job
    • now (Long) - Override for current time in UTC milliseconds
    • parentJobId (Number) - The job id of the current job's parent
    • queue (String) - The name of the queue of the current job
    • stepIterations (Number) - The number of iterations of this step
    • topLevelJobId (String) - The job id of the top level job in the chain
    • topLevelQueue (String) - The queue of the top level job in the chain

    GotoStepEvaluation

    • jcsJob (Job) - Object representing the current job.
    • jobId (Number) - The job id of the current job
    • outParameters (OutParametersScriptObject) - The values of output parameters of current job
    • parameters (InParametersScriptObject) - The values of input parameters of current job
    • parentJobId (Number) - The job id of the current job's parent
    • userMessage (MapScriptObject) - User message response instance expression values

    JobChainCallPrecondition

    • $ (String) - The default partition used by the current object
    • callJobId (String) - The job id of the current job chain call
    • callUniqueId (String) - The unique id of the current job chain call definition
    • chainJobId (String) - The job id of the current job chain
    • chainOutParameters (OutParametersScriptObject) - The values of output parameters of inner-most job chain
    • chainParameters (InParametersScriptObject) - The values of input parameters of inner-most job chain
    • chainQueue (String) - The queue of the current job chain
    • jobId (Number) - The job id of the current job
    • parameters (InParametersScriptObject) - The values of input parameters of current job
    • parentJobId (Number) - The job id of the current job's parent
    • queue (String) - The name of the queue of the current job
    • stepIterations (Number) - The number of iterations of this step
    • stepJobId (String) - The job id of the current job chain step
    • stepUniqueId (String) - The unique id of the current job chain step definition
    • topLevelJobId (String) - The job id of the top level job in the chain
    • topLevelQueue (String) - The queue of the top level job in the chain

    JobChainInExpression

    • $ (String) - The default partition used by the current object
    • chainJobId (String) - The job id of the current job chain
    • chainOutParameters (OutParametersScriptObject) - The values of output parameters of inner-most job chain
    • chainParameters (InParametersScriptObject) - The values of input parameters of inner-most job chain
    • chainQueue (String) - The queue of the current job chain
    • jobId (Number) - The job id of the current job
    • parameters (InParametersScriptObject) - The values of input parameters of current job
    • parentJobId (Number) - The job id of the current job's parent
    • queue (String) - The name of the queue of the current job
    • stepIterations (Number) - The number of iterations of this step
    • topLevelJobId (String) - The job id of the top level job in the chain
    • topLevelQueue (String) - The queue of the top level job in the chain

    JobChainStepPrecondition

    • chainJobId (String) - The job id of the current job chain
    • chainOutParameters (OutParametersScriptObject) - The values of output parameters of inner-most job chain
    • chainParameters (InParametersScriptObject) - The values of input parameters of inner-most job chain
    • chainQueue (String) - The queue of the current job chain
    • jobId (Number) - The job id of the current job
    • parentJobId (Number) - The job id of the current job's parent
    • queue (String) - The name of the queue of the current job
    • stepIterations (Number) - The number of iterations of this step
    • stepJobId (String) - The job id of the current job chain step
    • stepUniqueId (String) - The unique id of the current job chain step definition
    • topLevelJobId (String) - The job id of the top level job in the chain
    • topLevelQueue (String) - The queue of the top level job in the chain

    JobDefinitionAlertSource

    • alertSourceType (String) - Alert Source Type
    • alertSourceUniqueId (String) - Alert Source Unique Id
    • chainJobId (String) - The job id of the current job chain
    • chainQueue (String) - The queue of the current job chain
    • jobDefinitionOwner (String) - The owner of the job definition of the current job
    • jobDescription (String) - The description of the current job
    • jobId (Number) - The job id of the current job
    • jobOwner (String) - The owner of the current job
    • newStatus (String) - The new status
    • oldStatus (String) - The old status
    • outParameters (OutParametersScriptObject) - The values of output parameters of current job
    • parameters (InParametersScriptObject) - The values of input parameters of current job
    • parentJobId (Number) - The job id of the current job's parent
    • partition (String) - The partition the object is in
    • queue (String) - The name of the queue of the current job
    • remoteStatus (String) - The status of the remote service
    • returnCode (Number) - The return code of current job
    • topLevelJobId (String) - The job id of the top level job in the chain
    • topLevelQueue (String) - The queue of the top level job in the chain

    JobDefinitionRuntimeLimit

    • averageRuntime (Number) - The average runtime of the current job
    • jobId (Number) - The job id of the current job
    • parameters (InParametersScriptObject) - The values of input parameters of current job
    • requestedStartTime (DateTimeZone) - The requested starttime of the current job
    • scheduledStartTime (DateTimeZone) - The scheduled starttime of the current job
    • standardDeviationRuntime (Number) - The standard deviation of the runtimes of the job definition of the current job
    • topLevelAgerageRuntime (Number) - The estimated runtime of the top level job in the chain
    • topLevelJobId (String) - The job id of the top level job in the chain
    • topLevelRequestedStartTime (DateTimeZone) - The requested starttime of the top level job in the chain
    • topLevelScheduledStartTime (DateTimeZone) - The scheduled starttime of the top level job in the chain
    • topLevelStandardDeviationRuntime (Number) - The standard deviation of the runtimes of the job definition of the top level job in the chain

    JobEvent

    • $ (String) - The default partition used by the current object
    • callJobId (String) - The job id of the current job chain call
    • callUniqueId (String) - The unique id of the current job chain call definition
    • chainJobId (String) - The job id of the current job chain
    • chainOutParameters (OutParametersScriptObject) - The values of output parameters of inner-most job chain
    • chainParameters (InParametersScriptObject) - The values of input parameters of inner-most job chain
    • chainQueue (String) - The queue of the current job chain
    • eventDefinition (String) - The name of the event definition being raised or waited for
    • jobId (Number) - The job id of the current job
    • parameters (InParametersScriptObject) - The values of input parameters of current job
    • parentJobId (Number) - The job id of the current job's parent
    • queue (String) - The name of the queue of the current job
    • stepIterations (Number) - The number of iterations of this step
    • stepJobId (String) - The job id of the current job chain step
    • stepUniqueId (String) - The unique id of the current job chain step definition
    • topLevelJobId (String) - The job id of the top level job in the chain
    • topLevelQueue (String) - The queue of the top level job in the chain

    JobSearch

    • $ (String) - The default partition used by the current object
    • line (String) - The string found by the File Search
    • partition (String) - The partition the object is in

    MailJob

    • jcsJob (Job) - Object representing the current job.
    • parameters (InParametersScriptObject) - The values of input parameters of current job

    MonitorAlertSource

    • alertSourceType (String) - Alert Source Type
    • alertSourceUniqueId (String) - Alert Source Unique Id
    • data (String) - The data associated with the current job or process server check

    MonitorCondition

      OSNativeParameter

      • jobId (Number) - The job id of the current job
      • osFamily (String) - The OS Family of the Process Server
      • parameters (InParametersScriptObject) - The values of input parameters of current job
      • parentJobId (Number) - The job id of the current job's parent
      • queue (String) - The name of the queue of the current job

      ProcessMonitorEvaluation

      ProcessServerAlertSource

      • alertSourceType (String) - Alert Source Type
      • alertSourceUniqueId (String) - Alert Source Unique Id
      • newStatus (String) - The new status
      • oldStatus (String) - The old status
      • partition (String) - The partition the object is in
      • processServer (String) - The name of the process server for the current job or process server check

      ProcessServerCheckAlertSource

      • alertSourceType (String) - Alert Source Type
      • reactionJobDefinition (String) - The name of the job defition launched in reaction
      • reactionJobDefinitionUniqueId (String) - The unique Id of the job definition launched in reaction

      ReportColumnEvaluation

      ReportPreviewDefaultParameter

      • jobId (Number) - The job id of the current job
      • parameters (InParametersScriptObject) - The values of input parameters of current job
      • parentJobId (Number) - The job id of the current job's parent
      • queue (String) - The name of the queue of the current job

      ReportSelectionEvaluation

      ReturnCodeMapping

      SAPMassActivityParameter

      • jobId (Number) - The job id of the current job
      • parameters (InParametersScriptObject) - The values of input parameters of current job
      • parentJobId (Number) - The job id of the current job's parent
      • queue (String) - The name of the queue of the current job

      Simple

      • $ (String) - The default partition used by the current object
      • partition (String) - The partition the object is in

      RedwoodScript Contexts

      This section lists the implicit objects available.

      AlertEscalationPostAlertAction

      • jcsAlertEscalationPostAlertContext (AlertEscalationPostAlertActionScriptObject) - The alert escalation action context
      • jcsExecutorContext (ExecutorContext) - jcsExecutorContext.description
      • jcsOutLog (Logger) - Standard out logger.
      • jcsSession (SchedulerSession) - Central interface for retrieving and creating all of the Scheduler objects. You must set the ActionSubject in some contexts to be able to access the SchedulerSession.

      AlertSourcePostAlertAction

      • jcsAlertSourcePostAlertContext (AlertSourcePostAlertActionScriptObject) - The alert source action context
      • jcsExecutorContext (ExecutorContext) - jcsExecutorContext.description
      • jcsOutLog (Logger) - Standard out logger.
      • jcsSession (SchedulerSession) - Central interface for retrieving and creating all of the Scheduler objects. You must set the ActionSubject in some contexts to be able to access the SchedulerSession.

      EmailAlertGatewayPreSendAction

      • jcsEmailAlertGatewayPreSendActionContext (EmailAlertGatewayPreSendActionScriptObject) - The email alert gateway presend action context
      • jcsExecutorContext (ExecutorContext) - jcsExecutorContext.description
      • jcsOutLog (Logger) - Standard out logger.
      • jcsSession (SchedulerSession) - Central interface for retrieving and creating all of the Scheduler objects. You must set the ActionSubject in some contexts to be able to access the SchedulerSession.

      ExtensionPoint

      ImportAction

      • jcsErrLog (Logger) - Standard error logger.
      • jcsExecutorContext (ExecutorContext) - jcsExecutorContext.description
      • jcsImportRuleSet (ImportActionScriptObject) - The import action context
      • jcsJobContext (UserJobContext) - Job context for user defined jobs.
      • jcsOutLog (Logger) - Standard out logger.
      • jcsSession (SchedulerSession) - Central interface for retrieving and creating all of the Scheduler objects. You must set the ActionSubject in some contexts to be able to access the SchedulerSession.
      • jcsTargetPartition (Partition) - The (optional) target partition passed to the import

      JobFileAccessTrigger

      • jcsExecutorContext (ExecutorContext) - jcsExecutorContext.description
      • jcsFileAccessMethod (JobFileAccessMethod) - The access method being called
      • jcsJobFile (JobFile) - The job file being requested
      • jcsOutLog (Logger) - Standard out logger.
      • jcsSession (SchedulerSession) - Central interface for retrieving and creating all of the Scheduler objects. You must set the ActionSubject in some contexts to be able to access the SchedulerSession.
      • jcsSubject (Subject) - The subject of the callee
      • jcsTriggerContext (TriggerScriptObject) - The trigger context
      • jcsUserSession (SchedulerSession) - jcsUserSession.description

      NativeJavaJob

      ObjectDefinitionChangeTrigger

      • jcsExecutorContext (ExecutorContext) - jcsExecutorContext.description
      • jcsOutLog (Logger) - Standard out logger.
      • jcsSession (SchedulerSession) - Central interface for retrieving and creating all of the Scheduler objects. You must set the ActionSubject in some contexts to be able to access the SchedulerSession.
      • jcsTriggerContext (TriggerScriptObject) - The trigger context

      OnBeforeObjectDefinitionChangeTypeAction

      OnBeforeUserJobChangeAction

      • jcsExecutorContext (ExecutorContext) - jcsExecutorContext.description
      • jcsJob (Job) - Object representing the current job.
      • jcsOnBeforeUserChangeContext (OnBeforeUserJobChangeActionScriptObject) - The on before user process change context
      • jcsOut (PrintWriter) - Standard out.
      • jcsOutLog (Logger) - Standard out logger.
      • jcsSession (SchedulerSession) - Central interface for retrieving and creating all of the Scheduler objects. You must set the ActionSubject in some contexts to be able to access the SchedulerSession.
      • jcsUserSession (SchedulerSession) - jcsUserSession.description

      OnChangeAction

      • jcsExecutorContext (ExecutorContext) - jcsExecutorContext.description
      • jcsJob (Job) - Object representing the current job.
      • jcsOnChangeContext (PreExecutingActionScriptObject) - The on change context
      • jcsOut (PrintWriter) - Standard out.
      • jcsOutLog (Logger) - Standard out logger.
      • jcsSession (SchedulerSession) - Central interface for retrieving and creating all of the Scheduler objects. You must set the ActionSubject in some contexts to be able to access the SchedulerSession.

      OnUserMessageOperationAction

      • jcsExecutorContext (ExecutorContext) - jcsExecutorContext.description
      • jcsJob (Job) - Object representing the current job.
      • jcsOutLog (Logger) - Standard out logger.
      • jcsSession (SchedulerSession) - Central interface for retrieving and creating all of the Scheduler objects. You must set the ActionSubject in some contexts to be able to access the SchedulerSession.
      • jcsUserMessageOperationContext (OnUserMessageOperationActionScriptObject) - The on user operation context

      PeriodFunction

      • jcsSession (SchedulerSession) - Central interface for retrieving and creating all of the Scheduler objects. You must set the ActionSubject in some contexts to be able to access the SchedulerSession.

      PostRunningAction

      • jcsExecutorContext (ExecutorContext) - jcsExecutorContext.description
      • jcsJob (Job) - Object representing the current job.
      • jcsOut (PrintWriter) - Standard out.
      • jcsOutLog (Logger) - Standard out logger.
      • jcsPostRunningContext (PostRunningActionScriptObject) - The post running context
      • jcsSession (SchedulerSession) - Central interface for retrieving and creating all of the Scheduler objects. You must set the ActionSubject in some contexts to be able to access the SchedulerSession.

      PreRunningAction

      • jcsExecutorContext (ExecutorContext) - jcsExecutorContext.description
      • jcsJob (Job) - Object representing the current job.
      • jcsOut (PrintWriter) - Standard out.
      • jcsOutLog (Logger) - Standard out logger.
      • jcsPreRunningContext (PreExecutingActionScriptObject) - The pre running context
      • jcsSession (SchedulerSession) - Central interface for retrieving and creating all of the Scheduler objects. You must set the ActionSubject in some contexts to be able to access the SchedulerSession.

      ScriptJob

      • jcsErr (PrintWriter) - Standard error.
      • jcsErrLog (Logger) - Standard error logger.
      • jcsExecutorContext (ExecutorContext) - jcsExecutorContext.description
      • jcsJob (Job) - Object representing the current job.
      • jcsJobContext (UserJobContext) - Job context for user defined jobs.
      • jcsOut (PrintWriter) - Standard out.
      • jcsOutLog (Logger) - Standard out logger.
      • jcsSession (SchedulerSession) - Central interface for retrieving and creating all of the Scheduler objects. You must set the ActionSubject in some contexts to be able to access the SchedulerSession.

      Shell

      • jcsErr (PrintWriter) - Standard error.
      • jcsErrLog (Logger) - Standard error logger.
      • jcsExecutorContext (ExecutorContext) - jcsExecutorContext.description
      • jcsJob (Job) - Object representing the current job.
      • jcsOut (PrintWriter) - Standard out.
      • jcsOutLog (Logger) - Standard out logger.
      • jcsSession (SchedulerSession) - Central interface for retrieving and creating all of the Scheduler objects. You must set the ActionSubject in some contexts to be able to access the SchedulerSession.
      • jcsShell (Shell) - A shell