Queue Topic Reporting | Community
Skip to main content
April 8, 2018
Question

Queue Topic Reporting

  • April 8, 2018
  • 15 replies
  • 2833 views

Hi all, so this Queue Topic report is one of my favorite reports to use and also to share with my key stakeholders. It helps me see all of the queue topics in my system and what the configuration behind them is. Prompts are awesome as well, which help provide pre-defined settings for the stakeholders to use for understanding configurations and for building reports. This is what you get as output:

Anyhow, here's the procedure for setting one up. I'm curious to hear how others are managing queue topics. Do you have other reports that you use?

  1. Create a new "Queue Topic" Report
  2. Add a New Column
  3. Delete all of the default columns in the "Columns (View)" interface
  4. Switch to Text Mode on the remaining "Column"
  5. Add first column text block
  6. Add a New Column
  7. Add second column text block
  8. Switch to Grouping Tab
  9. Switch to Text Mode & Add the following:

group.0.displayname=Request Type

group.0.textmode=true

group.0.valuefield=queueDef:project:name

group.0.valueformat=string

group.1.displayname=Topic Group

group.1.linkedname=direct

group.1.namekey=name

group.1.valuefield=parentTopicGroup:name

group.1.valueformat=string

textmode=true

10. Save & Close

First Column

column.0.displayname=Queue Topic

column.0.sharecol=true

column.0.textmode=true

column.0.value=<div style="border-color:#e2e2e2; border-style:solid; border-width:1px; background-color:#deebf2; border-radius:5px; margin-top: 3px; padding-left:5px; padding-top:4px; padding-bottom:4px; font-size:13px;"><strong>Name:

column.0.valueformat=HTML

column.0.width=1

column.1.link.linkproperty.0.name=ID

column.1.link.linkproperty.0.valuefield=ID

column.1.link.linkproperty.0.valueformat=val

column.1.link.lookup=link.view

column.1.link.valuefield=val(objCode)

column.1.listsort=HTML(name)

column.1.namekey=name

column.1.querysort=name

column.1.sharecol=true

column.1.sortOrder=2

column.1.sortType=asc

column.1.textmode=true

column.1.valuefield=name

column.1.valueformat=HTML

column.2.sharecol=true

column.2.textmode=true

column.2.value=&nbsp;Queue Topic ID: </strong>

column.2.valueformat=HTML

column.2.width=1

column.3.linkedname=direct

column.3.namekey=ID

column.3.querysort=ID

column.3.sharecol=true

column.3.sortOrder=1

column.3.textmode=true

column.3.valuefield=ID

column.3.valueformat=HTML

column.4.sharecol=true

column.4.textmode=true

column.4.value=</div><div style="border-color:#e2e2e2; border-style:solid; border-width:1px; background-color:#f2f1ea; border-radius:5px; margin-top: 3px; padding-left:5px; padding-top:4px; padding-bottom:4px; font-size:12px;"></strong>&nbsp;&nbsp;<strong>Topic Group: </strong>

column.4.valueformat=HTML

column.4.width=1

column.5.namekey=queue.topicgroup

column.5.querysort=parentTopicGroup:name

column.5.sharecol=true

column.5.textmode=true

column.5.valuefield=parentTopicGroup:name

column.5.valueformat=HTML

column.6.sharecol=true

column.6.textmode=true

column.6.value=<br>&nbsp;&nbsp;<strong>Default Duration: </strong>

column.6.valueformat=HTML

column.6.width=1

column.7.displayname=Duration

column.7.linkedname=direct

column.7.namekey=defaultDurationMinutes

column.7.querysort=defaultDurationMinutes

column.7.sharecol=true

column.7.textmode=true

column.7.valueexpression=IF(ISBLANK({defaultDurationMinutes}),"N/A",CONCAT({defaultDurationMinutes}/60/8," Days"))

column.7.valueformat=HTML

column.8.sharecol=true

column.8.textmode=true

column.8.value=<br><strong>&nbsp;&nbsp;Custom Form(s): </strong><br>&nbsp;&nbsp;&bull;

column.8.valueformat=HTML

column.8.width=1

column.9.listdelimiter=&nbsp;&nbsp;<br>&nbsp;&nbsp;&bull;&nbsp;

column.9.listmethod=nested(objectCategories).lists

column.9.textmode=true

