mecho
Oye,
Estoy tratando de crear un gráfico de líneas a lo largo del tiempo con la cantidad de casos ‘abiertos’ por día. En mis datos, tengo un número de identificación único por caso, así como una ‘Fecha de emisión’ y una ‘Fecha de cierre’ (o ninguna fecha de cierre si aún está abierto). Me gustaría que Power BI calcule cuántos casos se han abierto por día y los muestre a lo largo del tiempo. Esto debe calcularse para cada día durante los últimos dos años.
En los ejemplos fabricados a continuación, tengo un ejemplo de mis datos y un ejemplo de la medida / tabla que necesito que Power BI calcule.
Puede alguien ayudarme con esto? ¡Gracias! 🙂
Estos son los datos que recibiré (y actualizaré todos los días)
Esta es la información que necesito para crear mis ‘casos abiertos por día a lo largo del tiempo’
mecho
En respuesta a mecho
Terminé usando una serie de medidas y un gráfico de líneas para lograr lo que quería:
En primer lugar, creé una tabla de calendario, comenzando desde la fecha del primer boleto abierto hasta el presente:
Calendar = CALENDAR(FIRSTDATE('Tickets'[Open Date]),TODAY())
En segundo lugar, dupliqué mi tabla de ‘Entradas’ original. Luego, vinculé las ‘Entradas’ originales a ‘Calendario’ a través de una relación única de muchos a uno a través de ‘Fecha de apertura’, luego vinculé ‘Entradas duplicadas’ a Calendario de la misma manera pero a través de ‘Fecha de cierre’. Intenté usar dos relaciones, una activa y otra inactiva, entre ‘Entradas’ y ‘Calendario’ para ‘Fecha de apertura’ y ‘Fecha de cierre’, pero como solo una relación estaba activa, no fue posible calcular las entradas cerradas. por día. Esa solución solo me daría boletos abiertos por día, ya que esa era la relación activa.
Luego, creé una función SUMX dentro de ‘Entradas’ y ‘Entradas duplicadas’ para contar el total de entradas abiertas y cerradas, respectivamente:
OpenedCount = COUNT('Tickets'[Ticket Num]) ClosedCount = COUNT('Tickets Duplicate'[Close Date])
Cuarto, hice dos medidas en ‘Calendario’ para contar el total de tickets abiertos y cerrados por día:
OpenedSum = SUMX('Calendar','Tickets'[OpenedCount]) ClosedSum = SUMX('Calendar','Duplicate Tickets'[ClosedCount])
Aquí es donde necesitaba ‘Tickets duplicados’: sin una segunda relación activa, solo podía contar los tickets abiertos o cerrados, en función de cuál de esas columnas era la relación activa.
En quinto lugar, necesitábamos un «PendingCount» en «Calendario» para calcular la diferencia entre el total de tickets abiertos y el total de tickets cerrados hasta la fecha:
PendingCount="Calendar"[OpenedSum] - 'Calendar'[ClosedSum]
En sexto lugar, agregué una función SUMX para calcular cuántos boletos aún estaban pendientes cada día:
Cumulative Total = CALCULATE ( SUMX ( 'Calendar', [PendingCount] ), FILTER ( ALL ( 'Calendar'[Date] ), 'Calendar'[Date] <= MAX ( 'Calendar'[Date] ) ) )
Finalmente, trazar «Total acumulado» versus «Fecha» en un gráfico de líneas me dio exactamente lo que quería.
La razón por la que la solución de @ v-diye-msft no funcionó fue porque eliminó por completo los tickets que se habían cerrado. Obtuve un gráfico preciso de todos mis boletos actualmente abiertos a lo largo del tiempo, pero no pudo darme los recuentos históricos de boletos que estaban abiertos, el día, hace un año, de los cuales todos esos boletos han estado cerrados desde entonces.
¡Muchas gracias por toda la ayuda!
hclvenkatakg
Hola mecho
Tu publicación me resultó útil como primer paso. Cuando queríamos desglosar los tickets abiertos por otros campos en la tabla maestra (Tickets), digamos por ‘Región’, ‘Tipo de caso’, etc., la solución de duplicar la tabla ‘Tickets’ no funcionó del todo bien para mí. Intenté cambiar su solución usando la tabla ‘Tickets’ solo sin duplicarla. Como dijo, la relación inactiva no será efectiva a menos que le indique a DAX que la use como una relación activa. En el cuarto paso, modifiqué el siguiente paso de
ClosedSum = SUMX('Calendar','Duplicate Tickets'[ClosedCount])
to
ClosedSum = SUMX('Calendar',USERELATIONSHIP('Calendar'[Date],'Tickets'[ClosedCount])
Todos los demás pasos deben seguirse según su publicación. Al hacer esto, se podrían usar segmentaciones de los campos (como ‘Región’, ‘Tipo de caso’, etc. de la tabla Tickets, con los que podría visualizar los datos según los valores seleccionados.
Pensé en publicar esta solución, ya que sería útil para alguien que tenga necesidades similares a las mías.
Greg_Deckler
Eche un vistazo a estas dos medidas rápidas, ya que creo que desea algo como ellas.
https://community.powerbi.com/t5/Quick-Measures-Gallery/Open-Tickets/mp/409364
https://community.powerbi.com/t5/Quick-Measures-Gallery/Periodic-Billing/mp/409365
mecho
En respuesta a Greg_Deckler
@Greg_Deckler,
Creo que ese primer enlace es exactamente lo que necesito. Tengo tu medida original conectada y parece estar funcionando, pero no estoy seguro de cómo vincularla a la imagen. Cuando pongo ‘Tickets abiertos’ en el ‘Valor’ de mi gráfico y la tabla ‘Calendario’ que creé en el ‘Eje’ de la imagen, permanece en blanco. No hay relación entre mi tabla de Calendario y la consulta en la que se encuentra ‘Tickets abiertos’, pero no estoy seguro de cómo funcionaría esa relación.
Soy relativamente nuevo en Power BI, por lo que es probable que haya conectado algo en el lugar completamente equivocado.
Aquí está mi medida después de que cambié los nombres de las columnas / consultas para que coincidan con mis datos
Aquí está mi imagen, y puede ver cómo configuro la tabla del Calendario y la columna del ticket (aquí como ‘RMA num’)
v-diye-msft
En respuesta a mecho
Hola @mecho,
Creo que puede consultar la publicación similar: https: //community.powerbi.com/t5/Desktop/ABUSE-By-AlfredR-Board-power-bi-designer-359154/mp/758431 # …
mecho
En respuesta a v-diye-msft
@Greg_Deckler
Esa solución no funcionó del todo para mí; solo pudo contar los tickets que aún estaban sin cerrar, debido a la relación ‘Abierta’ entre la consulta y el Calendario.
@ v-diye-msft
Una versión modificada de esa solución me permitió crear la imagen que necesito; ¡gracias!
mecho
En respuesta a mecho
Terminé usando una serie de medidas y un gráfico de líneas para lograr lo que quería:
En primer lugar, creé una tabla de calendario, comenzando desde la fecha del primer boleto abierto hasta el presente:
Calendar = CALENDAR(FIRSTDATE('Tickets'[Open Date]),TODAY())
En segundo lugar, dupliqué mi tabla de «Entradas» original. Luego, vinculé las ‘Entradas’ originales a ‘Calendario’ a través de una relación única de muchos a uno a través de ‘Fecha de apertura’, luego vinculé ‘Entradas duplicadas’ a Calendario de la misma manera pero a través de ‘Fecha de cierre’. Intenté usar dos relaciones, una activa y otra inactiva, entre ‘Entradas’ y ‘Calendario’ para ‘Fecha de apertura’ y ‘Fecha de cierre’, pero como solo una relación estaba activa, no fue posible calcular las entradas cerradas. por día. Esa solución solo me daría boletos abiertos por día, ya que esa era la relación activa.
Luego, creé una función SUMX dentro de ‘Entradas’ y ‘Entradas duplicadas’ para contar el total de entradas abiertas y cerradas, respectivamente:
OpenedCount = COUNT('Tickets'[Ticket Num]) ClosedCount = COUNT('Tickets Duplicate'[Close Date])
Cuarto, hice dos medidas en ‘Calendario’ para contar el total de tickets abiertos y cerrados por día:
OpenedSum = SUMX('Calendar','Tickets'[OpenedCount]) ClosedSum = SUMX('Calendar','Duplicate Tickets'[ClosedCount])
Aquí es donde necesitaba ‘Tickets duplicados’: sin una segunda relación activa, solo podía contar los tickets abiertos o cerrados, en función de cuál de esas columnas era la relación activa.
En quinto lugar, necesitábamos un «PendingCount» en «Calendario» para calcular la diferencia entre el total de tickets abiertos y el total de tickets cerrados hasta la fecha:
PendingCount="Calendar"[OpenedSum] - 'Calendar'[ClosedSum]
En sexto lugar, agregué una función SUMX para calcular cuántos boletos aún estaban pendientes cada día:
Cumulative Total = CALCULATE ( SUMX ( 'Calendar', [PendingCount] ), FILTER ( ALL ( 'Calendar'[Date] ), 'Calendar'[Date] <= MAX ( 'Calendar'[Date] ) ) )
Finalmente, trazar «Total acumulado» versus «Fecha» en un gráfico de líneas me dio exactamente lo que quería.
La razón por la que la solución de @ v-diye-msft no funcionó fue porque eliminó por completo los tickets que se habían cerrado. Obtuve un gráfico preciso de todos mis boletos actualmente abiertos a lo largo del tiempo, pero no pudo darme los recuentos históricos de boletos que estaban abiertos, el día, hace un año, de los cuales todos esos boletos han estado cerrados desde entonces.
¡Muchas gracias por toda la ayuda!