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

Earn the coveted Fabric Analytics Engineer certification. 100% off your exam for a limited time only!

Reply
Syndicate_Admin
Administrator
Administrator

Add 12 mobile months repeating empty data

Hello friends, good afternoon.

I have the following problem, I need to generate a staff calculation of 12 mobile months projected until the end of the fiscal year (March 2023) but I have data only until October 2022, at the end of November I will have November 2022 and so on.

I have this table:

MauricioSD_0-1668183269738.png

In blue, it is the measure I need but if you realize from noviebre begins to lower the value because it assumes the culmna "headcount" as "0".

What I need is for the red to repeat the last existing value (in this cas 3,218 of October) and so the column of 12 months mobile considers them.

I attach the PBIX in case you can help me, thank you very much!

PBIX

1 ACCEPTED SOLUTION

Hello @Syndicate_Admin Rico Zhou

I already found the solution:

Headcount SSOMA=
VAR _SUMMAIRZE =
    SUMMARIZE (
        'Calendar';
        Calendar[Date]. [Year];
        Calendar[Date]. [Month];
        "HEADCOUNT"; CALCULATE ( [NominaPropios] ))

VAR _CIA = SELECTEDVALUE('Compañía'[EmpresaPivote])
var FilterCia= IF(COUNTROWS(FILTERS('Compañía'[EmpresaPivote]))=1; FALSE(); TRUE())
VAR VoF=IF(FilterCia=FALSE();_CIA; TRUE())
VAR _ADD =
    ADDCOLUMNS (
        _SUMMAIRZE;
        "NewHeadCount";
            VAR _DATE =
                MAXX ( ALL( NominaCons ); NominaCons[Periodo (fecha)] )
            VAR _LASTVALUE =
                CALCULATE (
                    [NominaPropios];
                    all('NominaCons');
                    'NominaCons'[Periodo (fecha)] = _DATE;
                    'Compañía'[EmpresaPivote] IN VALUES('Compañía'[EmpresaPivote]);
                    TipoMineria[Tipo] IN VALUES(TipoMineria[Tipo]);
                    TipoNomina[TipoNomina] IN VALUES(TipoNomina[TipoNomina]);
                    BU[UNIDAD_DE_NEGOCIO] IN VALUES(BU[UNIDAD_DE_NEGOCIO])
                )
            RETURN
                IF ( ISBLANK ( [HEADCOUNT] ); _LASTVALUE; [HEADCOUNT] )
    )
RETURN
    SUMX ( _ADD; [NewHeadCount] )

View solution in original post

6 REPLIES 6
MauricioSD
Helper I
Helper I

Pleas help me ! , thanks !

v-rzhou-msft
Community Support
Community Support

Hi @Syndicate_Admin ,

 

Here I suggest you to try this measure to create a measure.

HeadCount = 
VAR _SUMMAIRZE =
    SUMMARIZE (
        Calendar2,
        Calendar2[Date].[Year],
        Calendar2[Date].[Month],
        "HEADCOUNT", CALCULATE ( SUM ( NominaSSOMA[Nomina] ) )
    )
VAR _ADD =
    ADDCOLUMNS (
        _SUMMAIRZE,
        "NewHeadCount",
            VAR _DATE =
                MAXX ( ALL ( NominaSSOMA ), NominaSSOMA[Fecha] )
            VAR _LASTVALUE =
                CALCULATE (
                    SUM ( NominaSSOMA[Nomina] ),
                    FILTER ( ALL ( NominaSSOMA ), NominaSSOMA[Fecha] = _DATE )
                )
            RETURN
                IF ( ISBLANK ( [HEADCOUNT] ), _LASTVALUE, [HEADCOUNT] )
    )
RETURN
    SUMX ( _ADD, [NewHeadCount] )

Result is as below.

RicoZhou_0-1668409654935.png

 

Best Regards,
Rico Zhou

 

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

Hello @Syndicate_Admin Rico Zhou

I already found the solution:

Headcount SSOMA=
VAR _SUMMAIRZE =
    SUMMARIZE (
        'Calendar';
        Calendar[Date]. [Year];
        Calendar[Date]. [Month];
        "HEADCOUNT"; CALCULATE ( [NominaPropios] ))

VAR _CIA = SELECTEDVALUE('Compañía'[EmpresaPivote])
var FilterCia= IF(COUNTROWS(FILTERS('Compañía'[EmpresaPivote]))=1; FALSE(); TRUE())
VAR VoF=IF(FilterCia=FALSE();_CIA; TRUE())
VAR _ADD =
    ADDCOLUMNS (
        _SUMMAIRZE;
        "NewHeadCount";
            VAR _DATE =
                MAXX ( ALL( NominaCons ); NominaCons[Periodo (fecha)] )
            VAR _LASTVALUE =
                CALCULATE (
                    [NominaPropios];
                    all('NominaCons');
                    'NominaCons'[Periodo (fecha)] = _DATE;
                    'Compañía'[EmpresaPivote] IN VALUES('Compañía'[EmpresaPivote]);
                    TipoMineria[Tipo] IN VALUES(TipoMineria[Tipo]);
                    TipoNomina[TipoNomina] IN VALUES(TipoNomina[TipoNomina]);
                    BU[UNIDAD_DE_NEGOCIO] IN VALUES(BU[UNIDAD_DE_NEGOCIO])
                )
            RETURN
                IF ( ISBLANK ( [HEADCOUNT] ); _LASTVALUE; [HEADCOUNT] )
    )
RETURN
    SUMX ( _ADD; [NewHeadCount] )

Hello @Syndicate_Admin

The solution serves me for the total, but I have a problem when I make a separation by Business Unit


I'll give you the example:

MauricioSD_0-1668439559621.png

If you notice, in the 2nd column the last real value is 479 and that 479 should be repeated, but the total (2629) is repeated and not that of just that business unit

The same in the column of own, should be repeated 750 and repeat 7245. For the total (the sum of both) 1229 should be repeated but 9874 is repeated.

Please your help, thank you very much.

@Syndicate_Admin

I attach the PBIX file to see if you can help me, thank you very much.

PBI

lbendlin
Super User
Super User

Read about LASTNONBLANK and LASTNONBLANKVALUE - they can help you fil these gaps.  NOTE:  they can only do so for measures. You cannot modify column data in DAX.

Helpful resources

Announcements
April AMA free

Microsoft Fabric AMA Livestream

Join us Tuesday, April 09, 9:00 – 10:00 AM PST for a live, expert-led Q&A session on all things Microsoft Fabric!

March Fabric Community Update

Fabric Community Update - March 2024

Find out what's new and trending in the Fabric Community.