column.9.type=iterate

column.9.valueexpression={category}.{name}

column.9.valueformat=HTML

Second Column

column.10.displayname=Routing Rule

column.10.sharecol=true

column.10.textmode=true

column.10.value=<div style="border-color:#e2e2e2; border-style:solid; border-width:1px; background-color:#deebf2; border-radius:5px; margin-top: 3px; padding-left:5px; padding-top:4px; padding-bottom:4px; font-size:13px;"><strong><strong>Name:

column.10.valueformat=HTML

column.10.width=1

column.11.linkedname=defaultRoute

column.11.namekey=view.relatedcolumn

column.11.namekeyargkey.0=defaultRoute

column.11.namekeyargkey.1=name

column.11.querysort=defaultRoute:name

column.11.sharecol=true

column.11.textmode=true

column.11.valuefield=defaultRoute:name

column.11.valueformat=HTML

column.12.sharecol=true

column.12.textmode=true

column.12.value=</strong></div><div style="border-color:#e2e2e2; border-style:solid; border-width:1px; background-color:#f2f1ea; border-radius:5px; margin-top: 3px; padding-left:5px; padding-top:4px; padding-bottom:4px; font-size:12px;"></strong>&nbsp;&nbsp;<strong>Assigned To Team: </strong>

column.12.valueformat=HTML

column.12.width=1

column.13.linkedname=defaultRoute

column.13.namekey=view.relatedcolumn

column.13.namekeyargkey.0=defaultRoute

column.13.namekeyargkey.1=name

column.13.querysort=defaultRoute:defaultTeam:name

column.13.sharecol=true

column.13.textmode=true

column.13.valuefield=defaultRoute:defaultTeam:name

column.13.valueformat=HTML

column.14.sharecol=true

column.14.textmode=true

column.14.value=&nbsp;&nbsp;<strong>Team ID: </strong>

column.14.valueformat=HTML

column.14.width=1

column.15.displayname=Route to Team

column.15.linkedname=defaultRoute

column.15.namekey=view.relatedcolumn

column.15.namekeyargkey.0=defaultRoute

column.15.namekeyargkey.1=ID

column.15.querysort=defaultRoute:defaultTeam:ID

column.15.sharecol=true

column.15.textmode=true

column.15.valuefield=defaultRoute:defaultTeam:ID

column.15.valueformat=HTML

column.16.sharecol=true

column.16.textmode=true

column.16.value=<br>&nbsp;&nbsp;<strong>Default Assigned To: </strong>

column.16.valueformat=HTML

column.16.width=1

column.17.displayname=Default Assigned To

column.17.linkedname=defaultRoute

column.17.namekey=view.relatedcolumn

column.17.namekeyargkey.0=defaultRoute

column.17.namekeyargkey.1=defaultAssignedToID

column.17.querysort=defaultRoute:defaultAssignedTo:name

column.17.sharecol=true

column.17.textmode=true

column.17.valuefield=defaultRoute:defaultAssignedTo:name

column.17.valueformat=HTML

column.18.sharecol=true

column.18.textmode=true

column.18.value=<br>&nbsp;&nbsp;<strong>Queue: </strong>

column.18.valueformat=HTML

column.18.width=1

column.19.link.linkproperty.0.name=ID

column.19.link.linkproperty.0.valuefield=defaultRoute:defaultProject:ID

column.19.link.linkproperty.0.valueformat=string

column.19.link.lookup=link.view

column.19.link.value=nested(defaultRoute).nested(defaultProject).val(objCode)

column.19.listsort=nested(defaultRoute).nested(defaultProject).HTML(name)

column.19.namekey=default.project

column.19.sharecol=true

column.19.textmode=true

column.19.valuefield=defaultRoute:defaultProject:name

column.19.valueformat=HTML

column.19.width=120

column.20.sharecol=true

column.20.textmode=true

column.20.value=&nbsp;<strong>Queue ID: </strong>

column.20.valueformat=HTML

column.20.width=1

column.21.displayname=Route to Project ID

column.21.listsort=nested(defaultRoute).nested(defaultProject).HTML(name)

column.21.namekey=default.project

column.21.sharecol=true

column.21.textmode=true

column.21.valuefield=defaultRoute:defaultProject:ID

column.21.valueformat=HTML

column.21.width=120

