Forums

Articles
Create
cancel
Showing results for 
Search instead for 
Did you mean: 

Cannot get AQL Placeholders working

Samuel Stephens
Contributor
February 8, 2023

Hi all,

I have tried to death this guide on limited selection using AQL Placeholders for Create/Edit objects and it works in some cases but when I try to expand this to anything outside of a very basic CRM it breaks and does not want to cooperate.

https://confluence.atlassian.com/servicemanagementserver/advanced-placeholders-1044784599.html

This is infuriating as I have many use cases for such a simple function however it's proving extremely difficult to set up. I just want to limit selection on object creation.

For example:

Create Object > Select Org A
I should only see team selections for teams in Org A.

The video does not explain this very well at all and there is little to no documentation on this capability. If you have done this or made it work in an easy repeatable way please let me know :(

1 answer

1 accepted

1 vote
Answer accepted
PD Sheehan
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
February 14, 2023

I set up a sample schema with 3 object types: Org, Team and Object

Team contains an attribute called "Org For Team" that is a type "Object" and points to the Org object Type.

Object contains both an "Org For Object" attribute (same as above, type object and points to Org) and a "Team for Object" attribute (type object and point to Team).

The "Team for Object" has the following IQL in the configuration "Filter Objects"

"Org for Team"=${Org for Object}

The ${Org for Object} refers to the item selected while creating the new object. This is then compared to the "Team" attribute "Org for Team" and the filter renders just those teams.

2023-02-14 19_29_04-Window.png 

Which you can see is a subset of the Teams:

2023-02-14 19_30_12-Window.png

Samuel Stephens
Contributor
March 15, 2023

Hi @PD Sheehan

This is the same model I've followed for my current CRM implementation as you've shown. I'm just trying to understand in a simple way how they relate.

Would you mind sharing the detailed attribute configuration for this example?

I'm keen to discover which attributes and values directly relate to which object type and how,

For example, does the 'additional value' (reference) play a part at all?
By 'points to' do you mean 'has Type Value'?

I think i'm 70% there and I believe this would be quite powerful in other applied theories so very keen to understand.

Also, does it require at least three object types? I haven't seen any way to do this between 2 object types as yet.

PD Sheehan
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
March 16, 2023

Sorry, I no longer have that example. The environment where I created it was refreshed.

By point to, I meant that the attribute configuration is set Type=Object and Type Value is the object type I said it points to.

In this example, the "Additional Value" (link type) doesn't matter.  But later, when you have several such attributes with type=Object it might become necessary to limit results based on the link type.

I don't think there is any minimum or limit for how many object type this can work with. I only used 3 to try to match the described example.

The point is, any attribute of type=Object can have an IQL filter that will limit the list of objects retrieved based on the value of other attributes

Like Samuel Stephens likes this
Samuel Stephens
Contributor
March 16, 2023

Thanks @PD Sheehan

We actually managed to get this working yesterday based on your example.
We were able to do this across object schema also which is quite cool.

Unfortunately I just don't think this is that well officially documented.
The latest I was able to find was a really old YouTube video from Mindville.

Thanks for your help!

Sam

Like PD Sheehan likes this
PD Sheehan
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
March 16, 2023

I agree with you on the poor documentation.

I was much better in the riada/mindville days.

I was lucky to get started with Insights just before the acquisition and had access to a lot of the old documentation during my "formative days".

Like Samuel Stephens likes this
Samuel Stephens
Contributor
May 3, 2023

Hey @PD Sheehan

I have a slightly separate question I wanted to ask you about.
It closely aligns with this theme so thought i'd just pose it to you here.

I have a list of objects, one of which has the inbound references to another object type.
My question is:

How do I get the list to show when the Org is selected for example, among other org/s.

Example:

  • Org 1
  • Org 2
    • Team 1
  • Org 3

My current issue is that I can get Team 1 to show when the corresponding Org 2 is selected, however if i select another object with it (Org 1 for example), Assets throws an error.

Appreciate your support :)

PD Sheehan
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
May 4, 2023

Are you talking in the context of selecting values in a custom fields?

Or just applying IQL filters in the attribute configuration for Team?

Either way, can you share the IQL you've used?

If I understand correctly, you're saying that the Org attribute can accept mulitiple objects selection. And when you select more than one, the Team attribute no longer works as expected.

Samuel Stephens
Contributor
May 7, 2023

Hey @PD Sheehan

I'm not referring to custom fields however in context yes its technically possible.
To simplify, and this may be going against the logic.

If I select more than one organization, I would think I'd get more than one team in the list however the rule seems to break entirely.

I have three levels like your example (Organisation, Team, Customer)
Team has Organisation with no IQL, Customer has Organisation and Team with the following IQL on, the IQL is pretty basic.
Organisation = ${Organisation}
The orgs and teams have inbound references that link them to the customer.

However, when I set the cardinality of Organisations to unlimited or more than 1, I get no results or Jira throws an error.
What I would like to achieve is, the more organisations I select, the more teams should appear in the list.

Is my IQL wrong or is this not technically possible and must be a one to one relationship?

Thanks,
Sam :)

PD Sheehan
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
May 8, 2023

Just imagine if you were applying that IQL directly to the object advanced search and you wanted to select mulitiple

Assume ${Organisation} resolves to "KEY-1, KEY-2"

The IQL: Organisation = "KEY-1, KEY-2" would not work.

So you just change your iql to something that can accept multiple values:

Organisation in (${Organisation$(0)})

Like Samuel Stephens likes this
Samuel Stephens
Contributor
September 25, 2023

Hey @PD Sheehan 

The bottom query you provided worked a treat for my use case.

I had to slightly adjust for two or more word arguments but it works.

"Two Words" IN (${Two Words${0}})

Suggest an answer

Log in or Sign up to answer