Custom Operators
The AX Migration Assistant extension helps you to convert your Alteryx workflows into Altair AI Studio workflows.
- The Installation Guide describes how to install the extension.
- The User Guide describes how to use the extension.
- This document describes custom operators that you can use when Altair AI Studio does not have an operator with functionality similar enough to the original Alteryx tool. These operators are included as part of the AX Migration Assistant extension.
Table of contents
The custom operators are listed below:
- Block Until Done
- BrowseV2
- Cleanse
- Directory
- Download
- Dynamic Rename
- Dynamic Select
- Join
- Join Multiple
- JSON Parse
- Message
- Multi-Field Formula
- Multi-Row Formula
- Python
- Running Total
- Sample
- Select
- Tile
There are also custom operators that are simply placeholders as they do not have any equivalent functionality in Altair AI Studio:
- Action
- Check Box Group
- Condition
- Date
- Drop Down
- File Browse
- Macro Output
- Output
- Portfolio Composer Image
- Portfolio Composer Layout
- Portfolio Composer Render
- Portfolio Composer Table
- Portfolio Composer Text
- Question Text Box
- Radio Button Group
- Sharepoint Input
- Sharepoint Output
- Tab
- Test
- Text Box
- Unknown
- Write Alteryx Database
- In-DB Tools:
- Aggregate
- Browse
- Connect
- Dynamic Input
- Dynamic Output
- Filter
- Generate Attributes
- Join
- Macro Input
- Macro Output
- Sample
- Select
- Stream In
- Stream Out
- Union
- Write Data
Block Until Done
Closest AI Studio function/operator: Changing Process Execution Order
This operator attempts to provide the same functionality as the Block Until Done tool in Alteryx. If you wish to see how this operator is built, right-click on the operator and choose "Open defining process".
Parameter | Options (default in bold) | Description | Optional (true/false) |
---|---|---|---|
no parameters | - | - | - |
Note 1: In the AI Studio implementation, the operator itself is a passthrough.
Note 2: Clicking the small 'multisquare' icon in the upper right corner of the Process panel will show the execution order of the process. See this Community Knowledge Base article for more information.
BrowseV2
Closest AI Studio function/operator: Connecting Operators to Results Port
This operator attempts to provide the same functionality as the Browse macro tool in Alteryx. If you wish to see how this operator is built, right-click on the operator and choose "Open defining process".
Parameter | Options (default in bold) | Description | Optional (true/false) |
---|---|---|---|
no parameters | - | - | - |
Note 1: In the AI Studio implementation, the operator itself is a passthrough. After the conversion from Alteryx, this operator is placed into the workflow with a breakpoint causing the process to pause at that point and show the results.
Note 2: One significant difference between Alteryx and AI Studio is the concept of a 'results port'. In AI Studio, any final result that you would normally view with a Browse tool is wired to these ports on the right side of the Process panel. If you want to view data somewhere before the final result, put a 'breakpoint' on the operator where you want the break (by either selecting the operator and hitting F7 on your keyboard, or right-click on the operator and select "Breakpoint After"). A red arrow will appear on the bottom of the operator. When you run the process, it will 'pause' the process flow at that point and show you the data in the Results view. To continue running the process, click the 'run' button again.
Cleanse
Closest AI Studio function/operator: Turbo Prep Auto Cleansing
This operator attempts to provide the same functionality as the Data Cleansing tool in Alteryx. If you wish to see how this operator is built, right-click on the operator and choose "Open defining process".
Parameter | Options (default in bold) | Description | Optional (true/false) |
---|---|---|---|
remove null rows | checkbox (on/off) | Removes all null rows | true |
remove null columns | checkbox (on/off) | Removes all null columns | true |
attribute list | list of attributes in “” quotes separated by , symbol | List of all attributes to be cleansed | true |
remove null blanks | checkbox (on/off) | Removes all null blanks | true |
remove null zeros | checkbox (on/off) | Removes all null zeros | true |
remove leading trailing whitespace | checkbox (on/off) | Removes leading and trailing whitespace | true |
remove tabs lbs dup whitespace | checkbox (on/off) | Removes tabs, line breaks, and duplicate whitespace | true |
remove all whitespace | checkbox (on/off) | Removes all whitespace | true |
remove letters | checkbox (on/off) | Removes letters | true |
remove numbers | checkbox (on/off) | Removes numbers | true |
remove punctuation | checkbox (on/off) | Removes punctuation | true |
modify case | checkbox (on/off) | Modifies the case of all letters | true |
case | upper, lower, title | The resulting case after modification | true |
Directory
Closest AI Studio function/operator: Loop Files
This operator attempts to provide the same functionality as the Directory tool in Alteryx. If you wish to see how this operator is built, right-click on the operator and choose “Open defining process”.
Parameter | Options (default in bold) | Description | Optional (true/false) |
---|---|---|---|
directory | path to directory | Defines the directory from where to start scanning for files | false |
filter by regex | regular expression | Specifies a regular expression which is used as filter for the file and directory names, e.g., a.*b for all files starting with 'a' and ending with 'b'. Ignored if empty. |
true |
recursive | checkbox (on/off) | Set whether to recursively search every directory. If set to true, the operator will include files inside sub-directories (and sub-sub-directories, etc.) of the selected directory. | true |
Download
Closest AI Studio function/operator: Open File
This operator attempts to provide the same functionality as the Download tool in Alteryx. If you wish to see how this operator is built, right-click on the operator and choose “Open defining process”.
Parameter | Options (default in bold) | Description | Optional (true/false) |
---|---|---|---|
url attribute name | any attribute name | The name of the attribute that contains the URL | false |
output mode | String, Specific File | Whether or not to put the result in a new attribute (called “DownloadData”) or as a blob | false |
encode url | checkbox (on/off) | Whether or not to encode the URL (always UTF-8) | true |
Note: This operator currently only performs “basic” queries. If you wish to perform more complex requests (e.g., POST, headers with cookies, etc..), we suggest you use the operators built for this purpose in the Web Mining extension.
Dynamic Rename
Closest AI Studio function/operator: Rename by Replacing
This operator attempts to provide the same functionality as the Dynamic Rename tool in Alteryx. If you wish to see how this operator is built, right-click on the operator and choose “Open defining process”.
Parameter | Options (default in bold) | Description | Optional (true/false) |
---|---|---|---|
attributes | list of attributes separated by the pipe (|) symbol. Default is all: . | List of all attributes to be renamed | false |
function description | macro name must always be named loop_attribute_new . function expression [any] |
The expression which should be used to rename. | false |
Note: The parameter "function_descriptions" will open a window with two columns: 'macro' and 'expression'. Do not edit the macro name (it should say loop_attribute_new
). This is needed to run the operator as expected. Enter your rename expression in the other 'expression' box only.
Dynamic Select
Closest AI Studio function/operator: Select Attributes with attribute_filter_type set to regular_expression
This operator attempts to provide the same functionality as the Dynamic Select tool in Alteryx. If you wish to see how this operator is built, right-click on the operator and choose “Open defining process”.
Parameter | Options (default in bold) | Description | Optional (true/false) |
---|---|---|---|
no parameters | - | - | - |
Note 1: This operator should be used exclusively for migration purposes. AI Studio data types are named differently (and are simpler).
Note 2: The Alteryx data types that are dynamically selected are: String, WString, V_String, V_WString, Date, Time, DateTime.
Closest AI Studio function/operator: Send Mail
This operator attempts to provide the same functionality as the Email tool in Alteryx. If you wish to see how this operator is built, right-click on the operator and choose “Open defining process".
Parameter | Options (default in bold) | Description | Optional (true/false) |
---|---|---|---|
attachment attribute flag | checkbox (on/off) | Whether or not to use an attribute as the file path of the “attachment” of the email | false |
attachment attribute name | file path | The name of the attribute that contains the file path of the “attachment” of the email | true |
attachment fixed value | file path | The fixed value for the file path of the “attachment” of the email | true |
body attribute flag | checkbox(on/off) | Whether or not to use an attribute as the “body” of the email | false |
body attribute name | text | The name of the attribute that contains the “body” of the email | true |
body fixed value | text | The fixed value for the “body” of the email | true |
from attribute flag | checkbox(on/off) | Whether or not to use an attribute as the “from” email address | false |
from attribute name | attribute with email addresses | The name of the attribute that contains the “from” address | true |
from fixed value | email address | The fixed value for the “from” address | true |
subject attribute flag | checkbox(on/off) | Whether or not to use an attribute as the “subject” of the email | false |
subject attribute name | text | The name of the attribute that contains the “subject” of the email | true |
subject fixed value | text | The fixed value for the “subject” of the email | true |
to attribute flag | checkbox(on/off) | Whether or not to use an attribute as the “to” email address | false |
to attribute name | attribute with email addresses | The name of the attribute that contains the “to” address | true |
to fixed value | email address | The fixed value for the “to” address | true |
Note 1: You must set up an Email Connection IOObject and connect it to the input of this operator in order for it to run. AI Studio does not accept SMTP credentials directly in this operator for security reasons.
Note 2: We strongly recommend learning how the native Email operator works in AI Studio and eventually replacing all converted workflows containing this custom operator with the native one.
Join
Closest AI Studio function/operator: Join
This operator attempts to provide the same functionality as the Join tool in Alteryx. If you wish to see how this operator is built, right-click on the operator and choose “Open defining process”.
Parameter | Options (default in bold) | Description | Optional (true/false) |
---|---|---|---|
left | key attribute | The left attribute join key | false |
right | key attribute | The right attribute join key | false |
attributes | field name, selected (True/False), rename. Default is Unknown, True, none. | Each row contains information about each attribute | false |
reorder | checkbox (on/off) | Indicates whether there was a reorder in the original Alteryx workflow | true |
Note: We recommend learning how the native Join operator works in AI Studio and eventually replacing all converted workflows containing this custom operator with the native one.
Join Multiple
Closest AI Studio function/operator: Join
This operator attempts to provide the same functionality as the Join Multiple tool in Alteryx. If you wish to see how this operator is built, right-click on the operator and choose “Open defining process”.
Parameter | Options (default in bold) | Description | Optional (true/false) |
---|---|---|---|
attributes | attributes | The attributes which should be selected for the output port | false |
join key 1 | key attribute | The name of the join key attribute from input 1 | false |
join key 2 | key attribute | The name of the join key attribute from input 2 | false |
join key 3 | key attribute | The name of the join key attribute from input 3 | true |
join key 4 | key attribute | The name of the join key attribute from input 4 | true |
join key 5 | key attribute | The name of the join key attribute from input 5 | true |
Note 1: This operator does not implement any Cartesian warnings.
Note 2: This operator does not provide an option to only output rows from all inputs.
Note 3: This operator accepts a fixed limit of five inputs.
JSON Parse
Closest AI Studio function/operator: Data to JSON in the Text Processing extension
This operator attempts to provide the same functionality as the JSONParse tool in Alteryx. If you wish to see how this operator is built, right-click on the operator and choose “Open defining process”.
Parameter | Options (default in bold) | Description | Optional (true/false) |
---|---|---|---|
json field | text | The attribute name macro value defined by the user. | false |
include in output | checkbox(on/off) | Whether or not to include the original JSON text column as output. | true |
Message
Closest AI Studio function/operator: Log or Print to Console
This operator attempts to provide the same functionality as the Message tool in Alteryx. If you wish to see how this operator is built, right-click on the operator and choose “Open defining process”.
Parameter | Options (default in bold) | Description | Optional (true/false) |
---|---|---|---|
filter expression | attribute name must always be named filter . function expressions [any] |
The expression which should be used to rename. | false |
message type | text | Type of message to display (eg. Warning). | true |
Note: We recommend opening the defining process and modifying it to match the functionality of the original Alteryx workflow using native AI Studio functionality.
Multi-Field Formula
Closest AI Studio function/operator: Generate Attributes
This operator attempts to provide the same functionality as the Multi-Field Formula tool in Alteryx. If you wish to see how this operator is built, right-click on the operator and choose “Open defining process”.
Parameter | Options (default in bold) | Description | Optional (true/false) |
---|---|---|---|
attributes | selected attributes | The attribute(s) that should be chosen. | false |
new field add on pos text | [any text can be used; default is New_] | The new attribute text to be appended to the existing name. | true |
new field add on pos | Prefix, Suffix | The position of the new attribute text. | true |
expression | any valid expression | The expression to be applied to the new attribute. | false |
Multi-Row Formula
Closest AI Studio function/operator: Lag
This operator attempts to provide the same functionality as the Multi-Row Formula tool in Alteryx. If you wish to see how this operator is built, right-click on the operator and choose "Open defining process".
Parameter | Options (default in bold) | Description | Optional (true/false) |
---|---|---|---|
num rows | Integer, default is 1 | The number of rows (lag) to be used (e.g. -1 or 1) | true |
update attribute | True, False | Whether or not to update an existing attribute | true |
update attribute name | any string | The name of the updated attribute | true |
create attribute name | any string | The name of the newly created attribute (only used if update attribute is set to False) | true |
expression | any valid expression | The expression (formula) to be applied | true |
Python
Closest AI Studio function/operator: Execute Python
This operator attempts to provide the same functionality as the Python tool in Alteryx. The only difference between this custom operator compared the standard Execute Python operator in AI Studio is that this custom operator decodes the UTF-8 characters that often appear in Alteryx workflow XMLs. If you wish to see how this operator is built, right-click on the operator and choose "Open defining process".
Parameter | Options (default in bold) | Description | Optional (true/false) |
---|---|---|---|
script | text | The Python script as text. | false |
data management | auto, memory-optimized, speed-optimized | The data management optimization to use. Determines how the data is represented internally. The auto option (default) only compresses data if it is very sparse and otherwise optimizes for speed. Choose speed-optimized if you have enough memory and want to speed up your process. Choose memory-optimized if you have a lot of sparse data that has trouble fitting into memory with auto mode. | true |
notebook cell tag filter | filter expresssion | Only for IPython Notebook (*.ipynb) files. Interpret only the cells tagged with this label. You can also provide a regular expression here. Regular expression 'r' will be extended to '^(r)$'. Interpret all cells if no tag specified here. | true |
use default python | checkbox(on/off) | Use the default environment, as specified in the Preferences. | true |
Running Total
Closest AI Studio function/operator: Integrate
This operator attempts to provide the same functionality as the Running Total tool in Alteryx. If you wish to see how this operator is built, right-click on the operator and choose "Open defining process".
Parameter | Options (default in bold) | Description | Optional (true/false) |
---|---|---|---|
group attributes | attribute name: must always be named Value attributes: list separated by | symbol. Default is att_2|att_3 |
The attributes to be grouped. | true |
running total attributes | list of attributes separated by | symbol. Default is att_1 | The attributes to be summed. | false |
Sample
Closest AI Studio function/operator: Sample
This operator attempts to provide the same functionality as the Sample tool in Alteryx. If you wish to see how this operator is built, right-click on the operator and choose "Open defining process".
Parameter | Options (default in bold) | Description | Optional (true/false) |
---|---|---|---|
mode | text options are First, Last, Skip | The sampling mode to use. | false |
n | integer ≥ 0; default is 100 | The number of rows. | false |
group by attributes | String of name of attribute. | Attribute in dataset to group by. (Only the option to group by a single attribute is available) | true |
Select
Closest AI Studio function/operator: Select Attributes
This operator attempts to provide the same functionality as the Select tool in Alteryx. If you wish to see how this operator is built, right-click on the operator and choose "Open defining process".
Parameter | Options (default in bold) | Description | Optional (true/false) |
---|---|---|---|
attributes | text with each row in format: field, selected (True/False), rename (optional), type (optional). Default is Unknown, True, none, none | The attributes to be selected, renamed and have a type set for. | false |
reorder | checkbox (on/off) | Whether or not this was a reorder of attributes in the original Alteryx workflow | true |
Tile
Closest AI Studio function/operator: Generate Session ID in the Operator Toolbox extension
This operator attempts to provide the same functionality as the Tile tool in Alteryx. If you wish to see how this operator is built, right-click on the operator and choose "Open defining process".
Parameter | Options (default in bold) | Description | Optional (true/false) |
---|---|---|---|
cutoffs | class names: string upper limit: real |
Upper limit of each cutoff (for manual method only) | true |
method | EqualRecords, EqualSum, SmartTile, Manual, UniqueValue | Tile method | false |
attribute | attribute name | The grouping attribute for EqualSum, SmartTile, Manual, or UniqueValue | false |
group count | integer ≥ 0; default is 5 | The number of groups you wish to create. | true |
Note: If you wish to cover the full set of real numbers in your cutoff ranges, you should use the word "Infinity" for the last cutoff upper limit.