column.22.sharecol=true

column.22.textmode=true

column.22.value=<br>&nbsp;&nbsp;<strong>Queue Group: </strong>

column.22.valueformat=HTML

column.22.width=1

column.23.namekey=default.project.group.name

column.23.textmode=true

column.23.valuefield=defaultRoute:defaultProject:group:name

column.23.valueformat=HTML

column.23.width=120

This post is no longer active and is closed to new replies. Need help? Start a new post to ask your question.

15 replies

Doug_Den_Hoed__AtAppStore
Community Advisor
Community Advisor
April 8, 2018

Very nice Narayan!

I think it would be interesting to also chart this information over time; perhaps three on a dashboard, grouped by month, one above another showing:

  • stacked bar by Queue Topic per month
  • stacked bar by Routing Rule
  • stacked bar by Status

Connecting this thought with my conversation with Vic late Friday, if he decides to take the plunge and automatically delete originating Issues when they are converted to Tasks:

  • do you convert such Issues in your workflow (and if so, keep, or delete the original)?
  • do you think this information could be preserved in a custom text field (e.g on the Task)?
  • if so, would you bother?

Regards,

Doug

MoniqueEvans
Community Advisor
Community Advisor
February 19, 2019

This is awesome !! Thanks Narayan for sharing and giving perfect instructions. Not sure how we will use this, but definitely glad to have it in our arsenal! Monique Evans Stanley Black & Decker, Inc.

February 19, 2019

Brilliant report! Just brilliant. Demonstrates a bunch of different textmode techniques that I want to get familiar with / add to my tool belt. I'm focusing on taking our request fulfillment function to the next evolutionary step and this will definitely come in handy. Thanks for sharing!

You win the Internet today.

February 20, 2019

This is really cool.

Is there a way to filter out projects that aren't published as Help Request Queues? This report currently shows all projects in my instance, even ones that aren't request queues.

February 20, 2019

thanks Narayan! Our instance has a lot of templates that employ use of queue topics, so I made the following changes to the report in order to audit templates.

In Groupings:

group.0.displayname=Request Type

group.0.textmode=true

group.0.valuefield=queueDef:template:name

group.0.valueformat=string

group.1.displayname=Topic Group

group.1.linkedname=direct

group.1.namekey=name

group.1.valuefield=parentTopicGroup:name

group.1.valueformat=string

textmode=true

In Filters:

Queue | Project ID | Is Blank

February 20, 2019

You could filter on "Is Public". If "Is Public" equals 'None', the queue hasn't been published.

Note: You may also want to filter on the project status, as there could be 'published' queues in a status that would hide them from users (eg. anything other than Current)

February 20, 2019
Awesome Rick! That's exactly what I needed. Vincent Goodwin The Capital Group Companies
January 9, 2020

Hey @NRYN R - inactive‚ this is such a great report!

Have you by chance been able to solve the issue with the New Experience wrapping each shared col in a SPAN?

I had a very similar report built but yours looks much nicer so I decided to try it out.

‚I've attached some screenshots of what I am talking about.

NRYNRAuthor
January 12, 2020

Hi Cory,

I'm glad you're finding this code useful. If you manage request queues, it's a must have report in my opinion. In fact, I've since combined this report with several others in what's now our WFPro Request Queues package, something you might want to explore further since you use request queues.

Unfortunately, I am not attempting to adjust any of my code for New Experience for a few reasons. The main reason is that my code relies mostly on HTML, which I expected would render exactly in Workfront New as it does in Workfront Classic. However, New wasn't ready to handle these kind of views when it was released in beta. I've recently partnered with @Exp - Lilit Mkrtchyan‚ at Workfront to test various views against a development environment to assist in bringing parity to the experiences and significant progress has been made, including a fix that causes shared columns to render incorrectly.

I'm not sure how long it will take to see these changes in New, but I suggest switching back to Classic (or create a second admin account) if you need to use reports such as this one. Unfortunately, that doesn't help all of the other users who rely on this or similar reports, which is why I and every one of my users must remain in Classic until the entire app is in parity with New.

Thanks,

Narayan

Kundanism
January 13, 2020

This is really excellent Narayan. This helps at a great level to see the Queue topic name Vs Routing name at the same time as per company wise.

Thanks a lot for sharing your expertise in this regard.

With regards,

Kundan.