J tricks - Little JIRA Tricks
  • Home
  • Plugins ↓
    • JQL Tricks Plugin
      • JQL Tricks Plugin - Cloud
        • JQLT Cloud Installation
        • JQLT Cloud Configuration
        • JQLT Cloud Usage
        • JQLT Cloud License
        • JQLT Cloud FAQ
      • JQL Tricks Plugin - DC
        • JQLT DC Installation
        • JQLT DC Configuration
        • JQLT DC Usage
          • JQLT Issue Functions
          • JQLT Subtask Functions
          • JQLT Links Functions
          • JQLT Development Functions
          • JQLT Worklog Functions
          • JQLT Project Functions
          • JQLT Component Functions
          • JQLT Version Functions
          • JQLT Group Functions
          • JQLT User Functions
          • JQLT Date Functions
        • JQLT DC License
        • JQLT DC FAQ
        • JQLT DC Known Issues
        • JQLT DC Performance
      • JQL Tricks Cloud Migration
    • Simplified Planner
      • J-Planner Installation
      • J-Planner Configuration
      • J-Planner Usage
        • Creating a plan
        • Editing a plan
        • Deleting a plan
        • Viewing a plan
        • Modifying a plan
      • J-Planner FAQ
    • Atla-Search Plugin
      • Atla-Search Installation
      • Atla-Search Configuration
      • Atla-Search Usage
      • Atla-Search License
      • Atla-Search FAQ
    • Heroku for Compass App
      • Heroku for Compass Installation
      • Heroku for Compass Configuration
      • Heroku for Compass Usage
    • Copy to subtask Plugin
    • All Plugins
  • Tutorials
  • The Book
  • Contact Us
  • Home
  • Plugins ↓
    • JQL Tricks Plugin
      • JQL Tricks Plugin - Cloud
        • JQLT Cloud Installation
        • JQLT Cloud Configuration
        • JQLT Cloud Usage
        • JQLT Cloud License
        • JQLT Cloud FAQ
      • JQL Tricks Plugin - DC
        • JQLT DC Installation
        • JQLT DC Configuration
        • JQLT DC Usage
          • JQLT Issue Functions
          • JQLT Subtask Functions
          • JQLT Links Functions
          • JQLT Development Functions
          • JQLT Worklog Functions
          • JQLT Project Functions
          • JQLT Component Functions
          • JQLT Version Functions
          • JQLT Group Functions
          • JQLT User Functions
          • JQLT Date Functions
        • JQLT DC License
        • JQLT DC FAQ
        • JQLT DC Known Issues
        • JQLT DC Performance
      • JQL Tricks Cloud Migration
    • Simplified Planner
      • J-Planner Installation
      • J-Planner Configuration
      • J-Planner Usage
        • Creating a plan
        • Editing a plan
        • Deleting a plan
        • Viewing a plan
        • Modifying a plan
      • J-Planner FAQ
    • Atla-Search Plugin
      • Atla-Search Installation
      • Atla-Search Configuration
      • Atla-Search Usage
      • Atla-Search License
      • Atla-Search FAQ
    • Heroku for Compass App
      • Heroku for Compass Installation
      • Heroku for Compass Configuration
      • Heroku for Compass Usage
    • Copy to subtask Plugin
    • All Plugins
  • Tutorials
  • The Book
  • Contact Us

JQL Tricks - Cloud Migration

Excited about the news of JQL Tricks made available in Jira Cloud? Looking to migrate to JQL Tricks Cloud from your current server App? Following are some guidelines to aid the migration.

Migration Path

Due to the difference in App framework in Jira Server/DC and Cloud, there is no automatic migration path available. A lot of the JQL functions, although not all, are available on Jira Cloud as well but they work as JQL Aliases as opposed to standard JQL Functions. This means that the JQLT functions currently used in your Jira filters needs to be replaced with the appropriate JQL alias during/after the migration. It is not possible to automate the migration because of the numerous ways the JQL functions can be used and the numerous combinations of arguments that can be used within those functions.

