使用 ArcGIS Arcade 表达式在整个工作流中动态填充输入值。 例如,可以使用 Arcade 表达式根据先前步骤的结果将步骤分配给特定用户或群组,并发送包含作业特定信息的通知电子邮件。 还可以将运行 GP 服务步骤配置为使用 JobLocation Arcade 表达式作为输入参数,以在运行步骤时替换为作业位置的范围。 支持 Arcade 表达式的所有输入值将与此输入支持 Arcade 表达式按钮 一起显示,以包含可添加至其关联文本框的表达式列表。
还可以使用 Arcade 嵌套表达式修改其他表达式的输出。 例如,可以使用以下文本和日期函数将 JobDueDate 表达式的输出从新纪元时间转换为更可读的日期格式:
Text(Date(JobDueDate($Job)), 'dddd, MMMM D, Y')
如果需要将纯文本与 Arcade 表达式相结合,则需要如下格式化文本:
'Plain text' + ArcadeExpression() + 'plain text'
下表概述了不同类别的 Workflow Manager 特定 Arcade 表达式:
类别 | 描述 |
---|---|
调用 ArcGIS Workflow Manager 托管的作业信息。 | |
从扩展属性表调用自定义作业特定信息。 | |
调用作业数据源和版本信息。 | |
调用作业位置信息。 | |
调用用户定义设置。 | |
调用输出值和过去步骤分配信息。 |
有关 Arcade 函数和全局变量的完整列表,请访问 ArcGIS Developer 网站。 此输入支持 Arcade 表达式按钮 快捷菜单中包含 Arcade 函数索引列表中的以下表达式。
名称 | Arcade 表达式 | 描述 |
---|---|---|
当前门户 | $currentPortal | 返回当前活动门户。 |
当前用户详细信息 | var u = GetUser($currentPortal); return u['<key 1>'] + u['<key 2>'] | 返回当前用户的属性。 |
当前用户电子邮件 | GetUser($currentPortal)['email'] | 返回当前用户的电子邮件地址。 |
当前用户 ID | GetUser($currentPortal)['id'] | 返回当前用户的 ID。 |
当前用户名 | $currentUser | 返回当前用户的用户名。 |
获取用户详细信息 | var u = GetUser($currentPortal, '<username>'); return u['<key1>'] + u['<key2>'] | 返回指定用户的属性。 |
获取用户电子邮件 | GetUser($currentPortal, '<username>')['email'] | 返回指定用户的电子邮件地址。 |
获取用户名 | GetUser($currentPortal, '<username>')['username'] | 返回指定用户的用户名。 |
用户组 | userGroups($currentUser) | 返回当前用户的 ArcGIS Enterprise 门户群组 ID。 |