Data Engineering ADF Custom Expressions 1736869109
Data Engineering ADF Custom Expressions 1736869109
Shwetank Singh
GritSetGrow - GSGLearn.com
gsglearn.com
Azure Data Factory Expressions
Dynamic Schema Mapping Based on
Parameter
@if(equals(pipeline().parameters.useExten
dedSchema, true), 'ExtendedSchema',
'BasicSchema')
Shwetank Singh
GritSetGrow - GSGLearn.com
Azure Data Factory Expressions
Conditional Copy Behavior
@if(contains(pipeline().parameters.copyM
ode, 'Incremental'), 'IncrementalCopy',
'FullCopy')
Shwetank Singh
GritSetGrow - GSGLearn.com
Azure Data Factory Expressions
Dynamic Blob Storage Path Based on File
Type
@concat('storage/account/',
pipeline().parameters.fileType, '/',
pipeline().parameters.fileName)
Shwetank Singh
GritSetGrow - GSGLearn.com
Azure Data Factory Expressions
Setting Timeout Based on Environment
@if(equals(pipeline().parameters.environ
ment, 'Prod'), '01:00:00', '00:30:00')
Shwetank Singh
GritSetGrow - GSGLearn.com
Azure Data Factory Expressions
Dynamic API Endpoint Selection
@if(equals(pipeline().parameters.environ
ment, 'Prod'),
'https://api.prod.example.com',
'https://api.dev.example.com')
Endpoint URL field in Web activities or HTTP
datasets.
Shwetank Singh
GritSetGrow - GSGLearn.com
Azure Data Factory Expressions
Dynamic Retry Count Based on Parameter
@if(greater(pipeline().parameters.retryAt
tempts, 5), 5,
pipeline().parameters.retryAttempts)
Shwetank Singh
GritSetGrow - GSGLearn.com
Azure Data Factory Expressions
Conditional Logging Level
@if(equals(pipeline().parameters.isDebug,
true), 'Verbose', 'Error')
Shwetank Singh
GritSetGrow - GSGLearn.com
Azure Data Factory Expressions
Dynamic Linked Service Selection
@if(equals(pipeline().parameters.useNewS
ervice, true), 'NewLinkedService',
'OldLinkedService')
Shwetank Singh
GritSetGrow - GSGLearn.com
Azure Data Factory Expressions
Dynamic Column Selection in SQL Query
@concat('SELECT ',
pipeline().parameters.columns, ' FROM
YourTable')
Shwetank Singh
GritSetGrow - GSGLearn.com
Azure Data Factory Expressions
Setting Dynamic Partition Columns
@split(pipeline().parameters.partitionCo
lumns, ',')
Shwetank Singh
GritSetGrow - GSGLearn.com
Azure Data Factory Expressions
Dynamic Join Conditions in Data Flow
@concat('A.',
pipeline().parameters.joinColumn, ' = B.',
pipeline().parameters.joinColumn)
Shwetank Singh
GritSetGrow - GSGLearn.com
Azure Data Factory Expressions
Dynamic Pipeline Trigger Time
@concat('2025-01-',
pipeline().parameters.triggerDay, 'T',
pipeline().parameters.triggerTime, ':00Z')
Shwetank Singh
GritSetGrow - GSGLearn.com
Azure Data Factory Expressions
Dynamic Service Bus Topic Name
@concat('topic-',
pipeline().parameters.topicSuffix)
Shwetank Singh
GritSetGrow - GSGLearn.com
Azure Data Factory Expressions
Dynamic Lookup Table Name
@concat('LookupTable_',
pipeline().parameters.lookupType)
Shwetank Singh
GritSetGrow - GSGLearn.com
Azure Data Factory Expressions
Dynamic Data Partitioning
@pipeline().parameters.partitionCount
Shwetank Singh
GritSetGrow - GSGLearn.com
Azure Data Factory Expressions
Dynamic Retry Interval
@mul(pipeline().parameters.retryIntervalS
econds, 1000)
Shwetank Singh
GritSetGrow - GSGLearn.com
Azure Data Factory Expressions
Dynamic Notification Email Addresses
@pipeline().parameters.emailList
Shwetank Singh
GritSetGrow - GSGLearn.com
Azure Data Factory Expressions
Dynamic Row Count Validation
@greaterOrEquals(activity('SourceActi
vity').output.rowCount,
pipeline().parameters.minRowCount)
Shwetank Singh
GritSetGrow - GSGLearn.com
Azure Data Factory Expressions
Dynamic Schema Validation
@if(equals(activity('SourceActivity').ou
tput.schema,
pipeline().parameters.expectedSchema),
'Valid', 'Invalid')
Shwetank Singh
GritSetGrow - GSGLearn.com
Azure Data Factory Expressions
Dynamic File Extension Handling
@concat('datafile_',
pipeline().parameters.fileVersion, '.',
pipeline().parameters.fileExtension)
Shwetank Singh
GritSetGrow - GSGLearn.com
Azure Data Factory Expressions
Dynamic Source Connection String
@concat('Server=',
pipeline().parameters.serverName,
';Database=',
pipeline().parameters.databaseName, ';User
Id=', pipeline().parameters.userId,
';Password=',
pipeline().parameters.password, ';')
Shwetank Singh
GritSetGrow - GSGLearn.com
Azure Data Factory Expressions
Dynamic Sink Configuration Based on Type
@if(equals(pipeline().parameters.sinkType,
'Blob'), 'AzureBlob', 'AzureDataLake')
Shwetank Singh
GritSetGrow - GSGLearn.com
Azure Data Factory Expressions
Dynamic HTTP Headers in Web Activity
@json(pipeline().parameters.httpHeaders)
Shwetank Singh
GritSetGrow - GSGLearn.com
Azure Data Factory Expressions
Dynamic Resource Group Selection
@pipeline().parameters.resourceGroup
Shwetank Singh
GritSetGrow - GSGLearn.com
Azure Data Factory Expressions
Dynamic Storage Account Selection
@pipeline().parameters.storageAccountName
Shwetank Singh
GritSetGrow - GSGLearn.com
Azure Data Factory Expressions
Dynamic API Versioning
@concat('v',
pipeline().parameters.apiVersion)
Shwetank Singh
GritSetGrow - GSGLearn.com
Azure Data Factory Expressions
Dynamic Conditional Split in Data Flow
@pipeline().parameters.splitCondition
Shwetank Singh
GritSetGrow - GSGLearn.com
Azure Data Factory Expressions
Dynamic Lookup Condition
@concat('WHERE ',
pipeline().parameters.lookupColumn, ' = ''',
pipeline().parameters.lookupValue, '''')
Shwetank Singh
GritSetGrow - GSGLearn.com
Azure Data Factory Expressions
Dynamic Transformation Logic
@pipeline().parameters.transformationScript
Shwetank Singh
GritSetGrow - GSGLearn.com
Azure Data Factory Expressions
Dynamic Compression Type for Sink
@pipeline().parameters.compressionType
Shwetank Singh
GritSetGrow - GSGLearn.com
Azure Data Factory Expressions
Dynamic SQL Server Instance Selection
@pipeline().parameters.sqlServerInstance
Shwetank Singh
GritSetGrow - GSGLearn.com
Azure Data Factory Expressions
Dynamic Pipeline Variable Initialization
@pipeline().parameters.initialValue
Shwetank Singh
GritSetGrow - GSGLearn.com
Shwetank Singh
GritSetGrow - GSGLearn.com