When user wants to add item to a queue, the default view used to perform the lookup is the “Business Queues” view.
Don’t try to look it up in customizations – it’s not there and seems to be hard-coded. Not only that, it’s not documented anywhere [I could find] making it extremely difficult to understand what is it, how to deal with it and how to explain it to the end users.
Not for the first time, SQL Server Profiler and troubleshooter’s hunch to the rescue.
Business queue is a queue that is assigned as default to neither users nor teams.
Here you have it. I understand why it’s not defined as a system view – it’s one of those – impossible to define in Advanced Find. If you have a queue that does not show in Business Queues view (typically after the upgrade from 2011), just find and remove link to it from the teams or users using it as a default. In other words, find users and teams that have field Default Queue linked to the queue in question and set it to null.
Is there any way to make this view not the default view within lookups?
Lookups generally give you ability to set a default view, have you tried that? Or are you after some specific OOB lookups where you don’t have explicit control?
Following up on Rob’s question and your answer…
The issue can’t be resolved by changing a lookup mapping to a different view. The issue arises when trying to route an item. The OOTB route dialog appears, which I presume cannot be modified, with a Queue lookup field. That field is defaulted to look at Business Queues which affects automatic name resolution. Can this be changed back to look at Active Queues by default?
I don’t think lookup in the route dialog can be changed. The whole concept of the business queues stinks, imho, starting from the fact that they are not documented anywhere.
I came across this during some Development to synchronise Queues between a Dev environment and Test/Staging/Live etc. Obviously you dont want to sync Default Queues between environments so a query was needed to filter out the default Queue’s leaving behind the Business Queues. We came up with the following, and I hope it helps others too.
Execute that in a Fetch Expression via the Service Proxy and then filter the results to ones which have a attribute bag which doesn’t contain t.name or su.fullname. Viola, you have the Business Queues from only minorly offensive code 😉
Here is the actual FetchXML to retrieve business queues, taken the SavedQuery Set metadata.
unfortunately, I have not been able to successfully edit the metadata to get a different defuault view.
<fetch version=”1.0″ output-format=”xml-platform” mapping=”logical”>
<entity name=”queue”>
<attribute name=”name” />
<attribute name=”queueid” />
<link-entity name=”systemuser” to=”queueid” from=”queueid” link-type=”outer” />
<link-entity name=”team” to=”queueid” from=”queueid” link-type=”outer” />
<filter type=”and”>
<condition entityname=”systemuser” attribute=”queueid” operator=”null” />
<condition entityname=”team” attribute=”queueid” operator=”null” />
</filter>
<order attribute=”name” descending=”false” />
</entity>
</fetch>
Thanks for a great tip! This had me really flustered. Seems like the idea Microsoft has is that “Business Queues” are the queues that nobody is using as “their” queue, hence it must be used as the business queue in general, and not a personal/team dedicated queue.
Hi, this clearly works but now I am just trying to understand what the implications are for removing the default queue from the user or team?
[…] Ensure that queue is assigned as default to neither users nor teams. Read More on this post: http://crmtipoftheday.com/2014/07/04/there-is-no-queue-like-business-queue/ […]
Thanks, you saved me hours of research!
Removed the queue from one user and problem solved.
Awesome tip!
Thanks!
This is so weird but it works. Thank you for the Tip!