如果条件为真,我如何将 属性 组合成 return int(0) 而如果条件为假,则不构成 return 任何东西?
How can i form the property in compose to return int(0) if condition is true and not return anything if condition is false?
如果为真,我如何将此表达式形成为 return int 值 0,如果为假,则不 return 属性?仓库事件是一个数组,属性 在一个组合中。
表达式:
if(contains(variables('WareHouseEvent'), 'OB_2910'), int(0), <not
return anything)
其中一个解决方法是,您可以使用 Condition
连接器,当满足上述条件时,它会执行 true 块,否则它会执行 false。从那里您可以使用相同的撰写内容。
这是逻辑应用程序的屏幕截图 -
输出:-
第一个答案的替代方法是始终添加然后在事后删除它。
这是一个示例,您可以复制到自己的租户中进行测试。
{
"definition": {
"$schema": "https://schema.management.azure.com/providers/Microsoft.Logic/schemas/2016-06-01/workflowdefinition.json#",
"actions": {
"Compose_JSON_Object": {
"inputs": {
"AnotherProperty": "Another Value",
"TestProperty": "@variables('Data')"
},
"runAfter": {
"Initialize_Integer": [
"Succeeded"
]
},
"type": "Compose"
},
"Initialize_Integer": {
"inputs": {
"variables": [
{
"name": "Data",
"type": "integer",
"value": 0
}
]
},
"runAfter": {},
"type": "InitializeVariable"
},
"New_JSON_Object": {
"inputs": {
"variables": [
{
"name": "New Object",
"type": "object",
"value": "@if(equals(variables('Data'), 1), removeProperty(outputs('Compose_JSON_Object'), 'TestProperty'), outputs('Compose_JSON_Object'))"
}
]
},
"runAfter": {
"Compose_JSON_Object": [
"Succeeded"
]
},
"type": "InitializeVariable"
}
},
"contentVersion": "1.0.0.0",
"outputs": {},
"parameters": {},
"triggers": {
"manual": {
"conditions": [],
"inputs": {},
"kind": "Http",
"type": "Request"
}
}
},
"parameters": {}
}
我在顶部有一个整数变量,它存储值 1 或 0。
然后在我的撰写中,我将该值添加到撰写语句中的 属性。
然后在此之下,我使用表达式设置了一个带有(可能)更新对象的新变量,以确定是否应删除添加的 属性。
您只需要用您的表达式调整 IF 语句的条件部分。
if(equals(variables('Data'), 1), removeProperty(outputs('Compose_JSON_Object'), 'TestProperty'), outputs('Compose_JSON_Object'))
属性 将根据 Data
变量的值被删除。
已删除
保留
如果为真,我如何将此表达式形成为 return int 值 0,如果为假,则不 return 属性?仓库事件是一个数组,属性 在一个组合中。
表达式:
if(contains(variables('WareHouseEvent'), 'OB_2910'), int(0), <not return anything)
其中一个解决方法是,您可以使用 Condition
连接器,当满足上述条件时,它会执行 true 块,否则它会执行 false。从那里您可以使用相同的撰写内容。
这是逻辑应用程序的屏幕截图 -
输出:-
第一个答案的替代方法是始终添加然后在事后删除它。
这是一个示例,您可以复制到自己的租户中进行测试。
{
"definition": {
"$schema": "https://schema.management.azure.com/providers/Microsoft.Logic/schemas/2016-06-01/workflowdefinition.json#",
"actions": {
"Compose_JSON_Object": {
"inputs": {
"AnotherProperty": "Another Value",
"TestProperty": "@variables('Data')"
},
"runAfter": {
"Initialize_Integer": [
"Succeeded"
]
},
"type": "Compose"
},
"Initialize_Integer": {
"inputs": {
"variables": [
{
"name": "Data",
"type": "integer",
"value": 0
}
]
},
"runAfter": {},
"type": "InitializeVariable"
},
"New_JSON_Object": {
"inputs": {
"variables": [
{
"name": "New Object",
"type": "object",
"value": "@if(equals(variables('Data'), 1), removeProperty(outputs('Compose_JSON_Object'), 'TestProperty'), outputs('Compose_JSON_Object'))"
}
]
},
"runAfter": {
"Compose_JSON_Object": [
"Succeeded"
]
},
"type": "InitializeVariable"
}
},
"contentVersion": "1.0.0.0",
"outputs": {},
"parameters": {},
"triggers": {
"manual": {
"conditions": [],
"inputs": {},
"kind": "Http",
"type": "Request"
}
}
},
"parameters": {}
}
我在顶部有一个整数变量,它存储值 1 或 0。
然后在我的撰写中,我将该值添加到撰写语句中的 属性。
然后在此之下,我使用表达式设置了一个带有(可能)更新对象的新变量,以确定是否应删除添加的 属性。
您只需要用您的表达式调整 IF 语句的条件部分。
if(equals(variables('Data'), 1), removeProperty(outputs('Compose_JSON_Object'), 'TestProperty'), outputs('Compose_JSON_Object'))
属性 将根据 Data
变量的值被删除。