You're on your way to the next level! Join the Kudos program to earn points and save your progress.
Level 1: Seed
25 / 150 points
Next: Root
1 badge earned
Challenges come and go, but your rewards stay with you. Do more to earn more!
What goes around comes around! Share the love by gifting kudos to your peers.
Keep earning points to reach the top of the leaderboard. It resets every quarter so you always have a chance!
Join now to unlock these features and more
The Atlassian Community can help you and your team get more value out of Atlassian products and practices.
Hi,
I'm looking to retrieve an unlabeled attribute (name is provider, id is 1293) from an insight object entered in a form (name is incidentAsset, id is 10706). What is the easiest way to find the value of a asset attribute ? I tried several methods found on the internet but without success.
//get asset incident (this part works)
//get asset incident
def incidentAssetCf = ComponentAccessor.getCustomFieldManager().getCustomFieldObject(10706)
def incidentAssetValue = issue.getCustomFieldValue(incidentAssetCf)
//get provider, the attribute insight of selected asset
def getProvider = issue.getCustomFieldValue(incidentAssetCf) as List
def getProviderIds = getProvider*.getId()
def attributeValues = []
getProviderIds.each {
def providerAttribute = objectFacade.loadObjectAttributeBean(it, 'Provider')
//management of empty fields, otherwise an error appears
if (providerAttribute != null) {
def providerValue = providerAttribute.getObjectAttributeValueBeans()[0].getValue()
attributeValues << providerValue
}
else {
def providerValue = "N/A"
attributeValues << providerValue
}
}
def providerToDescription = "Provider : " + attributeValues
Hello @vpass . Thank you for sharing this! I'm not able to get it to work. May I ask what version of Jira you were using (Data Center, Server, Cloud) and what context you used this in (post function, other)? Sincere thanks.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
To begin with, I retrieve the Asset concerned.
//get asset incident
def incidentAssetCf = ComponentAccessor.getCustomFieldManager().getCustomFieldObject(XXXXX)
//get provider, the attribute insight of selected asset
def getAsset = issue.getCustomFieldValue(incidentAssetCf) as List
def getAssetIds = getAsset*.getId()
def providerValue = [] as ArrayList<ObjectBean>
getAssetIds.each {
def providerAttribute = objectFacade.loadObjectAttributeBean(it, 'Provider')
//management of empty fields, otherwise an error appears
if (providerAttribute != null) {
def getProviderValue = providerAttribute.getObjectAttributeValueBeans()[0].getValue()
providerValue << getProviderValue
}
else {
def getProviderValue = "N/A"
providerValue << getProviderValue
}
}
//regex for extract real data of provider
def providerValueMatcher = providerValue =~ /\[(.*?)\]$/
def providerValueResult = (providerValueMatcher) ? providerValueMatcher[0][1] : null
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Sincere thanks! With your assistance, I was able to get this working. I truly appreciate you taking the time to not only share but also explain your code/logic. All the best!
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.