с фабрикой данных V2 Я пытаюсь реализовать поток копирования данных из одной базы данных SQL Azure в другую.
Я хочу выполнить условное действие If Condition
, зависит от успеха предыдущегодействия выполняются конвейером, но в выражении, которое будет включено в действие If Condition
Я не могу выбрать выходное свойство "status": "Succeeded"
.
До действия If Condition
У меня есть две операции копирования данных.
Я добавил операцию If Condition
в свой поток, поскольку задачи, выполняемые после копирования данных, зависят от успеха всех операций копирования.
т.е.1016 *
если все операции копирования выполнены правильно, то будет выполнено истинное условие.Если только одна операция копирования успешна, а другая не выполнена, то выполняется ложное условие
Вывод каждой операции копирования выглядит следующим образом:
Output
{
"dataRead": 213156,
"dataWritten": 213156,
"rowsRead": 3554,
"rowsCopied": 3554,
"copyDuration": 4,
"throughput": 52.04,
"errors": [],
"effectiveIntegrationRuntime": "DefaultIntegrationRuntime (West Europe)",
"usedDataIntegrationUnits": 4,
"usedParallelCopies": 1,
"executionDetails": [
{
"source": {
"type": "AzureSqlDatabase"
},
"sink": {
"type": "AzureSqlDatabase"
},
"status": "Succeeded",
"start": "2018-10-02T13:42:37.7396813Z",
"duration": 4,
"usedDataIntegrationUnits": 4,
"usedParallelCopies": 1,
"detailedDurations": {
"queuingDuration": 3,
"preCopyScriptDuration": 0,
"timeToFirstByte": 0,
"transferDuration": 1
}
}
]
}
И я структурировал свое выражение для If Condition
активность так:
@and(equals(activity('Copy_Activity1').output.executionDetails[3],'Succeeded'), equals(activity('Copy_Activity2').output.executionDetails[3],'Succeeded'))
Но он выдает мне следующую ошибку:
"error": {
"code": "InvalidTemplate",
"message": "Unable to process template language expressions in action 'If Condition1' inputs at line '1' and column '1294': 'The template language expression 'and(equals(activity('Copy_Item_Budget_Name').output.executionDetails[3],'Succeeded'), equals(activity('Copy_Item_Budget_Entry').output.executionDetails[3],'Succeeded'))' cannot be evaluated because array index '3' is outside bounds (0, 0) of array. Please see https://aka.ms/logicexpressions for usage details.'."
}
Но даже с помощью гида я не могу решить проблему.
Кто-нибудь знает, как решить проблему?Спасибо