JQL Aliases makes use of Jira issue entity properties - a set of metadata stored against each issue - and the JQL Tricks Cloud App takes advantage of these aliases by adding custom metadata and providing a unique namespace to search them. The unique namespace, starting with jqlt., lists aliases under different groupings like jqlt.links, jqlt.attachments, jqlt.comments, jqlt.worklogs, jqlt.subtasks, jqlt.parent, jqlt.history, jqlt.affectsversions, jqlt.fixversions, jqlt.agile and jqlt.components.

Following is an example on how a JQL function to search for issues with exactly 3 subtasks works in Jira server compares to the corresponding JQL alias in Jira Cloud.
Jira Server/DC
Jira Cloud
Jira Server/DC
issue in hasSubtasks(3)
Jira Cloud
jqlt.subtasks.count = 3
 As you can see from the example, the syntax is different although they yield the same result.

Installation/Configuration

Due to the aforementioned differences in App framework in Jira Server/DC and Cloud, there are subtle differences in the App installation and configuration as well. See the installation guide and configuration guide for details.

Feature Parity

Please see the below tables for feature parity for each JQL function groups that is currently available on server. In some cases, JQL Tricks Cloud App offers more search options compared to the Server App. More details, with examples, can be found in the server usage documentation or cloud usage documentation.
Issue Functions
Subtask Functions
Issue Links Functions
Development Functions
Worklog Functions
Project Functions
Version Functions
Component Functions
User Functions
Group Functions
Date Functions
Issue Functions
Most issue functions are covered in Cloud in one way or the other. Cloud App version also adds a lot more aliases, giving more search options. See documentation for explanation on each function and detailed examples.

Server
Cloud
Example
hasAttachments
jqlt.attachments.count
jqlt.attachments.count = 0
jqlt.
attachments.count > 3
hasSameValues
Not Available
-
commentedByUser
jqlt.comments.createdBy
jqlt.comments.createdBy = "userId"
commentedOnDate
jqlt.comments.createdOn
jqlt.comments.createdOn = "2021-01-06"
attachedByUser
jqlt.attachments.author
jqlt.attachments.author = "userId"
componentsFromProject
Not Available
-
commentedAfterDate
jqlt.comments.createdOn
jqlt.comments.createdOn >= -3w
movedIssues
jqlt.history.field
jqlt.history.project.from
jqlt.history.project.to
jqlt.history.issuetype.from
jqlt.history.issuetype.to
jqlt.history.field = "project"
jqlt.history.project.from = "SERVER" 
jqlt.history.project.to = "CLOUD"
jqlt.history.issuetype.from = "Bug"
jqlt.history.issuetype.to = "Feature"

hasSameversions
Not Available
-
hasVersions
jqlt.affectsversions.count
jqlt.fixversions.count
jqlt.affectsversions.count = 0
jqlt.fixversions.count > 3

hasComponents
jqlt.components.count
jqlt.components.count = 3
commentedBeforeDate
jqlt.comments.createdOn
jqlt.comments.createdOn >= -3w
New on Cloud
Alias
Example
jqlt.attachments.createdFirst
jqlt.attachments.createdFirst = "2021-01-06"
jqlt.
attachments.createdFirst >= -3w
jqlt.attachments.createdLast
jqlt.attachments.createdLast >= -3w
jqlt.attachments.type
jqlt.attachments.type = "png"
jqlt.attachments.name
jqlt.attachments.name ~ "test"
jqlt.comments.count
jqlt.comments.count = 3
jqlt.comments.createdFirst
jqlt.comments.createdFirst >= -3w
jqlt.comments.createdLast
jqlt.comments.createdLast = "2021-01-06"
jqlt.comments.updatedOn
jqlt.comments.updatedOn >= -3w
jqlt.comments.updatedBy
jqlt.comments.updatedBy = "userId"
Subtask Functions
parent and subtask functions on Server App offers great flexibility in terms of using any JQL to filter issues based on subtask/parent values. On the Cloud App, such flexibility is not available due to the difference in architecture. We have still found ways to create aliases for most commonly used searches that includes searching subtask or parent issues based on standard issue fields like summary, status, priority etc.

