Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

The Power BI DataViz World Championships are on! With four chances to enter, you could win a spot in the LIVE Grand Finale in Las Vegas. Show off your skills.

Reply
JWhitford
Frequent Visitor

Correr totalmente las dificultades

Hola a todos

Soy nuevo en PowerBI y este es el primer problema que no he podido resolver mediante la búsqueda a través de mensajes anteriores.

Tengo una lista de boletos de falla con fechas abiertas y cerradas. Hay una acumulación de archivos abiertos y estoy tratando de mostrar un total de cómo ha crecido el trabajo pendiente. Para hacer esto he utilizado un total de ejecución en un gráfico y esto parece estar funcionando bien.

image.png

Estoy tratando de presentar esta misma información en forma de una tabla. A continuación se muestra una captura de pantalla de los resultados:
image.png

A puede ver, la columna Total en ejecución solo está replicando la columna Archivos generados. No entiendo por qué. El cálculo correcto debe reflejar el gráfico, mostrando un aumento constante en los números hasta el período 7 2020 con un valor de 741.

Cualquier ayuda sería apreciada.

Gracias

Joel

10 REPLIES 10
Anonymous
Not applicable

Cuando se trata de totales en ejecución, la "Actualización quirky" sopla las puertas de todos los demás métodos T-SQL. En SQL Server 2000, la "Actualización quirky" es el único método de alta velocidad que hace el equivalente de "particionado" ROW_NUMBERs y RANK sin la pereza de algún bucle RBAR explícito o una "unión triangular". La "Actualización quirky" hace en unos 6 segundos lo que tarda un cursor casi 8 minutos en lograr. Para poner las cosas en perspectiva, eso significa que la "Actualización quirky" es aproximadamente 80 veces más rápida que un cursor cuando se hace "en su lugar" en la misma tabla.

PaulDBrown
Community Champion
Community Champion

@JWhitford

Si desea que el total en ejecución de la columna Archivo todavía abierto, intente:

1) si lo necesita por año

Total en ejecución: CALCULATE(SUM(table[Files Still Open],
FILTER(ALLEXCEPT(Table, Table[Financial Year]), table[Period] <-MAX(table[Period])))

2) si lo necesita por período

total en ejecución: CALCULATE(SUM(table[Files Still Open],
FILTER(ALL(Table), table[Period] <- MAX(table[Period])))

3) si lo necesita por toda la mesa ascendiendo por año

Total de ejecución ?
Var YearPeriod á tabla[Año] * 100 + tabla[Período]
devolución

CALCULATE(SUM(table[Files Still Open],
FILTER(ALL(Table), YearPeriod <- MAX(YearPeriod)))





Did I answer your question? Mark my post as a solution!
In doing so, you are also helping me. Thank you!

Proud to be a Super User!
Paul on Linkedin.






@PaulDBrown

Hola, gracias por la respuesta.

No he podido hacer que ninguno de estos comandos funcione.

Creo que el problema que estoy teniendo es la forma en que he calculado las tablas.

La columna Archivos generados es:

Count Open á COUNT('Failure Table'[Failure Number])

Números de error siendo una cadena.

La columna de archivos cerrados es:

Recuento cerrado: CALCULATE(COUNT('Failure Table'[Failure Number]), USERELATIONSHIP('Calendar'[Date], 'Failure Table'[Fecha de cierre de sesión del ingeniero]))

'Files still open' is just a quick measure with "Count Open á COUNT('Failure Table'[Failure Number])" with a filter on for blank sign-off date.

La columna 'Ejecutar total' (que no funciona) es:

Total en ejecución (error)
CALCULATE(
COUNT('Failure Table'[Failure Number]),
FILTRO(
ALLSELECTED('Failure Table'[Financial Period]),
ISONORAFTER('Failure Table'[Financial Period], MAX('Failure Table'[Financial Period]), DESC)
)
)

@JWhitford

Intente crear una medida para sumar los valores en la 'Tabla de errores'[Número de error]:

Suma de Errores - SUM(Failure Table[Failure Number])

Y, a continuación, utilice esta medida en la medida total en ejecución.





Did I answer your question? Mark my post as a solution!
In doing so, you are also helping me. Thank you!

Proud to be a Super User!
Paul on Linkedin.






@PaulDBrown La función SUM no funciona porque el "Número de error" es en realidad una cadena, cambiaré el nombre a Código de error para evitar cualquier confusión. Tienen el formato YOR123456 y DER123456. Hasta ahora he estado usando COUNT para obtener un número total de códigos de error, luego usando eso para mi medida Running Total, pero algo va mal.

La única manera que se me ocurre es tener mi Count Open - Count Closed dentro del código total en ejecución, pero no puedo averiguar cómo hacerlo realmente.

Estoy pensando algo como:

Recuento abierto menos recuento cerrado total de ejecución en fecha ?
CALCULATE(
[Contar abierto menos recuento cerrado],
FILTRO(
ALLSELECTED('Calendario'[Período]),
ISONORAFTER('Calendar'[Period], MAX('Calendar'[Period]), DESC)
)
)
Pero eso da estos resultados que todavía no es un total en ejecución.

image.png

@JWhitford

Prueba esto.

1) Primero cree una columna calculada para establecer el YearPeriod para su tabla:

