BlueGrove Labs
帮助中心StatusPath ReportsJira Cloud
联系支持
EN

如何查找 Jira 工作项进入某个状态的日期

查询单个 Jira 工作项时,可以打开活动历史并找到状态转换时间戳。对于多个工作项,StatusPath Reports 当前返回每个工作项在计算历史窗口内首次进入各状态的时间。目前不提供最近一次进入或全部进入记录的报表模式。JQL status CHANGED TO 可以筛选工作项范围,但不会把转换时间戳作为结果列返回。

先确定问题,再选择方法

  • 单个工作项: 查看 Jira 历史并记录准确状态转换。
  • 查找某段时间发生过变更的工作项: 使用 JQL 历史条件筛选。
  • 为多个工作项生成首次进入日期列: 使用 Status Entry Date 报表,并显示所需状态列。
  • 分析重复进入: 使用 Status Count 查看进入某个状态的次数。
  • 查找最近一次或全部进入记录: 查看 Jira 历史记录或使用独立的自定义变更历史(changelog)流程;它们不是 Status Entry Date 报表模式。

Atlassian 的 JQL CHANGED 运算符说明显示,支持历史的字段可以配合 TO、BEFORE、AFTER、ON 和 DURING 等条件。它用于筛选匹配的工作项,本身不会在结果中新增对应的状态转换时间列。

真实 Jira 场景:首次进入、再次进入和从未进入

发布经理需要得到每个工作项首次进入 Ready for Release 的日期:

工作项 历史结果 首次进入日期
SR-2901 进入一次 2026 年 7 月 2 日 10:00 UTC
SR-2902 进入、离开、再次进入 2026 年 7 月 2 日 10:00 UTC
SR-2903 从未进入 空白
StatusPath 状态进入日期报表显示三个 Jira 工作项首次进入 Ready for Release 的日期
状态进入日期列显示首次符合条件的 Ready for Release 转换;从未进入该状态时保留空白。

SR-2902 两次进入 Ready for Release。活动分析中的状态进入次数为 2,而首次进入日期仍是 7 月 2 日。

StatusPath 工作项活动表显示 SR-2902 进入 Ready for Release 两次
SR-2902 的工作项活动上下文显示报表为状态进入次数,Ready for Release = 2。

重复进入示例的人工验算

SR-2902 的相关历史为:

2026-07-02 10:00 UTC:In Progress → Ready for Release
2026-07-03 12:00 UTC:Ready for Release → In Progress
2026-07-05 10:00 UTC:In Progress → Ready for Release

因此:

首次进入 = min(2026-07-02 10:00, 2026-07-05 10:00)
         = 2026-07-02 10:00 UTC
状态进入次数 = 2

如果业务问题要求最近一次进入,答案则是 7 月 5 日 10:00 UTC。Status Entry Date 不计算这个最近一次进入值;应查看 Jira 历史记录或使用自定义变更历史流程,并在输出中明确标注口径。

方法一:在 Jira 中查看单个工作项

打开工作项的活动或历史记录,找到状态变化,并记录时间戳、来源状态和目标状态。少量查询或核查计算报表时,这是最直接的方法。

注意显示时区:当结果需要对比或导出时,应连同时区一起记录。

方法二:使用 JQL 查找匹配工作项

例如:

project = SR
AND status CHANGED TO "Ready for Release"
  DURING ("2026/07/01", "2026/07/08")
ORDER BY key ASC

这条 JQL 会找到该时段内至少发生过一次匹配转换的工作项,但不会设置 Status Entry Date 的计算窗口。

例如,某工作项在 6 月 28 日首次进入 Ready for Release,并在 7 月 5 日再次进入。使用 7 月的 DURING 条件会因为 7 月 5 日的转换而选中它;如果使用完整历史,Status Entry Date 仍可能显示 6 月 28 日。如果业务问题是“7 月内首次进入”,应把裁剪历史(Trim History)设为相同的 7 月范围。此时显示的是裁剪窗口内最早的计算进入时间,不一定是 Jira 完整历史中的首次进入;如果某个状态区间跨过裁剪起点,计算进入时间可能就是裁剪边界。

方法三:创建 Status Entry Date 报表

  1. 选择 Status Entry Date(状态进入日期)报表类型。
  2. 设置 Project、Filter(筛选条件)、JQL、Sprint 或 Epic 范围并应用,让报表运行。
  3. 仅在业务问题需要时设置工作项日期范围和裁剪历史。
  4. 打开 Columns(列),显示目标状态列,例如 Ready for Release。
  5. 分别核查只进入一次、重复进入和从未进入该状态的工作项。
  6. 需要电子表格时,使用 Export(导出)。

界面中没有独立的里程碑状态选择器,目标状态通过列设置选择。首次进入定义见报表类型,动态列和空值规则见表格视图。

StatusPath Reports 由 BlueGrove Labs 开发。如果你需要为多个工作项生成状态首次进入日期列,可在 Atlassian Marketplace 打开 StatusPath Reports,先用一个已知曾重复进入目标状态的工作项运行 Status Entry Date,并与 Jira History 核对。它返回计算历史窗口内的首次进入;不提供最近一次或全部进入记录模式。

方法四:在自定义流程中计算 Jira 变更历史

Atlassian 的 Jira Cloud 工作项 REST API 文档包含批量获取变更历史的能力。自定义流程需要正确处理分页、字段选择、权限、时间顺序、重复转换和时区转换,并保留足以复现每个里程碑日期的来源证据。

该流程独立于 Status Entry Date 报表。对每个工作项筛选目标状态等于所选状态的变更记录:首次进入取最早时间戳,最近一次进入取最晚时间戳,全部进入则保留按时间排序的完整列表。

常见错误

把 JQL 当作时间戳列

status CHANGED TO 用来查找工作项,不会自动在搜索结果中显示匹配转换的日期。

把最近一次或全部进入当成报表选项

状态重复时,首次进入、最近一次进入和全部进入是不同业务口径。Status Entry Date 只支持首次进入;重复进入次数使用 Status Count,最近一次或全部进入记录使用 Jira 历史记录或自定义变更历史流程。

用零替换空白

工作项在所选状态没有里程碑日期时,StatusPath 会把单元格留空。后续生成的电子表格或其他衍生文件可以改用明确标注的“未到达”,但这不是 StatusPath 的显示模式。

忽略裁剪历史

裁剪后的历史窗口内最早记录,未必是工作项全部历史中的首次记录。

在没有时区的情况下比较时间戳

同一时刻在不同时区可能显示为不同日期。审核时应统一时区。

常见问题

Jira JQL 能直接返回进入状态的准确日期吗?

JQL 可以根据状态变更历史筛选工作项。准确时间戳需要查看 Jira 历史记录,或根据变更历史数据计算。

工作项多次进入该状态怎么办?

Status Entry Date 返回计算历史窗口内的首次进入。需要让审核者识别重复进入时,使用 Status Count;需要最近一次时间戳或完整进入列表时,查看 Jira 历史记录或使用自定义变更历史流程。

为什么状态进入日期是空白?

工作项可能从未进入所选状态,相关历史可能位于裁剪窗口之外,或者查看者无权访问所需数据。

可以把里程碑日期导出到 Excel 吗?

可以。配置状态进入日期表,核查代表性历史,再把已审核报表导出为 XLSX 或 CSV。

Status Entry Date 和 Time in Status 相同吗?

不同。Status Entry Date 是里程碑时间戳;Time in Status 是在该状态内所有符合条件区间的时长之和。

相关指南

截图预览