See documentation for explanation on each function and detailed examples.

Server
Cloud
Example
parent
jqlt.parent.summary
jqlt.parent.status
jqlt.parent.statusCategory
jqlt.parent.priority
jqlt.parent.issueType
jqlt.parent.summary ~ "test"
jqlt.parent.status in ("Open", "In Progress")
jqlt.parent.statusCategory = "To Do"
jqlt.parent.priority = "Major"
jqlt.parent.issuetype in ("Bug", "Story")

subtask
jqlt.subtasks.key
jqlt.subtasks.summary
jqlt.subtasks.status
jqlt.subtasks.statusCategory
jqlt.subtasks.priority
jqlt.subtasks.issueType
jqlt.subtasks.key = "JTRICKS-11"
jqlt.subtasks.summary ~ "test"
jqlt.subtasks.status = "Open"
jqlt.subtasks.statusCategory in ("To Do", "In Progress") 
jqlt.subtasks.priority = "Major"
jqlt.subtasks.issuetype = "Sub-task"

hasSubtasks
jqlt.subtasks.count
jqlt.subtasks.count = 3
Issue Links Functions
JQL Tricks Server App offers great flexibility in terms of searching issues based on links, traverse links to multiple levels, seraching linked issues based on a given JQL/filter etc. JQL Tricks Cloud App only offers a subset of these functions due to the limitations on Cloud App framework.

See documentation for explanation on each function and detailed examples.

Server
Cloud
Example
linkedAllIssues
Not Available
-
linkedIssuesByDepth
Not Available
-
hasLinks
jqlt.links.count
jqlt.links.type
jqlt.links.count = 3
jqlt.links.type in ("is blocked by", "clones")

linkedIssuesInProject
jqlt.links.project
jqlt.links.project = "JTRICKS"
inkedIssuesInVersion
Not Available
-
linkedIssuesInComponent
Not Available
-
linkedIssuesHasStatus
jqlt.links.status
jqlt.links.status = "Open"
linkedIssuesInVersionByName
Not Available
-
linkedIssuesInComponentByName
Not Available
-
linkedIssuesInQuery
Not Available
-
linkedIssuesInFilter
Not Available
-
issuesWhereEpicIn
jira.agile.epicSummary
jira.agile.epicProject
jira.agile.epicStatus
jira.agile.epicStatusCategory
jira.agile.epicPriority
jqlt.agile.epicSummary ~ "test"
jqlt.agile.epicProject in ("JTRICKS", "TEST")
jqlt.agile.epicStatus = "Open"
jqlt.agile.epicStatusCategory = "To Do"
jqlt.agile.epicPriority in ("Major", "Blocker")

epicsWhereIssueIn
jira.agile.issueKey
jira.agile.issueSummary
jira.agile.issueProject
jira.agile.issueType
jira.agile.issueStatus
jira.agile.issueStatusCategory
jira.agile.issuePriority
jqlt.agile.issueKey = "JTRICKS-123"
jqlt.agile.issueSummary ~ "test"

jqlt.agile.issueProject in ("JTRICKS", "TEST")
jqlt.agile.issueType in ("Bug", "Story")
jqlt.agile.issueStatus = "Open"
jqlt.agile.issueStatusCategory = "To Do"
jqlt.agile.issuePriority in ("Major", "Blocker")

hasRemoteLinks
Not Available
-
epicsWithIssues
jira.agile.issueCount
jqlt.agile.issueCount = 3
Development Functions
None of the development functions on JQL Tricks Server App is ported to Cloud because they are standard functions in Cloud.

See Atlassian Cloud documentation for more details.
Worklog Functions
Most worklog functions on JQL Tricks Server App has an equivalent counterpart on the Cloud App.

See documentation for explanation on each function and detailed examples.

