ecl-logo Documentation

EnterProcedure

EnterProcedure[object]json

loads the procedure tasks for the given object onto the task stack.

Details

  • If no tasks have been executed, returns all nodes for the given type's procedure.
  • If tasks have been executed, returns only the yet-to-be-executed tasks remaining.
  • EnterProcedure must be called before calling NextTask.
  • Input
    Output

Examples

Basic Examples  (3)

If the ProcedureLog is empty, return the full task list for the procedure:

Prepend a CartSelection and OperatorSelection task to the tasks for the given procedure:

Sets ActiveInstrument on taskStack if given protocol has a value in the CurrentInstruments field:

Additional Examples  (14)

Sets ActiveInstrument on taskStack to Null if CurrentInstruments field is Null:

If in a subprotocol, populate the Subprotocols key in the task stack:

Append an Exit task to the tasks for the given procedure:

If all tasks in procedure are completed but protocol is not Completed, append Completion,Exit tasks:

Log EnterProcedure event:

Adds entrance to the ProtocolLog in the person operating the protocol:

If no tasks have started, return full task list for procedure:

If first task was started but not finished, return full task list for procedure:

If only task in main procedure is a branch, always add the completion task and exit task:

If only task in main procedure is a branch, and in a processing stage in the sub-procedure, always add storage processing, store all, completion, and exit tasks:

If last task executed is not found in the procedure definition, start with the last task that can be found:

If 3 tasks completed, return procedure nodes 4;;-1:

If last event is a branch, resume the first task in that branch:

If last event is a branch and that sub-procedure no longer exists, resume to the task after the branch:

Options  (1)

InSitu  (1)

When entering a processing procedure that has ExplicitPriorityReturn -> True, prepend a StartDangerzoneTask: