You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: articles/data-factory/parameters-data-flow.md
+16-17Lines changed: 16 additions & 17 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -53,7 +53,19 @@ Pipeline expression parameters allow you to reference system variables, function
53
53
54
54
When referenced, pipeline parameters are evaluated and then their value is used in the data flow expression language. The pipeline expression type doesn't need to match the data flow parameter type.
55
55
56
-
#### Example
56
+
#### String literals vs expressions
57
+
58
+
When assigning a pipeline expression parameter of type string, by default quotes will be added and the value will be evaluated as a literal. To read the parameter value as a data flow expression, check the expression box next to the parameter.
59
+
60
+

61
+
62
+
If data flow parameter `stringParam` references a pipeline parameter with value `upper(column1)`.
63
+
64
+
- If expression is checked, `$stringParam` evaluates to the value of column1 all uppercase.
65
+
- If expression is not checked (default behavior), `$stringParam` evaluates to `'upper(column1)'`
66
+
67
+
68
+
#### Pipeline parameter example
57
69
58
70
Say you have an integer parameter `intParam` that is referencing a pipeline parameter of type String, `@pipeline.parameters.pipelineParam`.
59
71
@@ -71,30 +83,17 @@ When `$intParam` is referenced in an expression such as a derived column, it wil
71
83
72
84
Select **Data flow expression** will open up the data flow expression builder. You will be able to reference functions, other parameters and any defined schema column throughout your data flow. This expression will be evaluated as is when referenced.
73
85
74
-
> [!Note]
86
+
> [!NOTE]
75
87
> If you pass in an invalid expression or reference a schema column that doesn't exist in that transformation, the parameter will evaluate to null.
76
88
77
-
### String parameters
78
-
79
-
If your parameter data type is string, when you click the text box to set parameter values, you can choose to enter either a pipeline or a data flow expression. If you choose pipeline expression, you will be presented with the pipeline expression panel. Make sure to include pipeline functions inside string interpolation syntax using `'@{<expression>}'`, for example:
80
-
81
-
```'@{pipeline().RunId}'```
82
-
83
-
If your parameter is not of type string, you will always be presented with the Data Flow Expression Builder. Here, you can enter any expression or literal values that you wish that matches the data type of the parameter. Below are examples of data flow expression and a literal string from the expression builder:
A common pattern is to pass in a column name as a parameter value. To reference the column associated with the parameter, use the `byName()` function. Remember to cast the column to its appropriate type with a casting function such as `toString()`.
92
+
A common pattern is to pass in a column name as a parameter value. If the column is defined in the data flow schema, you can reference it directly as a string expression. If the column isn't defined in the schema, use the `byName()` function. Remember to cast the column to its appropriate type with a casting function such as `toString()`.
94
93
95
94
For example, if you wanted to map a string column based upon a parameter `columnName`, you can add a derived column transformation equal to `toString(byName($columnName))`.
96
95
97
-

96
+

98
97
99
98
## Next steps
100
99
*[Execute data flow activity](control-flow-execute-data-flow-activity.md)
0 commit comments