{"id":37642,"date":"2019-08-16T06:00:36","date_gmt":"2019-08-16T13:00:36","guid":{"rendered":"http:\/\/devblogs.microsoft.com\/premier-developer\/?p=37642"},"modified":"2019-08-16T09:44:41","modified_gmt":"2019-08-16T16:44:41","slug":"prevent-reopening-work-item-once-closed-azure-devops-with-video","status":"publish","type":"post","link":"https:\/\/devblogs.microsoft.com\/premier-developer\/prevent-reopening-work-item-once-closed-azure-devops-with-video\/","title":{"rendered":"Prevent reopening work item once closed | Azure DevOps (with Video)"},"content":{"rendered":"<p><a href=\"https:\/\/www.linkedin.com\/in\/bajaj-aditya\/\" target=\"_blank\" rel=\"noopener noreferrer\">Aditya Bajaj<\/a> is an Operations Manager focusing on accessibility and web operations at Microsoft.<\/p>\n<hr \/>\n<h2>Controlling the process manually is challenging<\/h2>\n<p>Enforcing process is hard when there are many people within the team using task management tool like Azure DevOps. I have a process that once a work item is closed then it should not be reopened even if it was allowed in Azure DevOps. People tend to forget the process and in the sense of urgency and\/or their convenience, they just override the protocols by doing what they want to. I don\u2019t blame anyone. Thankfully, you can control the process of work items in Azure DevOps through setting a few rules for your work item types in Azure DevOps process settings. The tip below provides step-by-step guidance on how to lock or freeze closed work items using Rules in Azure DevOps settings to control your DevOps process. It uses a hack that is called out below.<\/p>\n<h2>Why prevent reopening a task after it\u2019s closed<\/h2>\n<p>The short answer is to have a\u00a0<strong>better control on processes and workflows<\/strong>. It also helps provide more accurate team utilization metrics using Azure DevOps for reporting on or analyzing operations. For example, let\u2019s say that a task is submitted to update a page\u2019s content and once all of that is processed and the task status is set to closed, task requestor may reuse the same task to carry out further updates. Using the same task item for iterative updates can incorrectly reflect either the time taken by resources to close the task or total number of tasks processed within a month by the team. Hence, a control through the system is needed.<\/p>\n<p>Reopening a task from \u201cResolved\u201d (vs. Closed) state is still often allowed but after a no response for a set time like 24 or 48 hours (varies by teams and organizations), tasks are typically closed and should be locked. Freezing a task from reopening, once its status is set to \u201cClosed\u201d, enforces the users to submit a new work item for further updates instead of requesting the updates through the same closed task.<\/p>\n<p>Explore the steps to lock work items in Azure DevOps once they are closed:<\/p>\n<ul>\n<li><a href=\"https:\/\/adityabajaj.com\/prevent-reopening-work-item-azure-devops\/\">Read the full article with\u00a0step-by-step guidance<\/a><\/li>\n<li><a href=\"https:\/\/www.youtube.com\/watch?v=HCdqQYmXrHw\">Watch the step-by-step video on YouTube<\/a><\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>Learn how to adopt Azure DevOps Rules to control your DevOps processes such as locking down Work Items after they are closed. <\/p>\n","protected":false},"author":582,"featured_media":37653,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[25,22,1],"tags":[2571,3],"class_list":["post-37642","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-azure","category-devops","category-permierdev","tag-azure-devops","tag-team"],"acf":[],"blog_post_summary":"<p>Learn how to adopt Azure DevOps Rules to control your DevOps processes such as locking down Work Items after they are closed. <\/p>\n","_links":{"self":[{"href":"https:\/\/devblogs.microsoft.com\/premier-developer\/wp-json\/wp\/v2\/posts\/37642","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/devblogs.microsoft.com\/premier-developer\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/devblogs.microsoft.com\/premier-developer\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/premier-developer\/wp-json\/wp\/v2\/users\/582"}],"replies":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/premier-developer\/wp-json\/wp\/v2\/comments?post=37642"}],"version-history":[{"count":0,"href":"https:\/\/devblogs.microsoft.com\/premier-developer\/wp-json\/wp\/v2\/posts\/37642\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/premier-developer\/wp-json\/wp\/v2\/media\/37653"}],"wp:attachment":[{"href":"https:\/\/devblogs.microsoft.com\/premier-developer\/wp-json\/wp\/v2\/media?parent=37642"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/premier-developer\/wp-json\/wp\/v2\/categories?post=37642"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/premier-developer\/wp-json\/wp\/v2\/tags?post=37642"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}