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

Register now to learn Fabric in free live sessions led by the best Microsoft experts. From Apr 16 to May 9, in English and Spanish.

Reply
Anonymous
Not applicable

número secuencial faltante por fecha

Hola novato aquí

Tengo los siguientes datos:

Tabla de diarios

FechaNúmero de diario
11/05/2018JN100
11/05/2018JN200
11/05/2018JN400
12/05/2018JN100
12/05/2018JN300
12/05/2018JN400

Como puede ver JN300 falta el 11/05/2018 y el JN 200 falta en 12/05/2018

¿Cómo sería capaz de identificar estas brechas en power bi, utilicé lo siguiente en una nueva columna:

IF((LOOKUPVALUE('Journal Table'[Número de diario],'Tabla de diario'[Número de diario],'Tabla de diario'[Número de diario]'+1)),"N/A","Brecha de número de referencia de diario")

No hay ninguna referencia a la fecha en lo anterior.

Hace highlite las brechas en 11/05/2018 - JN300 y 12/05/2018 - JN200 pero también highlites el cambio en la fecha como una brecha (11/05/2018 - JN400 > 12/05/2018 - JN1000

Gracias de antemano

1 ACCEPTED SOLUTION

tiene más sentido 🙂

Con el código que está utilizando, si desea evitar que el cambio de fecha se marque como un hueco, necesita una manera de determinar el último número de diario. Y me imagino que el número de diarios va a aumentar, por lo que tendrá que determinar el número de diarios por fecha.

Sé que contiene fecha, pero así es como lo haría.

Column =
VAR _currentDate =
    CALCULATE ( SELECTEDVALUE ( journals3[Entry passed date] ) )
VAR _currentTransaction =
    CALCULATE ( SELECTEDVALUE ( journals3[Transaction Reference Number - Copy.2] ) )
VAR _maxTransaction =
    CALCULATE (
        MAX ( journals3[Transaction Reference Number - Copy.2] ),
        FILTER ( ALL ( journals3 ), journals3[Entry passed date] = _currentDate )
    )
RETURN
    IF (
        COUNTROWS (
            FILTER (
                ALL ( journals3 ),
                _currentDate = journals3[Entry passed date]
                    && _currentTransaction + 1 = journals3[Transaction Reference Number - Copy.2]
            )
        ) = 0
            && _currentTransaction < _maxTransaction,
        "Journal Reference Gap",
        "N/A"
    )

Hay 1 otra opción. Si está absolutamente seguro de que las filas se cargan en el orden correcto, puede establecer una columna de índice en Power Query y usarla para comprobar si la fila con el siguiente número de índice es la fila donde el número de diario es 001.

Pero de cualquier manera, tendrá un problema potencial con lo que si falta el último diario.

View solution in original post

13 REPLIES 13
mahoneypat
Employee
Employee

Aquí hay una expresión de medida que puede probar en un objeto visual de tabla con la columna Número de diario.

Count Missing Dates =
COUNTROWS ( EXCEPT ( VALUES ( Journal[Date] ), ALL ( Journal[Date] ) ) )

Si desea la lista de fechas que faltan, puede rpelace COUNTROWS() con CONCATENATEX(). Para crear la versión de columna de lo anterior, utilice CALCULATETABLE(VALUES(Journal[Date]), ALLEXCEPT(Journal[JournalNumber])) en lugar de VALUES (Journal[Date]).

Si esto funciona para usted, márquelo como la solución. Los elogios también son apreciados. Por favor, avísame si no.

saludos

palmadita





Did I answer your question? Mark my post as a solution! Kudos are also appreciated!

To learn more about Power BI, follow me on Twitter or subscribe on YouTube.


@mahoneypa HoosierBI on YouTube


Anonymous
Not applicable

@mahoneypat

Gracias, la fecha no es el problema, estoy tratando de identificar los números de diario que faltan solamente.

sturlaws
Resident Rockstar
Resident Rockstar

Hola @LostBoy

los datos de ejemplo no se ajustan del todo al código de la columna calculada, donde se utiliza el número de diario + 1 para detectar huecos.

Si sus datos se asemejan a los datos de ejemplo, crearía una nueva tabla como esta:

Journals2 = GENERATEALL(VALUES(Journals[Journal Number]),VALUES(Journals[Date]))

y luego crear una nueva columna como esta:

IsMissingFlag =
IF (
    ISBLANK (
        LOOKUPVALUE (
            Journals[Journal Number],
            Journals[Journal Number], Journals2[Journal Number],
            Journals[Date], Journals2[Date]
        )
    ),
    1,
    BLANK ()
)


Salud
Sturla

Si este post ayuda, por favor considere Aceptarlo como la solución. Los elogios también son agradables.

Anonymous
Not applicable

@sturlaws

Gracias, la fecha no es el problema, estoy tratando de identificar los números de diario que faltan solamente.

Con la solución que sugerí, puede configurar un objeto visual de tabla y un filtro para isMissingFlag-1.

¿Los datos de muestra que ha proporcionado son precisos? En el código de dax que ha publicado, escriba 'Tabla de diario'[Número de diario]'+1, lo que no tiene sentido cuando el número de diario contiene caracteres.

Anonymous
Not applicable

@sturlaws

Disculpas por todo esto, traté de simplificar mucho los datos. Se ha eliminado una gran cantidad de información, pero trató de dejar sólo lo que necesito, es decir, el número de diario y la fecha (como la fecha "restablece" el número de diario y comienza en 100 de nuevo).

Dividí los caracteres de los números de diario, así que terminé con 1 columna con JN y la otra con la información numérica - 100, 200, 300.

Quería agregar una columna que indicara la brecha de número de diario, como encuentro con la medida, cuando ve el informe y desea "ver registros" no lo permite.

Anonymous
Not applicable

Creo que permítanme más bien incluir la información como es:

Revistas

Fecha de entrada pasadaNúmero de referencia de transacciónAnálisis de brecha de diarioNúmero de referencia de transacción - Copia 1Número de referencia de transacción - Copy.2
11/05/2018JN001N/AJn

001

11/05/2018JN002N/AJn002
11/05/2018JN003Brecha de referencia del diarioJn003
11/05/2018JN005N/AJn005
11/05/2018JN006Brecha de referencia del diario
12/05/2018JN001N/AJn001
112/05/2018JN002N/AJn002
12/05/2018JN003N/AJn003
12/05/2018JN004Brecha de referencia del diarioJn004
12/05/2018JN006N/AJn006

Lo que usé para identificar la brecha:

IF((LOOKUPVALUE('Journals'[Número de referencia de transacción - Copy.2],'Journals'[Número de referencia de transacción - Copy.2],'Journals'[Número de referencia de transacción - Copy.2]+1)),"N/A","Brecha de número de referencia de diario")
Así que recoge un hueco en el cambio de fecha, así 11/05/18 (JN006 > 12/05/18 (JN001).
Así que necesito identificar brechas secuenciales en los números del diario por fecha, espero que esto tenga más sentido.

tiene más sentido 🙂

Con el código que está utilizando, si desea evitar que el cambio de fecha se marque como un hueco, necesita una manera de determinar el último número de diario. Y me imagino que el número de diarios va a aumentar, por lo que tendrá que determinar el número de diarios por fecha.

Sé que contiene fecha, pero así es como lo haría.

Column =
VAR _currentDate =
    CALCULATE ( SELECTEDVALUE ( journals3[Entry passed date] ) )
VAR _currentTransaction =
    CALCULATE ( SELECTEDVALUE ( journals3[Transaction Reference Number - Copy.2] ) )
VAR _maxTransaction =
    CALCULATE (
        MAX ( journals3[Transaction Reference Number - Copy.2] ),
        FILTER ( ALL ( journals3 ), journals3[Entry passed date] = _currentDate )
    )
RETURN
    IF (
        COUNTROWS (
            FILTER (
                ALL ( journals3 ),
                _currentDate = journals3[Entry passed date]
                    && _currentTransaction + 1 = journals3[Transaction Reference Number - Copy.2]
            )
        ) = 0
            && _currentTransaction < _maxTransaction,
        "Journal Reference Gap",
        "N/A"
    )

Hay 1 otra opción. Si está absolutamente seguro de que las filas se cargan en el orden correcto, puede establecer una columna de índice en Power Query y usarla para comprobar si la fila con el siguiente número de índice es la fila donde el número de diario es 001.

Pero de cualquier manera, tendrá un problema potencial con lo que si falta el último diario.

Anonymous
Not applicable

@sturlaws

Gracias por la ayuda hasta ahora, pregunta rápida, para la columna ?

VAR _maxTransaction -
    CALCULATE ( MAX (
        journals3[Número de referencia de transacción - Copy.2] ),
        FILTER ( ALL ( journals3 ), journals3[Fecha de paso de entrada] á _currentDate )
    )

Obtengo el recuento total de los valores distintos en la columna Diarios[Número de referencia de transacción - Copia.2], ¿es correcto?

El filtro está configurado para filtrar en _currentDate, por lo que será el número máximo de diario ese día. Si elimina esta parte

journals3[Fecha de paso de entrada] - _currentDate

obtendrá el número máximo de diario en todas las fechas.

En cierto sentido, puede interpretar _maxTransaction como el recuento total de los valores distintos en la columna Diarios [Número de referencia de transacción - Copia.2], en el sentido de que si no faltaban números de diario y 1 es el primer número de diario, _maxTransaction-distinctcount(número de diario)

Anonymous
Not applicable

@sturlaws

Espero que esta sea la última pregunta de mi parte con respecto a este

Vea a continuación, usando estados de cuenta siempre que parezca que ahora identifica cada número de diario menor que el número máximo de diario para el día como una "brecha":

Capture_Journal Gap.JPGAnálisis de brecha de diario

IF(COUNTROWS(FILTER(ALL('Journals'),'Journals'[VAR_currentDate].[ Fecha]'Diarios'[Fecha de entrada pasada - Copiar]. [Fecha]&&'Diarios'[VAR_currentTransaction]+1'Diarios'[Número de referencia de transacción.2]))-0&&'Diarios'[VAR_currentTransaction]<'Diarios'[VAR_maxTransaction],"Gap","n/a")

no está seguro de lo que está haciendo aquí. Eche un vistazo al archivo adjunto

Anonymous
Not applicable

@sturlaws

Muchas gracias, su trabajo ahora, apreciamos toda la ayuda.

Como dije, Power BI Novato/Noob aquí 🙈 , no sé lo que estaba haciendo antes🤔

Helpful resources

Announcements
Microsoft Fabric Learn Together

Microsoft Fabric Learn Together

Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City

PBI_APRIL_CAROUSEL1

Power BI Monthly Update - April 2024

Check out the April 2024 Power BI update to learn about new features.

April Fabric Community Update

Fabric Community Update - April 2024

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