Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

Version 1 Next »

Base class from which Custom Nodes derive and define behavior.

public abstract class CustomNode

Example

The following example defines an ExampleNode class that implements a Run method which gets a first name and last name from a Process' properties, and sets a full name to a third "Full Name" property.

public class ExampleNode : CustomNode 
{
    public override void Run()
    {
        var firstName = Process.Properties.GetSingleValue("First Name");
        var lastName = Process.Properties.GetSingleValue("Last Name");
        var fullName = $"{firstName} {lastName}";
        Process.Properties.SetSingleProperty("Full Name", fullName);
    }
}

Remarks

In order for your custom node to execute code during engine runtime, a class must be created that successfully inherits and implements either the 162169038 class, or the ActionNode or CaptureNode class that corresponds with the workflow type in which your node is placed. 

Since the CustomNode class is product agnostic, the classes and helpers available on it are defined as tthe base, product agnostic classes as well. However, at runtime, the classes provided to these properties can be casted to their derived types, like so: 

public class ExampleNode : CustomNode
{
    public override void Run()
    {
        if (Process is CaptureProcess captureProcess)
            captureProcess.Document.ClearPages();
    }
}

If you are designing a custom import node that defines a CaptureImporter or ActionImporter class, defining a node class within your assembly is optional, and will run on the processes created from your custom import methods.

The NodeDirectory field refers to a folder containing the files within the .s9n file executing on the process. This folder exists only as long as the specific process is executing the custom node, and is deleted when the Custom Node is finished.

If a CustomNode class is defined and a Run method is implemented on a Custom Import node, the code within the Run method will execute independently on every process spawned as a result of the Import Method (ActionImporter) or Import Method (CaptureImporter). Utilize this pattern to save space when a custom importer must perform actions specific to the processes it creates.

Properties

Error rendering macro 'excerpt-include' : User 'null' does not have permission to view the page 'DEV:database class'.

Represents the executing engine, containing methods and properties pertaining to engine information.

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

Represents a node setting controlled by custom node interfaces within GlobalCapture.

Dictionary<string, string> Links 

List of available node links. You can move along these links by calling the SetNextNodeByLinkName function.

string NodeDirectory

Path to the directory containing files extracted from the custom node.

dynamic Workflow

Dynamic object containing the executing workflow. Changes made to this object will not be saved.

Methods

The method that will run when a CustomNode is called by the engine.

Sets the next node by link name.

Sets the next node by name.

Returns a strongly typed object deserialized from the JSON data in the node.config file included in the custom node .s9n file.

Logs a message to the process history.

  • No labels