使用令牌
本主题仅适用于 ArcGIS for Desktop Standard 和 ArcGIS for Desktop Advanced。
令牌是将在运行时放置的动态属性的占位符文本。例如,如果您想要定义将在特定时间自动发送的电子邮件消息并想为消息添加日期戳,则可以放置一个占位符,这样在运行时此占位符即会替换为正确的日期。ArcGIS Workflow Manager 提供了一种使用令牌来定义消息和字符串的机制,在使用消息和字符串之前会自动对其进行解析和更新。Workflow Manager 中使用令牌的一些元素包括:
- 作业命名方案(作业名称、版本名称等)
- 查询(当前用户/组)
- 作业历史消息(请参见活动类型)
- 通知消息
- 步骤位置/参数/描述
ArcGIS Workflow Manager 应用程序提供了一个令牌表达式构建器,可通过上面列出的元素进行访问。例如,在“作业类型”的“作业命名方案”选项卡中,可单击“令牌表达式构建器”按钮 来显示可用的令牌。
令牌可按具体解析器进行分类。Workflow Manager 中提供了六种解析器:
- 作业解析器 - 负责交换出作业属性
- 扩展解析器 - 负责交换出扩展作业属性(仅限 1-1)
- 系统解析器 - 负责交换出系统属性,如当前日期/用户
- 函数解析器 - 负责对指定文本执行某些函数,如获取用户的电子邮件地址
- 空间通知解析器 - 负责交换出与空间通知相关的属性
- 环境变量解析器 - 负责交换出环境变量,如 TEMP 文件夹
默认情况下,这些解析器按上述顺序进行解析。这一点非常重要,因为某些解析器的正常运行需要依赖先前解析所生成的输出。例如,以下字符串包含两个令牌:
请联系下面的当前用户
[EMAILOF([SYS:CUR_LOGIN])]
第一个令牌是函数解析器令牌,第二个令牌是系统解析器令牌。EMAILOF 令牌需要的输入参数是另一解析的结果;因此,必须首先运行系统解析器。
每个解析器都可包含任意数量的令牌。以下是当前支持的令牌及其所属解析器的列表:
解析器 |
令牌 |
描述 |
示例输入 |
示例输出 |
---|---|---|---|---|
作业 |
[JOB:ID] |
作业 ID |
[JOB:ID] |
1642 |
[JOB:PARENT_VERSION] |
作业版本的父版本 |
[JOB:PARENT_VERSION] |
SDE.Default | |
[JOB:VERSION] |
版本名称 |
[JOB:VERSION] |
Workflow Manager=EEA123456789 | |
[JOB:TYPE_ID] |
作业类型 ID |
[JOB:TYPE_ID] |
4 | |
[JOB:TYPE_NAME] |
作业类型名称 |
[JOB:TYPE_NAME] |
TRANS | |
[JOB:OWNED_BY] |
作业所有者 |
[JOB:OWNED_BY] |
jbloggs | |
[JOB:CREATED_BY] |
创建该作业的用户 |
[JOB:CREATED_BY] |
fjones | |
[JOB:NAME] |
作业名称 |
[JOB:NAME] |
JOB_TRANS_1642 | |
[JOB:STATUS_ID] |
作业状态 ID |
[JOB:STATUS_ID] |
12 | |
[JOB:STATUS_NAME] |
作业状态名称 |
[JOB:STATUS_NAME] |
已创建 | |
[JOB:STAGE_ABBRV] |
作业阶段名称(短名称) |
[JOB:STAGE_ABBRV] |
W | |
[JOB:STAGE_NAME] |
作业阶段名称(长名称) |
[JOB:STAGE_NAME] |
正在执行 | |
[JOB:ASSIGNED_TO] |
作业所分配到的用户 |
[JOB:ASSIGNED_TO] |
fjones | |
[JOB:ASSIGNED_TYPE] |
分配给组或用户 |
[JOB:ASSIGNED_TYPE] |
用户 | |
[JOB:ATTACHMENTS] |
附件列表 |
[JOB:ATTACHMENTS] |
manifest.txt input_map.pdf | |
[JOB:STARTED_DATE] |
作业开始日期 |
[JOB:STARTED_DATE] |
12/8/04 | |
[JOB:END_DATE] |
作业完成日期 |
[JOB:END_DATE] |
12/20/04 | |
[JOB:START_DATE] |
作业的开始日期 |
[JOB:START_DATE] |
12/6/04 | |
[JOB:DUE_DATE] |
作业的结束日期 |
[JOB:DUE_DATE] |
12/17/04 | |
[JOB:NOTES] |
作业注释 |
[JOB:NOTES] |
记入 78943 | |
[JOB:DESCRIPTION] |
作业描述 |
[JOB:DESCRIPTION] |
更新街道 | |
[JOB:PRIORITY] |
作业优先级(整型) |
[JOB:PRIORITY] |
2 | |
[JOB:PRIORITY_NAME] |
作业优先级名称 |
[JOB:PRIORITY_NAME] |
中 | |
[JOB:PARENT_JOB] |
父作业 ID |
[JOB:PARENT_JOB] |
1454 | |
[JOB:PARENT_JOB_NAME] |
父作业名称 |
[JOB:PARENT_JOB_NAME] |
JOB_TRANS_1454 | |
[JOB:AOI_ENVELOPE] |
AOI 包络坐标 |
[JOB:AOI_ENVELOPE] |
–118.54, 35.54, 34.36, –117.56 | |
[JOB:WORKSPACE_ALIAS] |
作业的活动数据工作空间的别名 |
[JOB:WORKSPACE_ALIAS] |
产品数据库 | |
[JOB:WORKSPACE_ID] |
作业的活动数据工作空间的 ID |
[JOB:WORKSPACE_ID] |
{B979F9DC-EB7A-4A1D-A389-0C19D2869C6C} | |
[JOB:PERCENT_COMPLETE] |
作业的完成百分比值 |
[JOB:PERCENT_COMPLETE] |
73 | |
扩展属性 |
[JOBEX:TABLENAME.FIELDNAME] 或者 [JOBEX:TABLEALIAS.FIELDNAME] |
所选字段的扩展属性值 |
[JOBEX:JOB_PROPS.EST_HRS] |
40 |
系统 |
[SYS:CUR_LOGIN] |
当前 Windows 登录 |
[SYS:CUR_LOGIN] |
jbloggs |
[SYS:CUR_DATE] |
当前日期 |
[SYS:CUR_DATE] |
9/25/05 | |
[SYS:CUR_TIME] |
当前时间 |
[SYS:CUR_TIME] |
7:02PM | |
[SYS:MACHINE_NAME] |
当前计算机名 |
[SYS:MACHINE_NAME] |
GIS_EDITOR1 | |
[SYS:CUR_DATABASE] |
当前 Workflow Manager 数据库 (SQL Server) |
[SYS:CUR_DATABASE] |
sde | |
[SYS:CUR_SERVER] |
当前 Workflow Manager 数据库服务器 |
[SYS:CUR_SERVER] |
WorkflowManager_DB1 | |
[SYS:CUR_INSTANCE] |
当前 Workflow Manager 数据库实例 |
[SYS:CUR_INSTANCE] |
5151 | |
[SYS:CUR_JTX_USER] |
当前 Workflow Manager 数据库用户 |
[SYS:CUR_JTX_USER] |
Workflow Manager | |
[SYS:CUR_DATA_USER] |
当前 Workflow Manager 数据库数据用户 |
[SYS:CUR_DATA_USER] |
编辑者 1 | |
[SYS:INSTALLDIR] |
当前 Workflow Manager 安装文件夹 |
[SYS:INSTALLDIR] |
C:\Program Files\WMX | |
[SYS:REPOSITORY_NAME] |
当前 Workflow Manager 资料档案库名称 |
[SYS:REPOSITORY_NAME] |
WorkflowManager_DB | |
功能 |
[EMAILOF(username)] |
指定 Workflow Manager 用户的电子邮件地址 |
[EMAILOF(jbloggs)] |
jbloggs@email.com |
[FULLNAMEOF(username)] |
指定 Workflow Manager 用户的全名 |
[FULLNAMEOF(jbloggs)] |
Joe Bloggs | |
[PHONEOF(username)] |
指定 Workflow Manager 用户的电话号码 |
[PHONEOF(jbloggs)] |
489-555-7249 | |
[FAXOF(username)] |
指定 Workflow Manager 用户的传真号码 |
[FAXOF(jbloggs)] |
489-555-7241 | |
[GROUPIDSOF(username)] |
指定 Workflow Manager 用户的组 ID 列表 |
[GROUPIDSOF(jbloggs)] |
12, 15, 19 | |
[GROUPNAMESOF(username)] |
指定 Workflow Manager 用户的组名称列表 |
[GROUPNAMESOF(username)] |
管理者,QA/QC,编辑者 | |
[EMAILOF(group)] |
指定 Workflow Manager 组的电子邮件地址 |
[EMAILOF(Managers)] |
managers@email.com | |
[REPORT(report)] |
将所选报告包括为电子邮件主体的一部分 |
[REPORT(Job Percentage Complete)] |
报告是发送给订阅者的电子邮件的一部分。 | |
[REPORTXML(report)] |
将所选报告的 XML 包括为电子邮件主体的一部分 |
[REPORTXML(Job Percentage Complete)] |
Percentage CompleteJob Type NameTotal JobsLandbase Updates4Landbase Updates1 | |
空间通知 |
[SN:MATCH_ID] |
数据库中匹配记录的 ID |
[SN:MATCH_ID] |
{714A1592-59CC-459E-8D7D-3CC6C90AAF10} |
[SN:MATCH_RULE_ID] |
触发通知的规则的 ID |
[SN:MATCH_RULE_ID] |
{1F5D4B75-DD29-4F53-8AA1-29E90DDE9B24} | |
[SN:MATCH_RULE_NAME] |
触发通知的更改规则的名称 |
[SN:MATCH_RULE_NAME] |
已编辑机场 | |
[SN:MATCH_RULE_DESC] |
触发通知的更改规则描述 |
[SN:MATCH_RULE_DESC] |
执行重要更改时通知制图小组。 | |
[SN:CHANGE_DATABASE_ID] |
执行了编辑操作的数据工作空间 ID |
[SN:CHANGE_DATABASE_ID] |
{7541ED02-A61D-4347-B46E-86BDEFB17F93} | |
[SN:CHANGE_DATABASE_NAME] |
执行了编辑操作的数据工作空间名称 |
[SN:CHANGE_DATABASE_NAME] |
AeroData | |
[SN:CHANGE_DATASET] |
执行了编辑操作的数据集名称 |
[SN:CHANGE_DATASET] |
AERODATA.AIRPORTS | |
[SN:CHANGE_TIME] |
执行编辑的时间 |
[SN:CHANGE_TIME] |
6/26/2008 | |
[SN:CHANGE_TYPE] |
编辑的类型 |
[SN:CHANGE_TYPE] |
添加 | |
[SN:CHANGE_JOB_ID] |
编辑所关联的作业 ID |
[SN:CHANGE_JOB_ID] |
8893 | |
[SN:CHANGE_FEATURE_ID] | 要素 GFID(如果存在)或对象 ID | [SN:CHANGE_FEATURE_ID] | {3DCFC6FD-E867-4855-8FCB-04F9622B9DE1} | |
环境变量 | [ENV:VARIABLE_NAME] | 环境变量值 | [ENV:TEMP] | C:\temp |