cancel
Showing results for 
Search instead for 
Did you mean: 

Fabric is Generally Available. Browse Fabric Presentations. Work towards your Fabric certification with the Cloud Skills Challenge.

Reply
culytics
New Member

Convertir el valor del año a la fecha a trimestral

Tengo una tabla en este formato. Con los valores en negro dados y la necesidad de calcular los valores en púrpura. ¿Cuál es la mejor manera de hacerlo en PowerBI? La tabla tiene datos de 4 años a partir de 2017.

Año/CuartoNombreValor YTDValor calculado
Q4-2018N134252
Q1-2018N1100100
Q2-2018N1205105
Q3-2018N129085

1 ACCEPTED SOLUTION
v-yiruan-msft
Community Support
Community Support

Hola @culytics ,

Puede seguir los siguientes pasos para obtenerlo:

1. Cree una columna calculada para obtener la base del índice en el campo [Año/Trimestre]

Index = RANKX('Sales',CONCATENATE(RIGHT('Sales'[Year/Quarter],4),LEFT('Sales'[Year/Quarter],2)),,ASC,Dense)​​

2. Crear una medida para obtener la diferencia con el valor actual y el valor del trimestre anterior

Calculated Value = 
var _curindex=MAX('Sales'[Index])
var _preindex=CALCULATE(MAX('Sales'[Index]),FILTER(ALL('Sales'),'Sales'[Index]<_curindex))
var _curvalue=SUM('Sales'[YTD Value])
var _prevalue=CALCULATE(SUM('Sales'[YTD Value]),FILTER(ALL('Sales'),'Sales'[Index]=_preindex))
return _curvalue -_prevalue

Converting Year to Date Value to Quarterly.JPG

Saludos
Rena
Equipo de apoyo comunitario _ Rena Ruan
Si este post ayuda,entonces considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más.

Community Support Team _ Rena
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

5 REPLIES 5
Ashish_Mathur
Super User
Super User

Hola

Escriba estas 2 fórmulas de columna calculadas

Year = =1*(RIGHT(Data[Year/Quarter],4))
=Data[YTD Value]-LOOKUPVALUE(Data[YTD Value],Data[Year/Quarter],CALCULATE(MAX(Data[Year/Quarter]),FILTER(Data,Data[Name]=EARLIER(Data[Name])&&Data[Year]=EARLIER(Data[Year])&&Data[Year/Quarter]<EARLIER(Data[Year/Quarter]))),Data[Name],Data[Name],Data[Year],Data[Year])

Espero que esto ayude.

Untitled.png


Regards,
Ashish Mathur
http://www.ashishmathur.com
https://www.linkedin.com/in/excelenthusiasts/
v-yiruan-msft
Community Support
Community Support

Hola @culytics ,

Puede seguir los siguientes pasos para obtenerlo:

1. Cree una columna calculada para obtener la base del índice en el campo [Año/Trimestre]

Index = RANKX('Sales',CONCATENATE(RIGHT('Sales'[Year/Quarter],4),LEFT('Sales'[Year/Quarter],2)),,ASC,Dense)​​

2. Crear una medida para obtener la diferencia con el valor actual y el valor del trimestre anterior

Calculated Value = 
var _curindex=MAX('Sales'[Index])
var _preindex=CALCULATE(MAX('Sales'[Index]),FILTER(ALL('Sales'),'Sales'[Index]<_curindex))
var _curvalue=SUM('Sales'[YTD Value])
var _prevalue=CALCULATE(SUM('Sales'[YTD Value]),FILTER(ALL('Sales'),'Sales'[Index]=_preindex))
return _curvalue -_prevalue

Converting Year to Date Value to Quarterly.JPG

Saludos
Rena
Equipo de apoyo comunitario _ Rena Ruan
Si este post ayuda,entonces considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más.

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

Hola, podrías ayudarme qué tendría que hacer si tengo nombres múltiples como N1, N2, etc. Creo que estoy cometiendo un error al indexar.

Otra pregunta es qué debo hacer si tengo 0 para Q2 y valores más grandes para Q1 y Q3. En este caso, el código anterior me da un valor negativo.

¡gracias!

amitchandak
Super User
Super User

@culytics , si las columnas nuevas, tienen estas tres


Qtr year á right([Year/Quarter],4) & left([Year/Quarter],2)
Qtr rango de año - rankx(all(Table), [qtr year], , asc, sense)

diff con el último qtr - [Valor] - sumx(filtro(Tabla, [rango del año qtr] -earlier([qtr year rank])-1),[Value])

Si necesita rango, cree una nueva tabla para el año qtr Say Date y tenga esta columna de rango allí y pruebe medir como

Columna

Qtr year á right([Year/Quarter],4) & left([Year/Quarter],2)

Rango de Qtr á RANKX(all('Date'),'Date'[qtr year],,ASC,Dense)

Medida
Este Qtr - CALCULATE(sum('order'[Qty]), FILTER(ALL('Date'),'Date'[Qtr Rank]-max('Date'[Qtr Rank])))
Last Qtr á CALCULATE(sum('order'[Qty]), FILTER(ALL('Date'),'Date'[Qtr Rank]-max('Date'[Qtr Rank])-1))

Para obtener lo mejor de la función de inteligencia del tiempo. Asegúrese de que tiene un calendario de fechas y que se ha marcado como la fecha en la vista de modelo. Además, únete a ella con la columna de fecha de tus hechos. Consulte :radacad sqlbi My Video Series Aprecia tus Felicitaciones.

Proporcione sus comentarios y consejos para nuevos videos
Tutorial Series Dax Vs SQL Direct Query PBI Consejos
Apreciamos tus Felicitaciones.

vanessafvg
Super User
Super User

¿cuál es el valor calculado en púrpura? necesita dar más de una explicación, no tiene sentido actualmente con lo que ha proporcionado.




If I took the time to answer your question and I came up with a solution, please mark my post as a solution and /or give kudos freely for the effort 🙂 Thank you!

Proud to be a Super User!




Helpful resources

Announcements
PBI November 2023 Update Carousel

Power BI Monthly Update - November 2023

Check out the November 2023 Power BI update to learn about new features.

Community News

Fabric Community News unified experience

Read the latest Fabric Community announcements, including updates on Power BI, Synapse, Data Factory and Data Activator.

Power BI Fabric Summit Carousel

The largest Power BI and Fabric virtual conference

130+ sessions, 130+ speakers, Product managers, MVPs, and experts. All about Power BI and Fabric. Attend online or watch the recordings.

Top Solution Authors