Earn the coveted Fabric Analytics Engineer certification. 100% off your exam for a limited time only!
Hola, actualmente tenemos un libro de trabajo de Excel corrido desde Jet que da datos de ventas, es decir, Actual, PY, Presupuesto, Objetivo, etc. Somos un negocio minorista, con nuestras semanas a partir del domingo. En este libro de trabajo (que estoy intentando replicar en Power Bi) los totales del año anterior me están dando algunos problemas. Debido a que tengo que usar el mismo día del año pasado y no la misma fecha, me está dando dolor. Quiero que puedan usar la segmentación de fecha para ver el diario, la semana hasta la fecha, el mes hasta la fecha, así como los totales de año a fecha para cada ubicación.
Por ejemplo: la fecha del informe es 7/1 mientras miramos el día anterior para obtener un día completo.
Puedo obtener el total diario correcto o tal vez el año, pero no puedo averiguar cuál sería el camino correcto para hacer que esta función correctamente con la cortadora de fecha. Estoy usando el Table Visual. He tomado una captura de pantalla de cómo quiero que esto funcione, pero no estoy seguro de si es totalmente posible usar la cortadora o no.
Realmente agradecería un consejo o simplemente alguna dirección que tendría que tomar.
Informe diario
Fecha del informe | 7/1/2020 |
Día del Año Pasado | 7/3/2019 |
Semana a la fecha
Fecha de inicio del informe | 6/28/2020 | |
Fecha de finalización del informe | 7/1/2020 | |
Curr Date | 6/28/2020..7/1/2020 | |
Inicio del año pasado | 6/30/2019 | |
Fin del año pasado | 7/3/2020 | |
Fecha previa | 6/30/2019..7/3/2019 |
Mes a la fecha
Fecha de inicio del informe | 7/1/2020 | |
Fecha de finalización del informe | 7/1/2020 | |
Curr Date | 7/1/2020..7/1/2020 | |
Inicio del año pasado | 7/1/2020 | |
Fin del año pasado | 7/1/2020 | |
Fecha previa | 7/1/2019..7/1/2019 |
Año hasta la fecha
Fecha de inicio del informe | 1/1/2020 | |
Fecha de finalización del informe | 7/1/2020 | |
Curr Date | 1/1/2020..7/1/2020 | |
Inicio del año pasado | 1/1/2019 | |
Fin del año pasado | 7/1/2019 | |
Fecha previa | 1/1/2019..7/1/2019 |
Hola @Dawn_K,
Cree 2 medidas como se indica a continuación:
Mes a fecha y año a fecha son los mismos:
Month to date =
var _calendardate=CALCULATETABLE(VALUES('calendar Table'[Date]),'calendar Table'[Date] in FILTERS('Table'[Date]))
Return
CALCULATE(MAX('calendar Table'[Date]),SAMEPERIODLASTYEAR(_calendardate))
Y verás:
Día del año pasado y semana hasta la fecha son los mismos:
Day Last Year =
var _calendardates=CALCULATETABLE(VALUES('calendar Table'[Date]),'calendar Table'[Date] in FILTERS('Table'[Date]))
Return
CALCULATE(MAX('calendar Table'[Date]),FILTER('calendar Table',YEAR('calendar Table'[Date])=YEAR(MAXX(_calendardates,'calendar Table'[Date]))-1&&'calendar Table'[weeknum]=WEEKNUM(MAXX(_calendardates,'calendar Table'[Date]),1)&&'calendar Table'[weekday]=WEEKDAY(MAXX(_calendardates,'calendar Table'[Date]),1)))
Y verás:
Aquí está el archivo .pbix,pls haga clic aquí.
@v-kellya-msft Gracias por la información. ¿Asumo que seguiría ese mismo camino también para el día y la semana?
Me gustaría lograrlo todo en una sola medida. ¿Es posible?
Además, no estoy tratando de ver la fecha en la que quiero los números de ventas de PY
Esto es en lo que he trabajado, y no está funcionando. Con la semana a la fecha, el código siguiente es el único que he podido usar con éxito y funciona correctamente, así que esperaba poder cambiarlo con restar el año. Puedo obtener la misma semana del año pasado, pero lo necesito para mostrar la semana hasta la fecha.
Hola @Dawn_K ,
¿Puede proporcionar algunos datos de ejemplo con la salida esperada?
Por lo tanto, he tomado capturas de pantalla del informe Jet (también he incluido el factor de fecha que controla este informe) que se está utilizando, y también capturas de pantalla de mi archivo Power Bi que estoy intentando replicar.
Actualmente esta es mi medida
Hola @Dawn_K
Lo siento por la respuesta tardía!
Parece un problema de totales de medida. Un problema muy común. Ver a continuación publicación al respecto
https://community.powerbi.com/t5/DAX-Commands-and-Tips/Dealing-with-Measure-Totals/td-p/63376
https://community.powerbi.com/t5/Quick-Measures-Gallery/Measure-Totals-The-Final-Word/m-p/547907
Puede agregar una medida adicional mientras calcula los totales. Como:
año a la fecha-sumx(values('Date Table'[Date]),[measure])
@v-kellya-msft aunque esos artículos estaban intercalando, y podría ayudar en situaciones futuras, no creo que ese sea mi problema.
Mi problema es la fecha. Como estamos buscando las ventas del año anterior, mi problema es que nos fijamos en el día y no en la fecha. Por lo tanto, el uso de SAMEPERIODLASTYEAR no funciona para mi situación para mirar el día del año pasado o la semana hasta la fecha del año pasado. Funciona muy bien para mirar el mes o el año. Como expliqué antes, mis datos actuales son correctos cuando selecciono el día y la semana hasta la fecha, pero mis números están desactivados cuando miro el total del mes o el total del año. Por ejemplo, si elijo el 14 de julio de 2020 (la fecha del año anterior sería 7/16,2019) en mi segmentación de fecha con mi medida actual CALCULATE(SUM('GCE$Revel Daily Sales'[Real]),DATEADD('Date Table'[Date], -364,DAY)) obtengo resultados correctos. Si cambio la cortadora de fecha al 12 de julio de 2020 al 14 de julio de 2020 que sería la semana hasta la fecha (domingo comienza la semana) (fecha del año anterior sería 7/14/2019 a 7/16/2020) mis totales son correctos. Ahora, cuando selecciono del 1 de julio de 2020 al 14 de julio de 2020 con mi segmentación, es cuando mis totales son incorrectos. Como se muestra arriba en mi tabla, cada ubicación debe tener un valor total para cada fila, luego la suma de esos valores en la parte inferior de la tabla. Lo mismo sucede con selecciono del 1 de enero de 2020 al 14 de julio de 2020 con la segmentación de mis números.
He intentado escribir variables, pero o obtengo un valor en blanco en cada fila o obtengo un valor de suma que se repite en cada una de las filas.
Sólo estoy tratando de encontrar la mejor solución, que puedo crear una medida que cubrirá todos estos sceniros ya que el usuario normalmente seleccionará estas 4 opciones con la segmentación de fecha, pero necesito la segmentación de fecha para que puedan ver cualquier intervalo de fechas. Gracias de nuevo por su ayuda!
Hola @Dawn_K ,
¿Puede cargar su archivo .pbix a la empresa Onedrive y compartir el enlace conmigo?
Si usted toma la sugerencia en mi última respuesta para crear una medida usando sumx función , le dará el resultado correcto, pero no estoy seguro de si la medida 1 se puede utilizar en 4 criterios diferentes, por lo que pls compartir su archivo conmigo, voy a probarlo.
@v-kellya-msft, así que he estado trabajando en una dirección diferente, pero sé que algo no es correcto con mi declaración RETURN.
Obtengo el valor correcto si dejo fuera la segunda declaración IF. Puedo obtener todos los totales correctos cuando cambio mis variables, pero no puedo obtener las 4 variables para trabajar en mi declaración RETURN. Como está escrito en este momento, obtengo mi Día y Semana, pero el Mes y el Año son sólo un poco, pero si creo una medida con el SAMEPERIODLASTYEAR y la uso por separado los totales son correctos. ¿Alguna idea?
@v-kellya-msft Prefiero no subir mi archivo, ya que hay información sensativa. Intenté tu sugerencia
@v-kellya-msft en realidad recibí tu sugerencia para trabajar. Encontré un error tipográfico (lo siento por eso). Sin embargo, I'm aún de descuento en mi mes hasta la fecha y año hasta la fecha para el año anterior.
Para el uso diario y semanal DateAdd() con días en lugar de años. Tendrás que mantener una tabla de referencia en algún lugar que tenga la diferencia de día entre tus años, para cada año. Así que entre este año y el año anterior la diferencia de fecha es 364.
Para Mensual y Anual puede utilizar las funciones regulares. SAMEPERIODLASTYEAR más la bandera "está en el pasado".