Autogenerate parameters for Iterate process

Is it possible to generate parameters from the data source when using Iterate? I want to pass rows of a table to a subprocess and use the values as parameters (need to do this since I can’t use dynamic column names using parameter values), and the table has… say… 200 columns. Do I need to make all 200 of those parameters in the module being iterated manually? Any shortcuts?

Data can be passed into the iterated module not only as parameters but also as a dataset. Enumerate rows and pass the whole table using the “Iterate another table” action. In the iterated module, filter rows of the input table to keep only one row per iteration.

Let me know if you need an example.

Ahh thanks I just realized after thinking about it that as parameters or a dataset I’d have the same problem that I almost surely can’t use {{dynamicParameter}} just like I can’t use [{DynamicColumnName}], so I guess I might have to resort to making a lot of calculated parameters based on the MappingParameters I pass along.

In case you have any ideas, the intent is to create a job that generates complex format output files, allowing drop-downs to select columns in the server interface with which to populate data elements within the file (Such as reference values or where to pull account codes etc). My first idea was to use a parameter that stores the column name, and call that with something like [{ColumnName}] but that doesn’t work.

I was able to figure this out for a single dynamic parameter that I allow to be assigned to indicate which field to use unique values for splitting the data into separate outputs. For that I took in that Parameter - {FileSeparator}, created a parameter table, Generated a new column in my parameter table named [TableSplit] with the value “FileSeparatorValue”, renamed the column in my main dataset via ‘Rename columns with lookup’ to the consistent value “FileSeparatorValue” via the paramater table as the source, used a ‘Keep Columns’ to leave only my [FileSeparatorValue] column, removed duplicates to get a distinct list of values, and then iterate these values to another module that uses them in a query to only use the values in my original source data that match on that dynamically-assigned column, as it’s simple to use the original parameter in the SQL query WHERE {FileSeparator} = the [FileSeparatorValue].

I know I could always include all possible values of the dynamically-populated column names in IF statements while calculating new columns and using the column that matches the parameter based on the IF statement finding a match… but I was hoping for something more elegant and less unweildy.

It actually does work with the help of the eval() function. In the example below, the value of parameter {Column name} is "Count":
eval.morph (2.3 KB)

Oh this works perfectly! Thanks!