Create
cancel
Showing results for 
Search instead for 
Did you mean: 
Sign up Log in

Adaptivist Scriptrunner CQL

Victor Prasad June 26, 2020

Hello,

I am looking to create a user macro that allows this cql query

Skype AND (spacekey:SVCCAT or spacekey:ICS or spacekey:APPCAT)

 

But have the search term variable, so instead of typing 'Skype', and term can be used, and it will return results based on the 3 spaces I have listed.

Search Box gives a choice of 1 of the 3 spaces per search, but not all.

Can the CQL custom scriptrunner option do this?

Thoughts?

Thanks,

 

V

10 answers

1 vote
Victor Prasad July 7, 2020

Did I forget to say

 

WOW!!!!

1 vote
Victor Prasad July 7, 2020

oh wow!

 

Thank you Thank you Thank you!

I have never made a macro before...

0 votes
Victor Prasad July 16, 2020

Oh, i see!!!

 

Learned something new!  

 

Thanks again!

0 votes
Davin Studer
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.
July 16, 2020

Sorry, I forgot that the search results macro doesn't use CQL. It uses Lucene search syntax. Lucene, to my knowledge, does not have anything in the search syntax to specify the order.

0 votes
Victor Prasad July 13, 2020

Hi Davin,

That makes sense, however when I added the order by, I get zero results:

 

Found 0 search result(s) for (skype) AND (spacekey:SVCCAT OR spacekey:ICS OR spacekey:APPCAT) order by lastmodified desc.

 

This is the macro content when I get zero results:

## Developed by: Davin Studer

## Date created: 06/26/2020

## @noparams

 

<form class="aui" method="GET" action="">

    <input id="q" name="q" type="text" class="text" placeholder="" /> <button class="button">Search</button>

</form>

 

#set($q = $req.getParameter('q'))

#if($q && $q != "")

<p>

  <ac:structured-macro ac:name="search" ac:schema-version="1">

    <ac:parameter ac:name="maxLimit">100000</ac:parameter>

    <ac:parameter ac:name="query">($q) AND (spacekey:SVCCAT OR spacekey:ICS OR spacekey:APPCAT) order by lastmodified desc</ac:parameter>

</ac:structured-macro>

</p>

#end

 

But this works fine

 

## Developed by: Davin Studer

## Date created: 06/26/2020

## @noparams

 

<form class="aui" method="GET" action="">

    <input id="q" name="q" type="text" class="text" placeholder="" /> <button class="button">Search</button>

</form>

 

#set($q = $req.getParameter('q'))

#if($q && $q != "")

<p>

  <ac:structured-macro ac:name="search" ac:schema-version="1">

    <ac:parameter ac:name="maxLimit">100000</ac:parameter>

   <ac:parameter ac:name="query">($q) AND (spacekey:SVCCAT OR spacekey:ICS OR spacekey:APPCAT)</ac:parameter>

</ac:structured-macro>

</p>

#end

 

Which worked:

Found 67 search result(s) for (skype) AND (spacekey:SVCCAT OR spacekey:ICS OR spacekey:APPCAT).

 

Would I have to restart the Confluence Service?  Clear caches?

 

I do appreciate you help and expertise - thank for responding!

 

V

0 votes
Davin Studer
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.
July 13, 2020

Try this for descending ...

<ac:parameter ac:name="query">($q) AND (spacekey:SVCCAT OR spacekey:ICS OR spacekey:APPCAT) order by lastmodified desc</ac:parameter>

... or this for ascending.

<ac:parameter ac:name="query">($q) AND (spacekey:SVCCAT OR spacekey:ICS OR spacekey:APPCAT) order by lastmodified asc</ac:parameter>

https://developer.atlassian.com/server/confluence/advanced-searching-using-cql/#order-by

0 votes
Victor Prasad July 10, 2020

The search sorts by relevance, can I change that by date modified?  not sure of the syntax

0 votes
Victor Prasad July 9, 2020

It really did, super handy!

Is there a library or site of what others have done the Adaptivist ScriptRunner.  I am sure people have done crazy things!

 

Thanks again!

0 votes
Davin Studer
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.
July 7, 2020

Glad it helped.

0 votes
Davin Studer
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.
June 26, 2020

This is a pretty simple way to do it by wrapping the search results macro.

Macro Name:
custom_search

Macro Title:
Custom Search

Macro Body Processing:
No macro body

Template:

## Developed by: Davin Studer
## Date created: 06/26/2020
## @noparams

<form class="aui" method="GET" action="">
    <input id="q" name="q" type="text" class="text" placeholder="" /> <button class="button">Search</button>
</form>

#set($q = $req.getParameter('q'))
#if($q && $q != "")
<p>
  <ac:structured-macro ac:name="search" ac:schema-version="1">
    <ac:parameter ac:name="maxLimit">100000</ac:parameter>
    <ac:parameter ac:name="query">($q) AND (spacekey:SVCCAT OR spacekey:ICS OR spacekey:APPCAT)</ac:parameter>
  </ac:structured-macro>
</p>
#end

Suggest an answer

Log in or Sign up to answer
TAGS
AUG Leaders

Atlassian Community Events