Rotate Process Object

The Integrator Rotate process object takes an input flow and rotates information from multiple columns into multiple rows. It creates two new columns, a horizontal column and a value column, to represent this information as multiple rows. The horizontal column holds a string that identifies the column that the row represents; the value column holds the corresponding input value for that column.

This object creates multiple output rows (one for each column) for each input row. Columns that are rotated no longer appear in the output flow.

As a best practice, verify the data before and after the rotation.

Rotate Attributes

Attribute Type Description
process_type
(required)
String Identifies the object as a Rotate process object. The value of this string is "rotate".
input
(required)
String Defines the object from which the data flow is arriving.
new_horiz_column
(required)
String

Defines the new horizontal column; this column contains the name of the new column (Dimension) that the input row represents.

NOTE: This attribute is New Horiz Column in Visual Integrator.

new_value_column String

Defines the new value column. This column contains the data value that was in the input column. It names the new Summary column.
The new_value_column attribute and the new_value_columns attribute are mutually exclusive, but one is required. If the new_value_column column is given, only one value column is rotated.

NOTE: This attribute is new value column in Visual Integrator.

new_value_columns Array of Strings

Defines the new value columns when rotating multiple columns. These new columns will be available as Summary output columns from the Rotate object.
The new_value_column attribute and the new_value_columns attribute are mutually exclusive, but one is required. If the new_value_columns columns are given, multiple columns are rotated.

NOTE: This attribute is new value column in Visual Integrator.

horiz_values Array of Strings Defines the row values to be contained in the new_horiz_column. This array contains strings that correspond to the horiz_columns array; they both should have the same number of elements.
horiz_columns Array of Strings or Array of String Arrays Defines the input columns that are rotated. These columns hold similar data values.
  • If there is one new_value_column, it will accept an array of strings
  • If there are multiple new_value_columns, it will accept an array of string arrays.

Each element in this array defines the input value column or columns that match the equivalent element in the horiz_values array. The values from these columns will be output as the new_value_columns (in the same order) for each new row generated.

When using an "array" parameter, the following syntax applies:

  • horiz_values = $(array_name)
  • horiz_columns = $(array_name)

NOTE: In many situations, the actual column names being rotated are not known ahead of time, but can be determined by a starting and ending column. The Rotate object will accept a range of horizontal columns for a single-value Rotate. The range can be defined inclusively by giving the starting and ending columns, or through surrounding columns by giving the previous and next columns. When using a range of horizontal columns, the horizontal values in the new_horiz_column will be the columns names. When rotating a range of columns, the attributes horiz_values and horiz_columns are not needed.

start_column String

Defines the horizontal columns as a range of contiguous columns. The start_column contains the name of the first horizontal column. This attribute conflicts with the previous_column and the horiz_column attributes. If this attribute is defined, the end of the horizontal columns must be defined using either the end_column or next_column attribute.

NOTE: This attribute is Start in Visual Integrator.

end_column String

Defines the horizontal columns as a range of contiguous columns. The end_column contains the name of the last horizontal column. This attribute conflicts with the next_column and the horiz_column attributes. If this attribute is defined, the start of the horizontal columns must be defined using either the previous_column or the start_column attribute.

NOTE: This attribute is End in Visual Integrator.

previous_column String

Defines the horizontal columns as a range of contiguous columns. The previous_column contains the name of the column before the first horizontal column. This attribute conflicts with the start_column and the horiz_column attributes. If the attribute is defined, the end of the horizontal columns must be defined using either the end_column or the next_column attribute.

NOTE: This attribute is Previous in Visual Integrator.

next_column String

Defines the horizontal columns as a range of contiguous columns. The next_column contains the name of the column after the last horizontal column. This attribute conflicts with the end_column and the horiz_column attributes. If this attribute is defined, the start of the horizontal columns must be defined using either the previous_column or the start_column attributes.

NOTE: This attribute is Next in Visual Integrator.

columns_list_input String

Specifies a separate input flow used to define the horizontal values and horizontal columns to be rotated. This is an alternative method of defining the horiz_values and horiz_columns attributes programmatically.
This input flow is required to have the column named "horiz_value" (which defines horizontal values), and a column with the same name as each value column in the value_columns array (which defines the names of the columns to be rotated). All other columns in this input flow are ignored.
This input flow will more than likely be an input object or a Calc process object.
It is recommended that the input flow (such as a .txt file in the ../temp folder) be generated by a different Integrator task (hence referenced as an input object) rather than the same task, simply to keep the code easier to read and maintain.
The columns_list_input attribute conflicts with the horiz_columns attribute, as well as other column definition attributes such as start_column, end_column, previous_column and end_column.

NOTE: This attribute is Column List Input in Visual Integrator.

trace_after Sub-object Traces data flows leaving the specified object, which makes debugging scripts easier. This is equivalent to adding a Trace process object immediately after the current object. See Embedded Trace Object for more on using trace sub-objects.
trace_before Sub-object Traces data flows entering the specified object. This is equivalent to adding a Trace process object immediately before the current object. See Embedded Trace Object for more on using trace sub-objects.