Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Earn a 50% discount on the DP-600 certification exam by completing the Fabric 30 Days to Learn It challenge.

Reply
Moulahoum
New Member

Concatenate text by group : EARLIER function not working

Hello everyone,

 

I am trying to create a measure in DAX to concatenate all CODES that have the same Group ID.

I have tried the CONCATENATEX function mentioned in many other discussion threads but it doesn't seem to function as there appears to be a problem with the function EARLIER which doesn't recognize any value.

This is the initial table:

Group Registration IDSPN CODE
578-24-3545895SM-CC
578-24-3545895WR-SF
578-24-3544933FU-TR
578-24-3544933SM-AD
578-24-3544933SM-CC
578-24-3544933WR-SF
578-24-3532081WR-SF
578-24-3524650SM-DP
578-24-3518403LP-MS
578-24-3518403N/A

The desired output should be as such:

578-24-3545895SM-CCSM-CC; WR-SF
578-24-3544933FU-TRFU-TR; SM-AD; SM-CC; WR-SF
578-24-3532081WR-SFWR-SF
578-24-3524650SM-DPSM-DP
578-24-3518403LP-MSLP-MS; N/A

I have tried this but it's not working and I have the following error :

CODES = CONCATENATEX(FILTER(SPN, SPN[Group Registration ID]=EARLIER(SPN[Group Registration ID])), SPN[SPN CODE], "; ")

Moulahoum_0-1709640767170.png

 

I would appreciate any orientation

 

Thank you

2 ACCEPTED SOLUTIONS
HotChilli
Super User
Super User

If you are writing a measure, it will be a bit simpler than the code shown.

Follow the example here https://learn.microsoft.com/en-us/dax/concatenatex-function-dax?WT.mc_id=DP-MVP-4025372#example 

View solution in original post

v-heq-msft
Community Support
Community Support

Hi @Moulahoum ,
@JamesFR06 Good solution.
Here's what I need to add
According to mine using your data to test the dax you wrote in power bi, when I put your dax code into measure, he got the same error as you. But when you use the calculated columns, your dax code runs with the results you want. According to the documentation I checked, EARLIER succeeds if there is a row context prior to the beginning of the table scan. otherwise it returns an error.

vheqmsft_0-1709705513727.png

vheqmsft_1-1709705559030.png

Also, you can create a new table

Table = 
ADDCOLUMNS(
    SUMMARIZE('SPN', 'SPN'[Group Registration ID]),
    "Codes", 
    CONCATENATEX(
        FILTER('SPN', 'SPN'[Group Registration ID] = EARLIER('SPN'[Group Registration ID])),
        'SPN'[SPN CODE],
        "; "
    )
)

Final output

vheqmsft_2-1709705616588.png


EARLIER function (DAX) - DAX | Microsoft Learn

Best regards,

Albert He

 

If this post helps, then please consider Accept it as the solution to help the other members find it more quickly

View solution in original post

4 REPLIES 4
v-heq-msft
Community Support
Community Support

Hi @Moulahoum ,
@JamesFR06 Good solution.
Here's what I need to add
According to mine using your data to test the dax you wrote in power bi, when I put your dax code into measure, he got the same error as you. But when you use the calculated columns, your dax code runs with the results you want. According to the documentation I checked, EARLIER succeeds if there is a row context prior to the beginning of the table scan. otherwise it returns an error.

vheqmsft_0-1709705513727.png

vheqmsft_1-1709705559030.png

Also, you can create a new table

Table = 
ADDCOLUMNS(
    SUMMARIZE('SPN', 'SPN'[Group Registration ID]),
    "Codes", 
    CONCATENATEX(
        FILTER('SPN', 'SPN'[Group Registration ID] = EARLIER('SPN'[Group Registration ID])),
        'SPN'[SPN CODE],
        "; "
    )
)

Final output

vheqmsft_2-1709705616588.png


EARLIER function (DAX) - DAX | Microsoft Learn

Best regards,

Albert He

 

If this post helps, then please consider Accept it as the solution to help the other members find it more quickly

JamesFR06
Resolver IV
Resolver IV

Please find the measure :

Mesure 2 =
var Groupe=SELECTEDVALUE(Concat[Group Registration ID])
var result=CONCATENATEX(filter(Concat,Concat[Group Registration ID]=groupe),Concat[SPN CODE],",")
return
result
JamesFR06_0-1709657556136.png

 

HotChilli
Super User
Super User

If you are writing a measure, it will be a bit simpler than the code shown.

Follow the example here https://learn.microsoft.com/en-us/dax/concatenatex-function-dax?WT.mc_id=DP-MVP-4025372#example 

This is the simplest function that solvedit. Thank you.

Helpful resources

Announcements
RTI Forums Carousel3

New forum boards available in Real-Time Intelligence.

Ask questions in Eventhouse and KQL, Eventstream, and Reflex.

LearnSurvey

Fabric certifications survey

Certification feedback opportunity for the community.

Top Solution Authors