在本教程中,您可以学习如何将名为
CodedResetAssetValue.cs
的编码自动化合并到低代码工作流中。
CodedResetAssetValue.cs
自动化执行以下步骤:
- 从 Orchestrator 中检索特定资产的当前值。
- 将检索到的资产值与作为参数提供的输入值进行比较。
- 如果先前的资产值与输入值不匹配,则会更新 Orchestrator 中的资产值。
- 记录指示资产值状态的消息,无论是已更新还是保持不变。
要在低代码工作流中使用编码自动化,请先创建编码工作流,然后使用调用工作流文件活动在低代码工作流中进行调用。执行以下步骤以将编码自动化合并到低代码工作流中:
-
创建新的编码工作流。在此示例中,将其命名为
CodedResetAssetValue
。
-
将以下返回参数提供给
Execute
方法,以指示资产值是否已更改并提供资产值:(bool assetValueWasChanged, string assetValue)
-
对于
Execute
方法,添加以下输入参数:assetName (string)
和 assetValue (string)
。
public (bool assetValueWasChanged, string assetValue) Execute(string assetName, string assetValue)
public (bool assetValueWasChanged, string assetValue) Execute(string assetName, string assetValue)
-
使用
GetAsset
编码自动化 API 通过 assetName
参数检索指定资产的当前值。
-
将先前的资产值存储在
previousAssetValue
变量中。
var previousAssetValue = system.GetAsset(assetName).ToString();
var previousAssetValue = system.GetAsset(assetName).ToString();
-
使用
Equals
方法将先前的资产值与输入的资产值进行比较。
-
如果值相等,则返回
(false, assetValue)
以指示资产值未更改。
-
如果值不同,请使用
SetAsset
编码自动化 API 将资产值更新为输入 assetValue
。
-
返回
(true, previousAssetValue)
以及先前的资产值以指示资产值已更改。
if (previousAssetValue.Equals(assetValue))
{
return (assetValueWasChanged: false, assetValue: assetValue);
}
else
{
system.SetAsset(assetValue, assetName);
return (assetValueWasChanged: true, assetValue: previousAssetValue);
}
if (previousAssetValue.Equals(assetValue))
{
return (assetValueWasChanged: false, assetValue: assetValue);
}
else
{
system.SetAsset(assetValue, assetName);
return (assetValueWasChanged: true, assetValue: previousAssetValue);
}
-
创建低代码工作流。在此示例中,将其命名为
WorkflowUsingCodedAutomation
。
-
添加“分配”活动并为
assetValue
变量分配值。
-
添加“调用工作流文件”活动并调用
CodedResetAssetValue.cs
编码自动化。添加所需参数。
注意: 对于 Windows 项目:在
“ 调用工作流文件 ” 活动中,选择 “浏览文件
”,然后将要浏览的文件扩展名从
*.xaml
和
*.uiwf
更改为
“所有文件” (*.*) 。这使您可以查看所有文件,包括
.cs
。
-
添加“IF 条件”活动,并为资产值保持不变的场景和更新资产值的场景记录消息。