cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
rampapbi
New Member

Same period of the last month from a filtered measure

Hello!

 

I created a measure that returns sales per day for certain products, for a certain period of time:

Sales-Campaign = 
CALCULATE(
[Sales],
FILTER( AD_RMPITENSPEDIDOS, AD_RMPITENSPEDIDOS[CODPROD] in VALUES( campaign_itens[Cod Rampap] ) ),
DATESBETWEEN( _Calendario[Data], SELECTEDVALUE( campaigns[camp_start]) , SELECTEDVALUE( campanhas[camp_end] ) )
)

 Is it possible to calculate sales for the same period of days and same products in the previous month?

 

Desired result:

 

DateSales-CampaignSales-Campaign-LM
02/01/202330004500
02/02/202357002000
2 REPLIES 2
Ashish_Mathur
Super User
Super User

Hi,

It will depend upon the structure of underlying data source.  Share data in a format that can be pasted in an MS Excel file.


Regards,
Ashish Mathur
http://www.ashishmathur.com
https://www.linkedin.com/in/excelenthusiasts/
halfglassdarkly
Resolver IV
Resolver IV

You could use: 

 

 

Sales-Campaign-Offset = 
    CALCULATE(
      [Sales], 
      FILTER( AD_RMPITENSPEDIDOS, AD_RMPITENSPEDIDOS[CODPROD] in VALUES( campaign_itens[Cod Rampap] ) ),
      DATESBETWEEN( _Calendario[Data], EDATE(SELECTEDVALUE( campaigns[camp_start])-1) , EDATE(SELECTEDVALUE( campanhas[camp_end] )-1) )
    )

 

 

 But that would still throw an error if your campaign start or end date doesn't exist in the previous month (e.g. if your campaign end date is 31 March EDATE(SELECTEDVALUE( campanhas[camp_end] )-1) is going to throw an error. You could try dealing with that like this, which will sub your selected start and end date for the last day of the previous month if an error is encountered:

 

 

Sales-Campaign-Offset = 
CALCULATE([Sales], 
      FILTER( AD_RMPITENSPEDIDOS, AD_RMPITENSPEDIDOS[CODPROD] in VALUES( campaign_itens[Cod Rampap] ) ),
      DATESBETWEEN( _Calendario[Data], 

      IFERROR(EDATE(SELECTEDVALUE(campaigns[camp_start])-1),EODATE(SELECTEDVALUE( 
      campaigns[camp_start])-1)) , 

      IFERROR(EDATE(SELECTEDVALUE(campanhas[camp_end])-1),EODATE(SELECTEDVALUE( 
      campanhas[camp_end])-1)))
)

 

 

 

Helpful resources

Announcements
May 2023 update

Power BI May 2023 Update

Find out more about the May 2023 update.

Submit your Data Story

Data Stories Gallery

Share your Data Story with the Community in the Data Stories Gallery.

Top Solution Authors