特定于域的构建基块 > 工作指示构建基块 > 设置和使用工作定义执行状况
设置和使用工作定义执行状况
执行状况可帮助用户了解作业单中某项工作定义的执行进度状况。工作指示构建基块提供了一组基本的工作定义执行状况,您可以根据自己的业务需求进行自定义:
Planned
Running
Held
Canceled
Completed
默认生产订单管理器事物 (PTC.SCA.SCO.DefaultProductionOrderManager) 提供了一些服务,可用于创建新状态、更新或删除现有状态、检索单个状态或检索所有状态的列表。工作指示构建基块还提供了一些其他服务,可用于检索工作定义执行状况的更改日志,并提供每个状况所用时间的汇总信息。
* 
工作定义转换器服务可使用三个附加执行状况来监控工艺计划转换的进度:
Building - 工艺计划转换仍在进行。
BuildingSuccess - 工艺计划转换已成功完成。
BuildingFailure - 工艺计划转换发生错误。
切勿删除或更新这三种状况。
对于运行时间较长的转换过程,您可以使用 GetWorkDefinition 服务或 PostgresDatabase 查询服务来查询根工作定义,以查看其执行状况。
创建工作定义执行状况
可以使用 CreateWorkDefinitionExecutionStatuses 服务来创建多个工作定义执行状况,方法是将这些状况添加至 WorkDefinitionExecutionStatuses 输入参数表中。
* 
创建工作定义执行状况 (或工作指示构建基块数据模型中的任何对象) 时,UID 值将由系统自动生成。系统将忽略您在 UID 字段中输入的所有值。
执行 CreateWorkDefinitionExecutionStatuses 服务后,系统会返回所创建工作定义执行状况及其 UID 的列表。
检索工作定义执行状况
可以使用 GetWorkDefinitionExecutionStatus 服务来检索并查看单个工作定义执行状况,方法是在 UID 输入参数中输入状态的 UID。
或者,也可以使用 GetWorkDefinitionExecutionStatuses 服务来检索数据库中的所有工作定义执行状况 (包括其 UID)。
更新工作定义执行状况
可以使用 UpdateWorkDefinitionExecutionStatuses 服务来更新现有工作定义执行状况的名称。仅需在 WorkDefinitionExecutionStatuses 输入参数表中输入要更新的工作定义执行状况的 UID,然后为该状况输入新的“名称”值。执行服务后,系统会返回所更新工作定义执行状况及其 UID 的列表。
删除工作定义执行状况
可以使用 DeleteWorkDefinitionExecutionStatus 服务来删除先前创建的工作定义执行状况,方法是提供要删除的工作定义执行状况的 UID。尝试检索已删除 (或不存在) 的工作定义状态时,会出现一个空白的结果表。
* 
删除工作定义执行状况时,请务必小心。系统不会阻止您删除正在使用的或曾使用过的工作定义执行状况。
查看执行状况更改日志
可以使用 GetWorkDefinitionExecutionLog 服务来查看工作定义的执行状况更改日志。仅需在 WorkDefinitionUID 输入参数中输入工作定义的 UID 即可。返回的结果将包括执行状况的 UID 和名称、状态更改的时间戳以及实施更改的用户名称。
查看执行状态汇总
可以使用 GetWorkDefinitionExecutionSummary 服务来查看工作定义中每个执行状况所用总时间的汇总。仅需在 WorkDefinitionUID 输入参数中输入工作定义的 UID 即可。要包括对当前状况经历时间的计算,请对 IncludeCurrentStatus 选择 True
返回的结果中将包括执行状况的 UID 和名称,以及该状况所用的总时间 (秒)。
验证工作定义执行状况
如果在创建或更新工作定义时指定执行状况,则系统会首先验证指定状况是否存在,然后才会允许完成创建或更新操作。有关详细信息,请参阅操作前、操作时和操作后事件的分派与验证
这对您有帮助吗?