ActionProcess Class

Represents a GlobalAction process in memory, containing properties, methods and classes for use in process manipulation.


public class ActionProcess : Process

Example

The following example logs the Database ID, Archive ID, and Document ID of the GlobalSearch document associated with the ActionProcess.

public class ExampleActionNode : ActionNode
{
    public override void Run()
    {
        LogHistory($"Database ID: {Process.Document.DatabaseId}");
        LogHistory($"Archive ID: {Process.Document.ArchiveId}");
        LogHistory($"Document ID: {Process.Document.DocumentId}");
    }
}

Remarks

Classes derived from ActionNode automatically have access to the executing process as an ActionProcess class. Additionally, ActionProcesses are potentially returned from methods that return a Process base class, such as GetProcessById or GetProcessesByProperty. This process may be casted to an ActionProcess like so:

var process = Database.GetProcessById(1);
if (process is ActionProcess actionProcess) 
{
    LogHistory($"Database ID: {actionProcess.Document.DatabaseId}");
    LogHistory($"Archive ID: {actionProcess.Document.ArchiveId}");
    LogHistory($"Document ID: {actionProcess.Document.DocumentId}");
}


Changes made to the Process class on CustomNode classes are saved automatically at the conclusion of the node.

Processes returned from methods are held in memory unless inserted or updated in the database using Database methods.

Properties

Represents the properties of a process, containing methods for getting and setting property values.

Represents the document of an ActionProcess, containing properties with GlobalAction document information.  Data loaded into this class by the Engine can be used to access specific details 

int Id

Id of the process.

ProcessType ProcessType

Type of the process.

dynamic Workflow

Dynamic object containing the workflow that this process is based on. Changes made to this object will not be saved. 



Methods