Calculated Measure - Extract pattern

Hello
A few days ago, one partner and I tried to generate calculated measure to extrac (considering a patter) any values in a field that matches.

Example:
Field: Linked Issues
values: RNCFBAF-116, CODS-480, RNCFBAF-33
Expected response CODS-480

Value: CSTS-1728, CODS-762
Expected CODS-762

Value: CODS-762, CSTS-1728
Expected CODS-762

Value: CODS-757, PNOMPIBEF-417, CODS-668, COSE-437
Expected: CODS-757, CODS-668

Blockquote
CASE
WHEN Instr([Measures].[Issue Linked Issue], “CODS-”) > 0 THEN
Trim(
Replace(
IIf(
Instr([Measures].[Issue Linked Issue], “,”) > 0,
Replace([Measures].[Issue Linked Issue], “,”, " "),
[Measures].[Issue Linked Issue]
),
" ", ", "
)
)
ELSE
“”
END

The script works partially because, when expected pattern is in allone works perfectly.
If pattern is in 2nd shows both values
if pattern appears more than once display same as original.

Can you help us to fix this

Regards.
Sincerly
*Eduardo M.

Hi @cachorroyayo

Please try the following formula to get a comma-separated string of CODS issues:

Generate(
  Filter(
    [Issue].[Issue].GetMembersByKeys(
      [Measures].[Issue Linked Issue]
    ),
    [Issue].CurrentMember.GetString('Project key') = "CODS"
  ),
  [Issue].CurrentMember.GetString('DISPLAY_KEY'),
  ", "
)

​Best regards,
​Nauris

1 Like

It works extraordinariely !!
Thank you very much Nauris.

And i want to share you a enhancement for this same porpouse.
A short link for the issues filtered:

Generate(
Filter(
[Issue].[Issue].GetMembersByKeys(
[Measures].[Issue Linked Issue]
),
(
[Issue].CurrentMember.GetString(‘Project key’) = “COSE” OR
[Issue].CurrentMember.GetString(‘Project key’) = “EMSM” OR
[Issue].CurrentMember.GetString(‘Project key’) = “CDSI” OR
[Issue].CurrentMember.GetString(‘Project key’) = “PROD” OR
[Issue].CurrentMember.GetString(‘Project key’) = “LVL2” OR
[Issue].CurrentMember.GetString(‘Project key’) = “CODS”
)
),
“<a href='https://jira4UrOrganization.atlassian.net/browse/
|| [Issue].CurrentMember.GetString(‘DISPLAY_KEY’)
|| “'>”
|| [Issue].CurrentMember.GetString(‘DISPLAY_KEY’)
|| “”,
", "
)

image

Regards.

Hi @cachorroyayo

That looks great, thanks for sharing!

If you wish to check for multiple project keys, there’s a shorter way to check with regular expressions:

Generate(
  Filter(
    [Issue].[Issue].GetMembersByKeys(
      [Measures].[Issue Linked Issue]
    ),
    [Issue].CurrentMember.GetString('Project key') MATCHES 'COSE|EMSM|CDSI|PROD|LVL2|CODS'
  ),
  "<a href='https://jira4UrOrganization.atlassian.net/browse/"
  || [Issue].CurrentMember.GetString('DISPLAY_KEY')
  || "'>"
  || [Issue].CurrentMember.GetString('DISPLAY_KEY')
  || "",
  ", "
)

Nauris

1 Like