Server
Cloud
Example
workStartedOn
Not Available
-
workLoggedOn
jqlt.worklog.createdOn
jqlt.worklogs.createdOn = "2021-01-06"
jqlt.
worklogs.createdOn >= -3w
workUpdatedOn
jqlt.worklog.updatedOn
jqlt.worklogs.updatedOn >= -3w
workLoggedBetween
jqlt.worklog.createdFirst
jqlt.worklog.createdLast
jqlt.worklogs.createdFirst >= -3w AND jqlt.worklogs.createdLast >= -2w
workLoggedAfter
jqlt.worklog.createdOn
jqlt.worklogs.createdOn >= -"2021-01-06"
workLoggedBy
jqlt.worklog.createdBy
jqlt.worklogs.createdBy = "userId"
New on Cloud
Alias
Example
jqlt.worklogs.count
jqlt.worklogs.count = 0
jqlt.
worklogs.count > 3
jqlt.worklogs.updatedBy
jqlt.worklogs.updatedBy = "userId"
Project Functions
Due to the differences in App framework in Jira Server/DC and Cloud, none of the project functions are ported to Cloud. See documentation for the list of available functions.
Version Functions
Due to the differences in App framework in Jira Server/DC and Cloud, there are differences in the way version functions are implemented on the Cloud App. See documentation for explanation on each function and detailed examples.
​
Server
Cloud
Example
​dueVersions
Not Available
-
overDueVersions
jqlt.affectsversions.overdue
​jqlt.fixversions.overdue
jqlt.fixversions.overdue = true
jqlt.affectsversions.overdue = true
openVersions
​Not Available
-
currentVersionsBySeq
Not Available
-
currentVersionsByDate
​Not Available
-
versionsAfterDate
jqlt.affectsversions.releasedOn
​jqlt.fixversions.releasedOn​
jqlt.fixversions.releasedOn >= "2021-01-06" 
jqlt.affectsversions.releasedOn >= -3w
releasedOn
jqlt.affectsversions.releasedOn
​jqlt.fixversions.releasedOn
jqlt.fixversions.releasedOn = "2021-01-06" 
jqlt.affectsversions.releasedOn = "2021-01-06" 
versionsAfter
​​Not Available
-
versionsBefore
​Not Available
-
versionMatches
​Not Available
-
archivedVersions
​​Not Available
-
New on Cloud
Alias
Example
jira.fixversions.count
​jira.affectsversions.count
jqlt.fixversions.count = 0
jqlt.affectsversions.count > 3
jira.fixversions.releasedCount
​jira.affectsversions.releasedCount
​jqlt.fixversions.releasedCount = 0
jqlt.affectsversions.releasedCount > 3
jira.fixversions.archivedCount
​jira.affectsversions.archivedCount
jqlt.fixversions.archivedCount = 0
jqlt.affectsversions.archivedCount > 3
jira.fixversions.startedOn
​jira.affectsversions.startedOn
jqlt.fixversions.startedOn = "2021-01-06" 
jqlt.affectsversions.startedOn >= -3w
Component Functions
Due to the differences in App framework in Jira Server/DC and Cloud, componentMatches function is not ported to Cloud. There are some additions as given below. See documentation for details and examples.

New on Cloud

Alias
Example
jqlt.components.count
jqlt.components.count = 0
jqlt.components.count > 3
jqlt.components.lead
jqlt.components.lead = "User1"
User Functions
Due to the differences in App framework in Jira Server/DC and Cloud, none of the user functions are ported to Cloud. See documentation for the list of available functions.
Group Functions
Due to the differences in App framework in Jira Server/DC and Cloud, none of the group functions are ported to Cloud. See documentation for the list of available functions.
Date Functions
Due to the differences in App framework in Jira Server/DC and Cloud, none of the date functions are ported to Cloud. See documentation for the list of available functions.
Support

If you have specific questions about the migration that are not answered above, please contact us.

SUPPORT
APPS
TUTORIALS
THE BOOK
© J-Tricks