Uploaded image for project: 'Jira Cloud'
  1. Jira Cloud
  2. JRACLOUD-81567

statusCategoryChangedDate is not present in CSV exported data, breaking 'done' filtering on Timeline

    XMLWordPrintable

Details

    Description

      Issue Summary

      The Jira Timeline (previously Roadmap) uses a filtering function to hide 'done' Epics older than x months. Under the hood, this relies on the statusCategoryChangedDate field value.

      This particular field is not included in the output when you "Export CSV (all fields)" from the issue navigator, and as a result, on import, that field value gets set to the current date (which in turn breaks the Timeline 'done' filtering as the dates are no longer correct)

      Steps to Reproduce

      1. Export an Epic via the issue navigator CSV export with a resolution date > 1 month
      2. Import this data
      3. Go to the Jira Timeline, and set the Issue display range view setting to Show Epic issues completed in the last 1 month

      Expected Results

      The imported Epic should not show on the Timeline, as it's statusCategoryChangedDate date is the same as the exported Epic (> 1 month)

      Actual Results

      The imported Epic shows on the Timeline, as it's statusCategoryChangedDate has been set as the current date on import.

      Workaround

      1. Export issues with HTML report export option
      2. Run the below script on the HTML
      from bs4 import BeautifulSoup
      import csv
      
      # Replace 'your_html_file.html' with the name of your HTML file
      html_file = 'your_html_file.html'
      with open(html_file, 'r') as file:
          html_doc = file.read()
      soup = BeautifulSoup(html_doc, 'html.parser')
      rows = soup.find_all('tr', class_='issuerow')
      data = []
      
      for row in rows:
          issue_key = row.find('a', class_='issue-link')['data-issue-key']
          status_category_changed = row.find('td', class_='statuscategorychangedate').get_text(strip=True)
          data.append([issue_key, status_category_changed])
      
      csv_file = "extracted_data.csv"
      with open(csv_file, 'w', newline='') as csvfile:
          writer = csv.writer(csvfile, delimiter=',')
          writer.writerow(['Key', 'Status Category Changed'])
          writer.writerows(data)
      
      1. Append the generated column to the CSV export to be imported

      Attachments

        1. csv-export.png
          csv-export.png
          500 kB
        2. csv-extracted-fields.png
          csv-extracted-fields.png
          1.13 MB
        3. HTML-report.png
          HTML-report.png
          1.02 MB
        4. print-list.png
          print-list.png
          911 kB
        5. raw-html-export.png
          raw-html-export.png
          1.15 MB
        6. Screenshot 2023-08-02 at 5.20.59 pm.png
          Screenshot 2023-08-02 at 5.20.59 pm.png
          1.13 MB

        Issue Links

          Activity

            People

              Unassigned Unassigned
              eysebaert@atlassian.com Emma Ysebaert
              Votes:
              4 Vote for this issue
              Watchers:
              5 Start watching this issue

              Dates

                Created:
                Updated: