如何解决字段值更改时的 TFS 2018 捕获日期
我要在工作项中添加一个字段,我想在一个单独的字段中捕获更改该文件的日期和时间。我让它工作,有点。当用户将下拉列表值更改为 Yes 时,将在下方打开一个字段,用于记录该值更改为 Yes 的时间。当用户保存工作时间时,系统会将保存时间添加到该字段中。我可以回到那个工作项目,我可以看到它的价值。但是,如果我更新任何其他信息并保存工作项,时间戳会再次更新为刚刚保存 WIT 的时间。我想要的工作流程是仅在设置该字段时设置时间。我还有一个规则,如果值从是更改为否,则该字段将清空。
这是相关字段的字段定义部分。
<FIELD name="Blocked" refname="Microsoft.VSTS.CMMI.Blocked" type="String" reportable="dimension" >
<ALLOWEDVALUES expanditems="true">
<LISTITEM value="Yes" />
<LISTITEM value="No" />
</ALLOWEDVALUES>
<DEFAULT from="value" value="No"/>
</FIELD>
<FIELD name="Date Blocked" refname="XXX.DateBlocked" type="DateTime" reportable="detail" >
<WHEN field="Microsoft.VSTS.CMMI.Blocked" value="Yes">
<SERVERDEFAULT from="clock" />
</WHEN>
<WHEN field="Microsoft.VSTS.CMMI.Blocked" value="No">
<READONLY/>
<EMPTY/>
</WHEN>
<HELPTEXT>The is the toole tip</HELPTEXT>
</FIELD>
解决方法
但是如果我更新任何其他信息并保存工作项,时间戳会再次更新为刚刚保存 WIT 的时间
这是因为当您更新其他信息并保存工作项时。下面规则中的条件仍然是 true
。以便再次更新 Date Blocked
字段。
<WHEN field="Microsoft.VSTS.CMMI.Blocked" value="Yes">
<SERVERDEFAULT from="clock" />
</WHEN>
您可以通过添加另一个条件 WHENNOTCHANGED
来解决此问题。见下文:
<FIELD name="Date Blocked" refname="XXX.DateBlocked" type="DateTime" reportable="detail" >
<WHENNOTCHANGED field="Microsoft.VSTS.CMMI.Blocked">
<READONLY />
</WHENNOTCHANGED>
<WHEN field="Microsoft.VSTS.CMMI.Blocked" value="Yes">
<SERVERDEFAULT from="clock" />
</WHEN>
<WHEN field="Microsoft.VSTS.CMMI.Blocked" value="No">
<READONLY/>
<EMPTY/>
</WHEN>
<HELPTEXT>The is the toole tip</HELPTEXT>
</FIELD>
通过添加<WHENNOTCHANGED field="Microsoft.VSTS.CMMI.Blocked">
,Date Blocked
将变为只读,如果 Blocked 未更新而其他信息已更新,则无法更改
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。