And | Returns true if all terms are true |
ArrayConcat | Concatenates arrays or streams of entities |
ArrayDistinct | Removes duplicate elements in an array or entities in an entity stream. By default, all entity properties are used to determine duplicates. This behaviour can be changed by using the KeySelector parameter. |
ArrayElementAtIndex | Gets the array element at a particular index. The first element has an index of 0. |
ArrayFilter | Filter an array or entity stream using a conditional statement |
ArrayFind | Gets the first index of an element in an array. The index starts at 0. Returns -1 if the element is not present. |
ArrayFirst | Gets the first element of an array or entity stream |
ArrayGroupBy | Group elements in an array or entities in a stream using a function. Entities in the resulting array will have two properties Key and Values . The Key will be set according to the result of the function. |
ArrayIsEmpty | Checks if an array is empty. |
ArrayLast | Gets the last element of an array or entity stream |
ArrayLength | Counts the elements in an array or entities in an entity stream. |
ArrayMap | Map each element of an array or entity stream to a new value. This Step can be used to update elements of an array, or to update entity property values. The new value must have the same type as the original value. |
ArrayNew | Represents an ordered collection of objects. |
ArrayReverse | Reverse the order of elements in an array |
ArraySkip | Skip the first n elements of an array or entity stream |
ArraySort | Reorder an array or entity stream |
ArrayTake | Take the first n elements of an array or entity stream |
AssertEqual | Asserts that two objects are equal. Both objects must have the same type. |
AssertError | Returns success if the ValueIf step returns an error and a failure otherwise. |
AssertTrue | Returns an error if the nested step does not return true. |
CharAtIndex | Gets the letter that appears at a specific index. First letter is at index 0. |
Clone | Creates an array by cloning an element. |
ConvertSizeUnits | Convert a string representing a data size to a string representing the same size but with different units. |
DateToString | Converts a date to the specified format, yyyy/MM/dd HH:mm:ss by default. If no date is specified, uses the current date and time. |
Delay | Delay for a specified amount of time |
Divide | Divide an integer by a list of integers |
DocumentationCreate | Generates documentation for all available steps. |
DoNothing | Does nothing. |
DoubleDivide | Divide a double by a list of doubles |
DoublePower | Raises a double to the power of a list of integers sequentially |
DoubleProduct | Calculate the product of a list of doubles |
DoubleSubtract | Subtract a list of numbers from a number |
DoubleSum | Calculate the sum of a list of doubles |
EntityCombine | Combine two entities. Property values of the second entity will be prioritized. |
EntityFlatten | Recursively flatten an entity, turning all nested entities into separate fields |
EntityFormat | Formats an entity or an array of entities as a string |
EntityGetProperties | Gets the names of all properties of an entity |
EntityGetValue | Gets the value of a property from an entity |
EntityHasProperty | Checks if an entity has a particular property. |
EntityMapProperties | Rename entity properties. |
EntityRemoveProperty | Returns a copy of the entity with the specified property removed |
EntitySetValue | Returns a copy of the entity with this property set. Will add a new property if the property is not already present. |
EntityValidateRelations | For each entity in the stream, check that the value of the ParentIdProperty is the value of the IdProperty for at least one entity in the stream. |
Equals | Returns true is all terms are equal |
For | Do an action for each value of <i> in a range. |
ForEach | Do an action for each element in an array |
GetApplicationVersion | Gets the current version of the application |
GetAutomaticVariable | Gets the value of the automatic variable |
GetConnectorInformation | Gets information about connectors |
GetSettings | Get an entity containing SCL settings |
GetVariable | Gets the value of a named variable. |
GreaterThan | Returns true if each term is less than the next term |
GreaterThanOrEqual | Returns true if each term is greater than or equals to the next term |
Hash | Produce a hash for some data using the specified hash algorithm |
HttpRequest | Makes a Http Request to download data from the web. Returns a StringStream containing binary encoded data. |
If | Executes a statement if a condition is true. |
IncrementVariable | Increment an integer variable by a particular amount |
IsNull | Checks if a step returns null |
LessThan | Returns true if each term is less than the next term |
LessThanOrEqual | Returns true if each term is less than or equals to the next term |
Log | Write a value to the logs |
Modulo | Modulo a number by a list of integers sequentially |
Not | Negation of a boolean value. |
NotEquals | Returns true if each term is not equal to the next term |
Or | Returns true if any terms are true |
Power | Raises an integer to the power of a list of integers sequentially |
Print | Prints a value to the console. |
Product | Calculate the product of a list of integers |
Repeat | Repeat a step a set number of times. |
Round | Round an SCL double to a fixed number of decimal places |
RunExternalProcess | Runs an external executable program. |
RunSCL | Runs SCL defined in a StringStream |
RunStep | Runs another step, reads the output to the end, and ignores it. |
SchemaCreate | Create a new schema by analysing the entity properties and values in an array or an entity stream. This Step is best used with data sources where the property values already have a data type (string, date, int...) such as JSON or databases. For generating schemas from flat data sources such as Concordance or CSV, use the SchemaCreateCoerced step, which will attempt to infer the property types. |
SchemaCreateCoerced | Create a new schema by analysing the entity properties and values in an array or an entity stream. This Step is best used with flat data sources such as Concordance or CSV as it does additional processing to infer the data types of strings. |
Sequence | A chain of steps to be run one after the other. |
SetVariable | Sets the value of a named variable. |
StandardErrorWrite | Writes to the console standard error |
StandardInRead | Reads the Console standard input |
StandardOutWrite | Writes to the console standard output |
StringAppend | Appends a string to an existing string variable. |
StringContains | Returns true if the String contains the substring. |
StringFind | Gets the index of the first instance of a substring in a string. The index starts at 0. Returns -1 if the substring is not present. |
StringFindLast | Gets the last instance of substring in a string. The index starts at 0. Returns -1 if the substring is not present |
StringInterpolate | Joins strings. Supports string interpolation. To use string interpolation, the string must be enclosed in double quotes and prefixed with a dollar-sign ($). Then, anything in curly brackets { and } will be evaluated as SCL. |
StringIsEmpty | Returns whether a string is empty. |
StringJoin | Join strings with a delimiter. |
StringLength | Calculates the length of the string. |
StringMatch | Returns true if a string is matched by a particular regular expression |
StringReplace | Replace every regex match in the string with the result of a particular function |
StringSplit | Splits a string. |
StringSubstring | Gets a substring from a string. |
StringToBool | Converts a string to a boolean |
StringToCase | Converts a string to a particular case. |
StringToDate | Converts a date to the specified format, yyyyMMddHHmm by default. If no date is specified, returns the current time. |
StringToDouble | Converts a string to a double |
StringToInt | Converts a string to an integer |
StringTrim | Trims a string, removing whitespace from the TrimSide . |
Subtract | Subtract a list of numbers from a number |
Sum | Calculate the sum of a list of integers |
Transform | Attempts to transform entities in the stream so that they match the schema. Will transform strings into ints, datetimes, booleans, array, or nulls where appropriate. The properties of the transformed entities will be in the same order as in the schema For more information on schemas please see the documentation. |
Try | Tries to execute a step and recovers if that step results in failure. |
Validate | Validate that the schema is valid for all entities. Does not evaluate the entity stream. For more information on schemas please see the documentation. |
While | Repeat an action while the condition is met. |