Вы находитесь на странице: 1из 2

Alteryx API Developer Documentation

Introduction
The Alteryx API has three major sections of concern:
The starting point, where the assembly is loaded onto Alteryx.
The GUI portion, aka, the configuration presented to the user.
The engine portion, where most of the magic happens.
Architecture
Alteryx API has a pipe based architecture where data is pushed from one component to another with
the actual data encapsulated and a XML based meta information record. The actual data can be casted
using this meta information.
Types of plugins
Three types of plugins can be made in Alteryx. Input types of plugins can take in inputs but cannot push
data downstream.
Output plugins can push the entire data downstream but cannot take in inputs.
Pass through tools can take in inputs from upstream components and push data downstream as well.
The starting point
Execution starts from the class containing the GetEngineEntryPoint() function. The .dll assembly is
loaded in that function using reflection. This class has the following functions of concern:
GetEngineEntryPoint()
Function that initializes the plugin/tool. One can mention the starting class here. Although its a practice
to include all the other functions required for startup here, it is not mandatory.
GetConfigurationGui()
Returns a new object of the GUI.
GetInputConnections()
Tells Alteryx to initialize the tool for zero, one or more input connections.
GetOutputConnections()
Tells Alteryx to initialize the tool for zero, one or more output connections.

Component GUI
GetConfigurationControl()
Function used for:
Getting meta information from input data.
Setting meta information from previously saved configuration.
SaveResultsToXml()
Called to save the configuration when focus is removed.

Alteryx Engine
PI_Init()
Called to initialize the plugin with the passed configuration information at the GUI phase.
PI_AddIncomingConnection()
Describe the incoming connection. Whether one or more than one connection would come in can be
described here.
PI_AddOutgoingConnection()
Same as above but for outgoing connections.
PI_PushAllRecords()
Called to push all records together. Applicable only to input tools.
PI_Close()
Called to close connections.
ShowDebugMessages()
Boolean value to tell Alteryx whether or not to show debug messages.
II_Init()
Called to initialize the incoming connection, for each connection.
II_PushRecord()
Most important method. Most of the processing is done here. Data is pushed downstream using
PluginOutputConnectionHelper.PushRecord().
II_UpdateProgress()
Function used to show the progress.

Вам также может понравиться