Forum Discussion
Fabric passing parameter
- 1 year ago
Hi IAZ ,
Looks like you're trying to dynamically pass a pipeline parameter into your query string using a JSON config, but the expression isn't resolving as expected during runtime.
The issue is likely because you're trying to use @{pipeline().parameters.par1} inside a string that's already being evaluated by the @concat() function. When you nest expressions like that, especially inside JSON-driven queries, it can get tricky.
Instead of embedding the parameter directly in the JSON like this:
"query": "select * from CUSTOMER where OBJ > @{pipeline().parameters.par1}"Try keeping the query in the JSON more generic, like:
"query": "select * from CUSTOMER where OBJ >"
Then in your copy activity, use something like:
@concat(item().source.query, ' ', pipeline().parameters.par1)
This way, you're appending the parameter value at runtime without trying to resolve nested expressions inside the JSON.
Let me know if you're still hitting issues, happy to help further.
If my response resolved your query, kindly mark it as the Accepted Solution to assist others. Additionally, I would be grateful for a 'Kudos' if you found my response helpful.
A follow up question:
@concat(item().source.query, ' ', pipeline().parameters.par1)
If I set the parameter "par1" as "int" (as the where sql clause needs an int instead of a string) the above expression gives the this message "cannot fit number into the function string list. any help would be greatly appreciated.