Hola muy bueno el video y tu explicacion, como debería hacer si necesito por saber las ganancias de enero 2018 con enero 2020 y por determinadas compañias. gracias
Buena pregunta, LatinosUnidoS. Según mi entendimiento, se desea comparar el monto acumulado del mes actual (hasta hoy) con el monto total al cierre del mes pasado. Si es el caso, se puede crear otra medida y usar la función TOTALMTD. ------------------ Ejemplo: TotalMTD = TOTALMTD ( SUM(Reclamos[Ganancias], Calendario[Date]) ) -------------------- Saludos.
Nestor gracias, tengo un caso en mi oficina donde no tengo fechas calendario, sino periodos por ejemplo, Periodos 2017-1S, 2017-2S, 2018-1S, 2018-2S y asi sucesivamente hasta 2023-1S y necesito calcular la diferencia de un periodo a otro, me podrias ayudar para saber como se podria hacer
Carlos, Gracias por revisar el contenido. Antes de crear la tabla calendario, debes crear otra columna de fechas con el formato correcto y eliminando la letra "S"(usa Column from examples). El formato de la fecha debe quedar como sigue: 2017/01/01, 2017/02/01. Una vez tengas la columna nueva de fechas, ya puedes crear la tabla calendario para finalmente aplicar la función DATEADD. Espero eso ayude. Saludos
Excelente implementación. Tengo una consulta, en caso de que no necesite traer la información del mes pasado si no de todos los meses anteriores a ese y obviamente respetando el año que se seleccione, cómo podría representarlo?
Harol, Gracias por tu pregunta. Deseas traer la información no solo del mes anterior sino de los otros meses entoriores también? Si es así, aquí te presento una posible solución. Puedes crear 10 medidas adicionales con el siguiente formato: ------------------------------------------------------------------------------------------------------------ Medida = CALCULATE( SUM(Reclamos[Ganancias]); DATEADD(Calendario[Date];-2;MONTH) ) ------------------------------------------------------------------------------------------------------------ Básicamente, vas combiando el NumberOfInterval desde -2 hasta -12 para cada medida (Porque solamente hay 12 meses en el año). Finalmente lo que tienes que hacer es solamente arrastrar todas las medidas a la tabla en el área de informes. Espero eso ayude a responder tu pregunta. ¡Saludos!
Sugerencia, hubiera sido mejor si se hubieran puesto varios slicers de Año, Quarter, Mes.... la experiencia para el usurario es mas intuitiva..... Saludos desde mexico.
Hola, una pregunta como podría hacer la comparación pero en meses no consecutivos, es decir quiero comparar ejemplo enero sobre marzo, u octubre contra noviembre
Para ello puedes jugar con los intervalos. Si deseas comparar 2 meses hacia atrás, debes usar -2 en el intervalo. Por el otro lado, si deseas comparar con el siguiente mes, debes usar + 1 como intervalo. Revisa un ejemplo aquí abajo: Medida := CALCULATE( [Profits], DATEADD( Dates[Date], -2, MONTH) )
Buenas, Si deseo comparar con meses anteriores no consecutivos como se haria, por ejemplo: compré un producto en febrero pero despues lo volví a comprar en junio, es decir que no se realizaron compras en marzo,abril mayo. para que me traiga el ultimo valor de compra como seria?
Buena pregunta, Rafael. Una de las soluciones que podemos adoptar es colocar como intervalo -4 para que nos compare con el año anterior (Recuerda que cada año tiene 4 cuartos/trimestres). Revisa el ejemplo aquí abajo para más detalles: Ganancias CP = CALCULATE( SUM(Reclamos[Ganancias], DATEADD (Calendario[Date], -4 , QUARTER) )
Gracias por el video, tengo una consulta, en mi caso las ventas de todos los periódos los tengo en un solo campo, ventas netas, veo en el ejemplo que están separadas las ventas del periódico a comparar, la fórmula debería de funcionar?
@fjrh2001 Gracias por revisar el contenido. Si deseas comparar periodos distintos, los puedes hacer creando medidas diferentes y usando la funcion DATEADD. El campo numérico a evaluar tiene que estar en una sola columna. En el tutorial se ve en dos columnas diferentes porque solo es una representación visual del resultado en una tabla, pero la data inicial está en una sola columna. Espero eso ayude. Saludos👍
Si estás tratando de comparar semanas, el intervalo a seleccionar dentro de la función DATEADD debe ser DAY y el número de intervalos puede ser en rangos de -7. Por ejemplo, para la semana anterior debe ser -7. Espero eso ayude. Saludos!
Hola Maritza, Gracias por revisar el contenido. Has intentado usar la sgte. expresión? Espero eso ayude. Saludos Medida := CALCULATE( [Expresión], DATEADD(Calendario[Date], -30, DAY) )
Cristian, Es una buena pregunta. Las fórmulas de Inteligencia de Negocios aún no están diseñadas para comparar con un mes fijo. Sin embargo lo que se puede hacer es crear una medida con un par de filtros que fijen la fecha de diciembre del año que deseas comparar. Luego sigues los mismos pasos que aparecen en el tutorial para encontrar los porcentajes. Por ejemplo: Diciembre := CALCULATE( SUM(Reclamos[Costo de Delivery]), Fechas[Date]>=DATE(2012,12,01), Fechas[Date]
Nestor, waoo, excelente, me gustaria realizar esa misma comparacion de meses actual con mes anterior del año actual vs el mismo mes actual y mes anterior del año anterior. Es posible hacerlo. Saludos
Juan, Gracias por revisar el contenido. Solo tendrías que jugar con el número de intervalos dentro de la función DATEADD. Por ejemplo, para el mes anterior seria -1 y para el año anterior sería -12. Revisa un ejemplo aquí abajo. Espero eso ayude. Saludos. Medida:= CALCULATE( [Expression], DATEADD(Dates[Date], -1, MONTH) )
Hola, gracias por el video muy interesante, quisiera consultar necesito comparar el registro de ventas el ultimo ingresado ya lo obtuve con la funcion LastDate, pero debo compararla con la anterior ingresada pero es variable no es por mes sino puede ocurrir en cualquier periodo de tiempo.
Edward, Gracias por revisar el contenido. No conozco los detalles de la data, pero lo que se puede hacer es crear un medida para obtener los datos del registro anterior. Para poder crear esta medida debe existir una forma de identificar ese registro. Revisa un ejemplo: Medida registro anterior:= CALCULATE ( [Ventas], Identificador del registro anterior= 1 )
Muchas gracias Nestor excelente video, tengo una consulta, si quisiera comparar las ventas de, por ejemplo, enero del 2020 contra diciembre del 2019 como lo podría hacer?
Gracias Jaime por revisar el contenido. Como solo hay un mes de diferencia, aún puedes usar la función DATEADD con un intervalo de mes (MONTH). DATEADD (Calendario[Date], -1, MONTH)
Carlos, gracias por tu pregunta. ¿Puedes por favor compartir más detalles de tu pregunta para poder revisarla mejor? Como he trabajado varios tutoriales, no recuerdo exactamente el punto que mencionas. Saludos.
Nelson, Buena pregunta. Lo recomendable es siempre crear una tabla calendario para realizar cualquier cálculo con las funciones de "Time intelligence" Saludos!
Néstor buenas tardes, muchísimas gracias por la explicación! Te hago una consulta disculpa la molestia, que pasaría si lo que necesito es el valor máximo de un registro pero para una hora determinada del día de ayer. En mi caso, necesito calcular el valor máximo hasta ayer a las 18hs (que es el cierre del dólar). Si me podes asistir te agradezco mucho!
Nestor buenas noches, excelente video, pero tengo una duda, las comparaciones que quiero hacer no necesariamente es por fechas calendario, si no por campañas, por ejemplo tengo 2 campañas la campaña 2021 y 2022, la campaña 2021 inició en Agosto del 2020 y terminó el 15 de diciembre del 2021 y la campaña 2022 inició el 16 de Diciembre del 2021 y se tiene previsto que va a culminar el 15 de diciembre del 2022, como podría comparar esas 2 campañas? ya que no dependen necesariamente de fechas calendario
Juan, Gracias por revisar el contenido. Lo que podrías hacer es crear dos medidas usando la función CALCULATE: Una medida para la campaña 1 y otra para la campana 2. Luego sacas el porcentaje de variación entre dichas medidas/campañas utilizando la función DIVIDE. Revisa abajo los ejemplos de las medidas. Espero eso ayude. Saludos Medida 1 = CALCULATE( SUM(financials[Profit]), Dates[Date] >=DATE(2020,08,01) && Dates[Date] =DATE(2021,12,16) && Dates[Date]
muy buen video , una consulta si quisiera comparar con la fecha proxima(o anterior ) en le cual tenga operación . ya que si no tengo operaciones todos los dias van a haber comparativas muy dispares
Una de las soluciones es cambiar los intervalos. Por ejemplo para comparar con el año anterior, se tendría que usar -4. Ver el ejemplo aquí abajo. Ganancias CP = CALCULATE( SUM(Reclamos[Ganancias], DATEADD (Calendario[Date], -4 , QUARTER) )
Muy bueno el video... Una pregunta. Tengo una tabla de precios diarios de determinados productos, y lo que quiero hacer es que aparezca solo una etiqueta de la variacion porcentual entre dos fechas que ingrese un usuario (no dos periodos)... podras pasarme un adelanto de como hacerlo? GRACIAS!
Rodrigo, Buena pregunta. Lo que se me ocurre es crear tres medidas. Para las dos primeras medidas se puede usar la función CALCULATE con un filtro para la fecha que desees evaluar. Finalmente, la tercera medida debe ser la variación porcentual de las dos primeras medidas y para ello se puede usar la función DIVIDE . Luego insertas una tarjeta para la tercera medida. Aquí te dejo un ejemplo. Espero sea de ayuda. Saludos. ------------------------------------------------------------------------------------ Fecha 1 = CALCULATE( SUM(Reclamos[Costo de Reclamo]), Reclamos[Fecha de Reclamo]=DATE(2016,01,29) ) ------------------------------------------------------------------------------------ Fecha 2 = CALCULATE( SUM(Reclamos[Costo de Reclamo]), Reclamos[Fecha de Reclamo]=DATE(2018,02,10) ) ------------------------------------------------------------------------------------ Variac % = DIVIDE(([Fecha 2]-[Fecha 1]),[Fecha 1]) ------------------------------------------------------------------------------------
Hola Nestor muchas gracias por el vídeo excelente explicación, tengo una duda si quiero comparar el mes corriente con el promedio de últimos 3 meses. Ejemplo quiero evaluar noviembre vs promedio de agosto, septiembre y octubre?
Allis, Gracias por revisar el contenido. Esta es una buena pregunta. Lo que he podido resolver es comparar el mes actual con el promedio de los tres últimos meses incluyendo el mes actual (Por ejemplo, noviembre vs el promedio de nov, oct y set). Aquí te comparto el código del promedio para una medida: Promedio 3 meses := CALCULATE( SUM(Reclamos[Costo de Delivery]), DATESINPERIOD(Fechas[Date],MAX(Fechas[Date]),-3,MONTH) )/3 Sin embargo, si es que deseas compar el monto actual con el promedio de tres meses anteriores (fijos), prodrías usar el siguente código: Promedio 3 mese fijo := CALCULATE( SUM(Reclamos[Costo de Delivery]), Fechas[Date]>=DATE(2010,01,01)&&Fechas[Date]
@@NestorAdrianzen me das una mano, yo quiero hacer una comparacion por campañas, mi año comercial comienza en septiembre y termina en agosto. como puedo hacer?.... es decir campaña 20-21 (Septiembre 20 - Agosto 21) y Campaña 21-22 (Septiembre del 2021 a Agosto del 2022)
Julyeth, Buena pregunta. El mecanismo es muy similar al ejemplo. Aquí comparto un código que lo puedes adaptar: Pct = VAR CostoYTD = CALCULATE( SUM(Reclamos[Costo de Reclamo]), DATESYTD(Fechas[Date]) ) VAR Costo = SUM(Reclamos[Costo de Reclamo]) RETURN DIVIDE((costo-CostoYTD),CostoYTD)
Hola, Muy buen video me ha gustado mucho, me podrias ayudar si quiero compar los mismo dias de la semana del año pasado es decir los lunes de enero del 20 respecto a los lunes de enero del año 21 , aplico las formulas que has enseñado y me da error, porque estan pensadas para meses pero no para dias de la semana Muchas gracias
George, Gracias por revisar el contenido. Has intentado el siguiente código: Profit 265 := CALCULATE ( SUM (Claims [Profit]), DATEADD (Dates[Date], -365, DAY )
@@NestorAdrianzen hola muchas gracias por tu repuesta pero deduzco que me trae el día del año pasado en fecha es decir el 01 -01-20 (considerando que ahora es 01-01-21) y lo que quería ver es si se podía tener no la fecha si no el día de la semana es decir el lunes con el lunes y el. Primer lunes del año me lo compara con el siguiente año y así sucesivamente.... Muchas gracias por tus videos la verdad esque están bien grabado y vas a lo importante
excelentes videos te felicito por los videos . Por fa una consulta Tengo dos tablas Personas => Nombre, Pais Paises=>NombrePais Asignaciones =>NombrePersona, Pais Quiero crear una tabla con todas las personas del filtro seleccionado TablaPersonasDelPaisSeleccionado = CALCULATETABLE(Personas ,FILTER(Personas ,Personas [Pais] in ALLSELECTED(Paises[NombrePais]))) Esto me arroja todos las las personas no respeta el filtro pero si hago esto TablaPersonasDelPaisSeleccionado = CALCULATETABLE(Personas ,FILTER(ALL(Personas ),Personas [Pais] ="Ecuador")) Si funciona , el filtro ALLSELECTED(Paises[NombrePais]) si me arroja datos siempre lo utilizo en los calculates pero nunca en calculatetable no se si exista una restriccion de no poderlo utilizar aqui . Muchas gracias de antemano
Daniel, Usualmente ALLSELECTED es una función compleja y usualmente se usa como un modificador de filtro (tal como se usa la función ALL). Si los países son pocos en el filtro puedes usar un operador lógico. Ejemplo: personas[pais] IN {"Ecuador", "Peru", "Brasil"}. Adicionalmente, quizás no sea necesario utilizar la función FILTER en la fórmula y se pueda escribir como sigue: CALCULATETABLE( Personas , Personas [Pais] IN {"Ecuador", "Peru", "Brasil"} )
@@NestorAdrianzen muchas gracias por la respuesta. Pero es q utilizo allselected ya q no quiero aplicar el filtro manual sino de forma dinámica tengo un slicer donde el usuario selecciona el país y con el allselected obtengo los valores q selecciono. Si fuera un filtro o varios filtros fijos utilizaría el {.. } pero en este caso el filtro viene de otro control o tabla. :s en calculate si me sirve el allselected pero en el calculatetable no :s quería saber si entonces hay alguna otra forma de obtener estos valores elegidos de forma dinámica VAR valoresElegkdos =, y luego usar esto en el filter de calculatetable Plis
Oviedo, Gracias por revisar el contenido. Puede haber varias razones para que no esté funcionando correctamente. Por ejemplo, asegúrate que la tabla calendario está incluyendo todas las fechas del modelo y existe una correcta relación entre la tabla calendario y la otra tabla de datos. Otra opción puede ser empezar el ejercicio desde cero. Espero eso ayude. Saludos.
@@NestorAdrianzen Pero eso no me daría el total de un solo mes y no el total de primer semestre por ejemplo. Lo que yo quiero es comprar primer semestre 2023 vs primer semestre 2022
Hola. Trate de hacer esta medida, y al momento de agregar la medida al gráfico, me arroja el siguiente error: Error Message: MdxScript(Model) (18, 80) Calculation error in measure 'Medidas Asignado'[UF año anterior]: A column specified in the call to function 'DATEADD' is not of type DATE. This is not supported. Revise el campo del año en la tabla calendario, y el formato es número entero. Si me pudieras ayudar, te lo agradecería mucho.
Interesante. Asegúrate que el formato de la primera columna de la tabla calendario esté en el formato "fecha y hora". También en la función DATEADD se tiene que elegir las fechas de la tabla calendario. Espero eso ayude a resolver tu pregunta. Saludos.
@@manuelmunoz6256 Quizás tenga que ver con la actualización de Power BI. Tienes la versión actualizada de Power BI Desktop (Julio)? Si aún no, te recomiendo que la actualices y empieces el ejercicio desde cero. Ojalá eso ayude. Saludos.
@@NestorAdrianzen ok, lo haré. como estoy recién empezando en esto, me parece que el problema es de relaciones de las tablas. Tengo una tabla de calendario, y necesito vincular el año de asignación de un subsidio, con el año calendario, y ahí me aparece el error. No sé si me explico
Manuel, quizás haya algún inconveniente con las relaciones entre las tablas. Aquí te comparto un tutorial de relaciones entre tablas que puede ayudar. Saludos. ua-cam.com/video/yibD3DM93Is/v-deo.html
Juan, Muchas gracias por revisar el contenido. Acá te comparto el link a los archivos que incluyen la data en formato de Excel. Para vincular la tabla solo es cuestión de usar el conector de Excel en Power BI Dekstop. Espero eso ayude. Saludos. drive.google.com/file/d/1VZ1GeX9g_kRI8Lf8dd2ZxxU210BupRfu/view?usp=sharing
Me encantó mucho 🏄
Excelente, Samuel! Gracias por el feedback!
@@NestorAdrianzen y como comparo la semana pasada?
No te amo, te re amo. Mil gracias, de verdad estuve varios dias sin poder avanzar en mi proyecto hasta que vi tu video, estoy super agradecida.
Gracias por revisar el contenido, Linda. Mensajes como el tuyo me animan a seguir creando contenido. Muchos saludos 😀
Hola muy bueno el video y tu explicacion, como debería hacer si necesito por saber las ganancias de enero 2018 con enero 2020 y por determinadas compañias. gracias
Excelente vídeo, solucionó mis dudas, gracias
Excelente, Ernesto. Sigue adelante en tu preparación!
Muchas gracias, sigue así!!
Excelente, Daryl! Saludos.
Muchas gracias, me han salvado excelente video :)
Excelente! Saludos 👍
Hola una consulta si quisiera saber las ventas agrupando por mes o por cada quincena de varios años como los podria hacer
Muchas gracias! Un consulta, si quiero comparar por semanas, como hago?
Puedes usar DAY como el intervalo y -7 como el número de intervalos.
Excelente!!
Gracias por revisar el contenido. Saludos
Mil gracias esta excelente!
Excelente, Alejandra. Gracias por revisar el contenido.
Y si quiero comparar datos del dia de hoy con datos del cierre del mes anterior?
Buena pregunta, LatinosUnidoS. Según mi entendimiento, se desea comparar el monto acumulado del mes actual (hasta hoy) con el monto total al cierre del mes pasado. Si es el caso, se puede crear otra medida y usar la función TOTALMTD.
------------------
Ejemplo:
TotalMTD =
TOTALMTD (
SUM(Reclamos[Ganancias], Calendario[Date])
)
--------------------
Saludos.
Nestor gracias, tengo un caso en mi oficina donde no tengo fechas calendario, sino periodos por ejemplo, Periodos 2017-1S, 2017-2S, 2018-1S, 2018-2S y asi sucesivamente hasta 2023-1S y necesito calcular la diferencia de un periodo a otro, me podrias ayudar para saber como se podria hacer
Carlos, Gracias por revisar el contenido. Antes de crear la tabla calendario, debes crear otra columna de fechas con el formato correcto y eliminando la letra "S"(usa Column from examples). El formato de la fecha debe quedar como sigue: 2017/01/01, 2017/02/01. Una vez tengas la columna nueva de fechas, ya puedes crear la tabla calendario para finalmente aplicar la función DATEADD. Espero eso ayude. Saludos
Excelente implementación. Tengo una consulta, en caso de que no necesite traer la información del mes pasado si no de todos los meses anteriores a ese y obviamente respetando el año que se seleccione, cómo podría representarlo?
Harol, Gracias por tu pregunta. Deseas traer la información no solo del mes anterior sino de los otros meses entoriores también? Si es así, aquí te presento una posible solución. Puedes crear 10 medidas adicionales con el siguiente formato:
------------------------------------------------------------------------------------------------------------
Medida = CALCULATE(
SUM(Reclamos[Ganancias]);
DATEADD(Calendario[Date];-2;MONTH)
)
------------------------------------------------------------------------------------------------------------
Básicamente, vas combiando el NumberOfInterval desde -2 hasta -12 para cada medida (Porque solamente hay 12 meses en el año). Finalmente lo que tienes que hacer es solamente arrastrar todas las medidas a la tabla en el área de informes. Espero eso ayude a responder tu pregunta. ¡Saludos!
Sugerencia, hubiera sido mejor si se hubieran puesto varios slicers de Año, Quarter, Mes.... la experiencia para el usurario es mas intuitiva..... Saludos desde mexico.
Gracias por la retroalimentación, Cesar. Saludos!
Hola, una pregunta como podría hacer la comparación pero en meses no consecutivos, es decir quiero comparar ejemplo enero sobre marzo, u octubre contra noviembre
Para ello puedes jugar con los intervalos. Si deseas comparar 2 meses hacia atrás, debes usar -2 en el intervalo. Por el otro lado, si deseas comparar con el siguiente mes, debes usar + 1 como intervalo. Revisa un ejemplo aquí abajo:
Medida :=
CALCULATE(
[Profits],
DATEADD( Dates[Date], -2, MONTH)
)
Buenas, Si deseo comparar con meses anteriores no consecutivos como se haria, por ejemplo: compré un producto en febrero pero despues lo volví a comprar en junio, es decir que no se realizaron compras en marzo,abril mayo.
para que me traiga el ultimo valor de compra como seria?
muy buena explicacion nestor solo una pregunta si quisieras comparar el quarter de un año con el anterior es con los filtros?
Buena pregunta, Rafael. Una de las soluciones que podemos adoptar es colocar como intervalo -4 para que nos compare con el año anterior (Recuerda que cada año tiene 4 cuartos/trimestres). Revisa el ejemplo aquí abajo para más detalles:
Ganancias CP =
CALCULATE(
SUM(Reclamos[Ganancias],
DATEADD (Calendario[Date], -4 , QUARTER)
)
Gracias por el video, tengo una consulta, en mi caso las ventas de todos los periódos los tengo en un solo campo, ventas netas, veo en el ejemplo que están separadas las ventas del periódico a comparar, la fórmula debería de funcionar?
@fjrh2001 Gracias por revisar el contenido. Si deseas comparar periodos distintos, los puedes hacer creando medidas diferentes y usando la funcion DATEADD. El campo numérico a evaluar tiene que estar en una sola columna. En el tutorial se ve en dos columnas diferentes porque solo es una representación visual del resultado en una tabla, pero la data inicial está en una sola columna. Espero eso ayude. Saludos👍
buen dia, como pudiera ser semana anterior aun y cuando estes en la semana 1 del año ? .... gracias de antemano
Si estás tratando de comparar semanas, el intervalo a seleccionar dentro de la función DATEADD debe ser DAY y el número de intervalos puede ser en rangos de -7. Por ejemplo, para la semana anterior debe ser -7. Espero eso ayude. Saludos!
Muy bueno gracias...tengo una consulta si deseo comparar mis ventas de hoy vs el mismo dia del mes anterior?
Hola Maritza, Gracias por revisar el contenido. Has intentado usar la sgte. expresión? Espero eso ayude. Saludos
Medida :=
CALCULATE(
[Expresión],
DATEADD(Calendario[Date], -30, DAY)
)
Gracias Nestor! Una pregunta, si quiero comparar contra diciembre del año anterior siempre como lo puedo hacer?
Cristian, Es una buena pregunta. Las fórmulas de Inteligencia de Negocios aún no están diseñadas para comparar con un mes fijo. Sin embargo lo que se puede hacer es crear una medida con un par de filtros que fijen la fecha de diciembre del año que deseas comparar. Luego sigues los mismos pasos que aparecen en el tutorial para encontrar los porcentajes. Por ejemplo:
Diciembre :=
CALCULATE(
SUM(Reclamos[Costo de Delivery]),
Fechas[Date]>=DATE(2012,12,01),
Fechas[Date]
@@NestorAdrianzen seria comparando por mes con unidades de 12
Nestor, waoo, excelente, me gustaria realizar esa misma comparacion de meses actual con mes anterior del año actual vs el mismo mes actual y mes anterior del año anterior. Es posible hacerlo. Saludos
Juan, Gracias por revisar el contenido. Solo tendrías que jugar con el número de intervalos dentro de la función DATEADD. Por ejemplo, para el mes anterior seria -1 y para el año anterior sería -12. Revisa un ejemplo aquí abajo. Espero eso ayude. Saludos.
Medida:=
CALCULATE(
[Expression],
DATEADD(Dates[Date], -1, MONTH)
)
Hola, gracias por el video muy interesante, quisiera consultar necesito comparar el registro de ventas el ultimo ingresado ya lo obtuve con la funcion LastDate, pero debo compararla con la anterior ingresada pero es variable no es por mes sino puede ocurrir en cualquier periodo de tiempo.
Edward,
Gracias por revisar el contenido.
No conozco los detalles de la data, pero lo que se puede hacer es crear un medida para obtener los datos del registro anterior. Para poder crear esta medida debe existir una forma de identificar ese registro. Revisa un ejemplo:
Medida registro anterior:=
CALCULATE (
[Ventas],
Identificador del registro anterior= 1
)
Muchas gracias Nestor excelente video, tengo una consulta, si quisiera comparar las ventas de, por ejemplo, enero del 2020 contra diciembre del 2019 como lo podría hacer?
Gracias Jaime por revisar el contenido. Como solo hay un mes de diferencia, aún puedes usar la función DATEADD con un intervalo de mes (MONTH).
DATEADD (Calendario[Date], -1, MONTH)
En ganancias año son exactamente iguales ¿casualidad?
Carlos, gracias por tu pregunta. ¿Puedes por favor compartir más detalles de tu pregunta para poder revisarla mejor? Como he trabajado varios tutoriales, no recuerdo exactamente el punto que mencionas. Saludos.
Una consulta... si trabajo con una sola tabla con muchos datos y en ella ya tengo en una columna la fecha, debo crear los mismo la medida calendario?
Nelson, Buena pregunta. Lo recomendable es siempre crear una tabla calendario para realizar cualquier cálculo con las funciones de "Time intelligence" Saludos!
Néstor buenas tardes, muchísimas gracias por la explicación! Te hago una consulta disculpa la molestia, que pasaría si lo que necesito es el valor máximo de un registro pero para una hora determinada del día de ayer. En mi caso, necesito calcular el valor máximo hasta ayer a las 18hs (que es el cierre del dólar). Si me podes asistir te agradezco mucho!
Nestor buenas noches, excelente video, pero tengo una duda, las comparaciones que quiero hacer no necesariamente es por fechas calendario, si no por campañas, por ejemplo tengo 2 campañas la campaña 2021 y 2022, la campaña 2021 inició en Agosto del 2020 y terminó el 15 de diciembre del 2021 y la campaña 2022 inició el 16 de Diciembre del 2021 y se tiene previsto que va a culminar el 15 de diciembre del 2022, como podría comparar esas 2 campañas? ya que no dependen necesariamente de fechas calendario
Juan, Gracias por revisar el contenido.
Lo que podrías hacer es crear dos medidas usando la función CALCULATE: Una medida para la campaña 1 y otra para la campana 2. Luego sacas el porcentaje de variación entre dichas medidas/campañas utilizando la función DIVIDE. Revisa abajo los ejemplos de las medidas. Espero eso ayude. Saludos
Medida 1 =
CALCULATE(
SUM(financials[Profit]),
Dates[Date] >=DATE(2020,08,01) && Dates[Date] =DATE(2021,12,16) && Dates[Date]
muy buen video , una consulta si quisiera comparar con la fecha proxima(o anterior ) en le cual tenga operación . ya que si no tengo operaciones todos los dias van a haber comparativas muy dispares
Jose, Gracias por revisar el contenido. Quizás puedas adaptar la función COALESCE para seleccionar fechas con operaciones solamente. Saludos.
Muy bueno mi estimado, el tema es interesante,una pregunta, Si se desea comparar el mismo Qs de años anteriores???
Una de las soluciones es cambiar los intervalos. Por ejemplo para comparar con el año anterior, se tendría que usar -4. Ver el ejemplo aquí abajo.
Ganancias CP =
CALCULATE(
SUM(Reclamos[Ganancias],
DATEADD (Calendario[Date], -4 , QUARTER)
)
Muy bueno el video... Una pregunta. Tengo una tabla de precios diarios de determinados productos, y lo que quiero hacer es que aparezca solo una etiqueta de la variacion porcentual entre dos fechas que ingrese un usuario (no dos periodos)... podras pasarme un adelanto de como hacerlo? GRACIAS!
Rodrigo, Buena pregunta. Lo que se me ocurre es crear tres medidas. Para las dos primeras medidas se puede usar la función CALCULATE con un filtro para la fecha que desees evaluar. Finalmente, la tercera medida debe ser la variación porcentual de las dos primeras medidas y para ello se puede usar la función DIVIDE . Luego insertas una tarjeta para la tercera medida. Aquí te dejo un ejemplo. Espero sea de ayuda. Saludos.
------------------------------------------------------------------------------------
Fecha 1 =
CALCULATE(
SUM(Reclamos[Costo de Reclamo]),
Reclamos[Fecha de Reclamo]=DATE(2016,01,29)
)
------------------------------------------------------------------------------------
Fecha 2 =
CALCULATE(
SUM(Reclamos[Costo de Reclamo]),
Reclamos[Fecha de Reclamo]=DATE(2018,02,10)
)
------------------------------------------------------------------------------------
Variac % =
DIVIDE(([Fecha 2]-[Fecha 1]),[Fecha 1])
------------------------------------------------------------------------------------
Hola Nestor gracias por el video ¿y en términos porcentuales como seria?
Hugo, Para variación porcentual, puedes revisar este tutorial. Espero sea de gran ayuda. Saludos.ua-cam.com/video/CJKJCM8DSLU/v-deo.html
Hola Nestor muchas gracias por el vídeo excelente explicación, tengo una duda si quiero comparar el mes corriente con el promedio de últimos 3 meses. Ejemplo quiero evaluar noviembre vs promedio de agosto, septiembre y octubre?
Allis, Gracias por revisar el contenido. Esta es una buena pregunta. Lo que he podido resolver es comparar el mes actual con el promedio de los tres últimos meses incluyendo el mes actual (Por ejemplo, noviembre vs el promedio de nov, oct y set). Aquí te comparto el código del promedio para una medida:
Promedio 3 meses :=
CALCULATE(
SUM(Reclamos[Costo de Delivery]),
DATESINPERIOD(Fechas[Date],MAX(Fechas[Date]),-3,MONTH)
)/3
Sin embargo, si es que deseas compar el monto actual con el promedio de tres meses anteriores (fijos), prodrías usar el siguente código:
Promedio 3 mese fijo :=
CALCULATE(
SUM(Reclamos[Costo de Delivery]),
Fechas[Date]>=DATE(2010,01,01)&&Fechas[Date]
@@NestorAdrianzen muchas muchas gracias y en verdad felicidades por tus aportaciones y videos
@@allisvargas8326 Gracias a ti por la confianza. Saludos.
Yo tengo años, sin formato fechas como hago eso
Hola nestor consulta, como creo esa tabla calendario?
Daniel,
Gracias por revisar el contenido. Este tutorial puede ayudarte. Saludos.👍
ua-cam.com/video/qRfNTSesg0Y/v-deo.html
@@NestorAdrianzen me das una mano, yo quiero hacer una comparacion por campañas, mi año comercial comienza en septiembre y termina en agosto. como puedo hacer?.... es decir campaña 20-21 (Septiembre 20 - Agosto 21) y Campaña 21-22 (Septiembre del 2021 a Agosto del 2022)
Hola me ayudas, como hago para comparar ventas mes actual vs ventas lo que va del año YTD
Julyeth, Buena pregunta. El mecanismo es muy similar al ejemplo. Aquí comparto un código que lo puedes adaptar:
Pct =
VAR CostoYTD =
CALCULATE(
SUM(Reclamos[Costo de Reclamo]),
DATESYTD(Fechas[Date])
)
VAR Costo =
SUM(Reclamos[Costo de Reclamo])
RETURN
DIVIDE((costo-CostoYTD),CostoYTD)
Hola,
Muy buen video me ha gustado mucho, me podrias ayudar si quiero compar los mismo dias de la semana del año pasado es decir los lunes de enero del 20 respecto a los lunes de enero del año 21 , aplico las formulas que has enseñado y me da error, porque estan pensadas para meses pero no para dias de la semana
Muchas gracias
George, Gracias por revisar el contenido. Has intentado el siguiente código:
Profit 265 :=
CALCULATE (
SUM (Claims [Profit]),
DATEADD (Dates[Date], -365, DAY
)
@@NestorAdrianzen hola muchas gracias por tu repuesta pero deduzco que me trae el día del año pasado en fecha es decir el 01 -01-20 (considerando que ahora es 01-01-21) y lo que quería ver es si se podía tener no la fecha si no el día de la semana es decir el lunes con el lunes y el. Primer lunes del año me lo compara con el siguiente año y así sucesivamente.... Muchas gracias por tus videos la verdad esque están bien grabado y vas a lo importante
excelentes videos te felicito por los videos .
Por fa una consulta
Tengo dos tablas
Personas => Nombre, Pais
Paises=>NombrePais
Asignaciones =>NombrePersona, Pais
Quiero crear una tabla con todas las personas del filtro seleccionado
TablaPersonasDelPaisSeleccionado =
CALCULATETABLE(Personas ,FILTER(Personas ,Personas [Pais] in ALLSELECTED(Paises[NombrePais])))
Esto me arroja todos las las personas no respeta el filtro pero si hago esto
TablaPersonasDelPaisSeleccionado =
CALCULATETABLE(Personas ,FILTER(ALL(Personas ),Personas [Pais] ="Ecuador"))
Si funciona , el filtro ALLSELECTED(Paises[NombrePais]) si me arroja datos siempre lo utilizo en los calculates pero nunca en calculatetable no se si exista una restriccion de no poderlo utilizar aqui .
Muchas gracias de antemano
Daniel, Usualmente ALLSELECTED es una función compleja y usualmente se usa como un modificador de filtro (tal como se usa la función ALL). Si los países son pocos en el filtro puedes usar un operador lógico. Ejemplo: personas[pais] IN {"Ecuador", "Peru", "Brasil"}. Adicionalmente, quizás no sea necesario utilizar la función FILTER en la fórmula y se pueda escribir como sigue:
CALCULATETABLE(
Personas ,
Personas [Pais] IN {"Ecuador", "Peru", "Brasil"}
)
@@NestorAdrianzen muchas gracias por la respuesta. Pero es q utilizo allselected ya q no quiero aplicar el filtro manual sino de forma dinámica tengo un slicer donde el usuario selecciona el país y con el allselected obtengo los valores q selecciono. Si fuera un filtro o varios filtros fijos utilizaría el {.. } pero en este caso el filtro viene de otro control o tabla. :s en calculate si me sirve el allselected pero en el calculatetable no :s quería saber si entonces hay alguna otra forma de obtener estos valores elegidos de forma dinámica VAR valoresElegkdos =, y luego usar esto en el filter de calculatetable Plis
Realice lo mismo pero el monto anterior no me lo suma, ya revisé todo y no encuentro problema
Oviedo, Gracias por revisar el contenido. Puede haber varias razones para que no esté funcionando correctamente. Por ejemplo, asegúrate que la tabla calendario está incluyendo todas las fechas del modelo y existe una correcta relación entre la tabla calendario y la otra tabla de datos. Otra opción puede ser empezar el ejercicio desde cero. Espero eso ayude. Saludos.
@@NestorAdrianzen si hermano, ya quedó resuelto. Tenía problemas en el formato uno estaba en fecha hora y otro solo en fecha
Si fuera de un semestre?
Puedes hacer una medida aplicando como intervalo MONTH y el número de intervalos debe ser -6.
@@NestorAdrianzen Pero eso no me daría el total de un solo mes y no el total de primer semestre por ejemplo. Lo que yo quiero es comprar primer semestre 2023 vs primer semestre 2022
Hola. Trate de hacer esta medida, y al momento de agregar la medida al gráfico, me arroja el siguiente error:
Error Message:
MdxScript(Model) (18, 80) Calculation error in measure 'Medidas Asignado'[UF año anterior]: A column specified in the call to function 'DATEADD' is not of type DATE. This is not supported.
Revise el campo del año en la tabla calendario, y el formato es número entero.
Si me pudieras ayudar, te lo agradecería mucho.
Interesante. Asegúrate que el formato de la primera columna de la tabla calendario esté en el formato "fecha y hora". También en la función DATEADD se tiene que elegir las fechas de la tabla calendario. Espero eso ayude a resolver tu pregunta. Saludos.
@@NestorAdrianzen está en el formato fecha y hora. Y está de la tabla calendario. Qué otra cosa puede estar mal?
@@manuelmunoz6256 Quizás tenga que ver con la actualización de Power BI. Tienes la versión actualizada de Power BI Desktop (Julio)? Si aún no, te recomiendo que la actualices y empieces el ejercicio desde cero. Ojalá eso ayude. Saludos.
@@NestorAdrianzen ok, lo haré. como estoy recién empezando en esto, me parece que el problema es de relaciones de las tablas. Tengo una tabla de calendario, y necesito vincular el año de asignación de un subsidio, con el año calendario, y ahí me aparece el error. No sé si me explico
Manuel, quizás haya algún inconveniente con las relaciones entre las tablas. Aquí te comparto un tutorial de relaciones entre tablas que puede ayudar. Saludos. ua-cam.com/video/yibD3DM93Is/v-deo.html
muy bueno pero no muestra como se construye la tabla en excel etc, de que sirve mostrar si no enseña de donde sale
Juan, Muchas gracias por revisar el contenido. Acá te comparto el link a los archivos que incluyen la data en formato de Excel. Para vincular la tabla solo es cuestión de usar el conector de Excel en Power BI Dekstop. Espero eso ayude. Saludos. drive.google.com/file/d/1VZ1GeX9g_kRI8Lf8dd2ZxxU210BupRfu/view?usp=sharing