Columna de Período de años [Año] * 100 + Tabla[Período]

2) A continuación, cree una tabla de dimensiones para su YearPeriod/Year/Period

Period Table.JPG

3) Unirse a la tabla Dim YearPeriod a su tabla de hechos en una relación de uno a varios

2020-10-01.png

5) Cree una medida que sea la suma de la columna que ha creado para Archivos elevados:

Sum of Files Raised = SUM(Table1[Files Raised])

6) Cree las medidas de totales en ejecución que necesita:

Running total YearPeriod = 
CALCULATE([Sum of Files Raised], 
               FILTER(ALL ('Dim YearPeriod'),  
                   'Dim YearPeriod'[YearPeriod] <= MAX('Dim YearPeriod'[YearPeriod])))
Running total by period = 
CALCULATE([Sum of Files Raised], 
            FILTER(ALL ('Dim YearPeriod'),  
                 'Dim YearPeriod'[Period] <= MAX('Dim YearPeriod'[Period])))
Running total by Year = 
CALCULATE([Sum of Files Raised], 
                  FILTER(ALL('Dim YearPeriod'), 
                        'Dim YearPeriod'[Year] <= MAX('Dim YearPeriod'[Year])))

Y este es el resultado:

Captura.JPG





Did I answer your question? Mark my post as a solution!
In doing so, you are also helping me. Thank you!

Proud to be a Super User!
Paul on Linkedin.






@PaulDBrown

Hola, Gracias por toda su ayuda, y lo siento por mi respuesta lenta. Tuve que alejarme de la computadora por un par de días. No he podido seguir sus instrucciones debido a errores en cada etapa. Creo que es por la forma en que se presentan los datos. He limpiado y anonimizado los datos en la medida de los casos. ¿Cómo subo el archivo para compartirlo contigo?

Gracias

Joel

@JWhitford

Puedes subir un archivo a un servicio en la nube (Onedrive, Google Drive, Dropbox...) y compartirlo desde allí.





Did I answer your question? Mark my post as a solution!
In doing so, you are also helping me. Thank you!

Proud to be a Super User!
Paul on Linkedin.






@JWhitford

¿Alguna posibilidad de que pueda proporcionar un conjunto de datos de ejemplo o un archivo PBIX?





Did I answer your question? Mark my post as a solution!
In doing so, you are also helping me. Thank you!

Proud to be a Super User!
Paul on Linkedin.






@PaulDBrown

Desafortunadamente, los datos son confidenciales y no sé cómo proporcionar un conjunto de muestras. Todavía soy muy nuevo en esto.

Helpful resources

Announcements
Feb2025 Sticker Challenge

Join our Community Sticker Challenge 2025

If you love stickers, then you will definitely want to check out our Community Sticker Challenge!

Jan NL Carousel

Fabric Community Update - January 2025

Find out what's new and trending in the Fabric community.

Top Solution Authors