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

Earn a 50% discount on the DP-600 certification exam by completing the Fabric 30 Days to Learn It challenge.

Reply
Syndicate_Admin
Administrator
Administrator

Necesita ayuda con la búsqueda de un valor de una columna y el valor está en otra columna de la misma tabla

Tengo las siguientes columnas:

ID Ventas Amt. Mes de ventas Mes anterior

A1 1000 Junio Mayo

A2 2000 Abril Marzo

A1 3000 Mayo Abril

A2 4000 Marzo Febrero

Necesito hacer una columna que busque el valor de la columna del mes anterior en el mes de ventas y devuelva el monto de las ventas. Muy parecido a:

ID Ventas Amt. Mes de ventas Mes anterior Mes anterior Monto de las ventas

A1 1000 Junio Mayo 3000

A2 2000 Abril Marzo 4000

A1 3000 Mayo Abril -

A2 4000 Mayo Abril 2000

Medidas probadas y columna calculada pero sin obtener el resultado deseado.

Cualquier ayuda sería

1 ACCEPTED SOLUTION

Hay @rahuldas_vgm,

Puede usar la función MAX para reemplazar la función SUM original tal como se muestra en la siguiente captura de pantalla:

Monto de las ventas del mes anterior =
VAR _premonth =
SELECTEDVALUE ( 'Tabla'[Mes anterior] )
VAR _selid =
SELECTEDVALUE ( 'Tabla'[ID] )
DEVOLUCIÓN
CALCULAR (
MAX ( «Tabla» [Ventas Amt.] ),
FILTRO (
ALLSELECTED ( 'Tabla' ),
'Tabla'[ID] = _selid
&& 'Tabla'[Mes de ventas] = _premonth
)
)

yingyinr_0-1635241228824.png

Si lo que desea obtener es una columna,puede crear una columna calculada de la siguiente manera:

Column = 
    CALCULATE (
        MAX ( 'Table'[Sales Amt.] ),
        FILTER (
            ALL ( 'Table' ),
            'Table'[ID] = EARLIER('Table'[ID])
                && 'Table'[Sales Month] = EARLIER('Table'[Previous Month])
        )
    )

yingyinr_0-1635241912220.png

Si los anteriores no funcionan, proporcione más datos de muestra con formato de texto y su resultado esperado con captura de pantalla o ejemplos especiales. Gracias.

Saludos

View solution in original post

9 REPLIES 9
Syndicate_Admin
Administrator
Administrator

Aquí hay una expresión de columna calculada que debería funcionar. Sin embargo, ¿cómo manejas Jan con el mes anterior de diciembre? Debe considerar convertir sus columnas de mes a fechas, agregar una tabla de fechas a su modelo, para que luego pueda hacer este tipo de análisis con medidas de inteligencia de tiempo.

Ventas de PrevMon =
VAR prevmon = Amt[Mes anterior]
VAR thisID = Amt[ID]
DEVOLUCIÓN
SUMX (
FILTER ( FILTER ( Amt, Amt[Sales Month] = prevmon ), Amt[ID] = thisID ),
Amt[Ventas Amt.]
)

Palmadita

Hola Pat,

Gracias por su sugerencia. Esto realmente me llevó a pensar en el mes de enero y llevarlo hacia atrás. Ahora he creado la columna Fecha actual y fecha del mes anterior a partir de la edición de la consulta. Me encontré con publicaciones de análisis de inteligencia de tiempo aquí antes y definitivamente intentaré resolver el problema.

Además, sería de gran ayuda si pudieras guiarme con esta parte, en caso de que no pueda seguir las publicaciones correctamente.

Gracias de nuevo!!

Hay @rahuldas_vgm,

¿Su problema se ha resuelto? Si no, puede crear una medida como la siguiente para obtener las ventas del mes anterior:

Previous Month Sales Amount = 
VAR _premonth =
    SELECTEDVALUE ( 'Table'[Previous Month] )
VAR _selid =
    SELECTEDVALUE ( 'Table'[ID] )
RETURN
    CALCULATE (
        SUM ( 'Table'[Sales Amt.] ),
        FILTER (
            ALLSELECTED ( 'Table' ),
            'Table'[ID] = _selid
                && 'Table'[Sales Month] = _premonth
        )
    )

yingyinr_0-1635239735264.png

Si su problema se ha resuelto, ¿podría marcarlo como Respondido? Ayudará a los demás en la comunidad a encontrar la solución fácilmente si enfrentan el mismo problema con el suyo. Gracias.

Saludos

Hola Rena,
Gracias por su ayuda. El resultado no me muestra ningún valor, pero no hay ningún mensaje de error. El tipo de datos en la columna ventas está en palabras (texto) Si tuviera que devolver un texto, ¿con qué debería reemplazar la función SUMA?

Gracias de nuevo por su ayuda, esperando su respuesta.

Hay @rahuldas_vgm,

Puede usar la función MAX para reemplazar la función SUM original tal como se muestra en la siguiente captura de pantalla:

Monto de las ventas del mes anterior =
VAR _premonth =
SELECTEDVALUE ( 'Tabla'[Mes anterior] )
VAR _selid =
SELECTEDVALUE ( 'Tabla'[ID] )
DEVOLUCIÓN
CALCULAR (
MAX ( «Tabla» [Ventas Amt.] ),
FILTRO (
ALLSELECTED ( 'Tabla' ),
'Tabla'[ID] = _selid
&& 'Tabla'[Mes de ventas] = _premonth
)
)

yingyinr_0-1635241228824.png

Si lo que desea obtener es una columna,puede crear una columna calculada de la siguiente manera:

Column = 
    CALCULATE (
        MAX ( 'Table'[Sales Amt.] ),
        FILTER (
            ALL ( 'Table' ),
            'Table'[ID] = EARLIER('Table'[ID])
                && 'Table'[Sales Month] = EARLIER('Table'[Previous Month])
        )
    )

yingyinr_0-1635241912220.png

Si los anteriores no funcionan, proporcione más datos de muestra con formato de texto y su resultado esperado con captura de pantalla o ejemplos especiales. Gracias.

Saludos

Lo siento, me había olvidado de decir que el mes actual se está seleccionando a través de una cortadora. Entonces, ahora me di cuenta de que su solución funciona perfectamente, pero solo cuando la cortadora se ha eliminado por completo o el mes actual y el mes anterior respectivo se seleccionan de la rebanadora.
Definitivamente marcaré esto como una solución a la pregunta que había publicado, pero realmente sería de gran ayuda si pudieras hacérmelo saber:

1. Cómo crear una columna que tenga los valores de la medida que su solución está proporcionando.

2. Cómo hacer que los elementos visuales vean los datos del mes anterior en la selección de un solo mes en lugar de la selección de dos meses consecutivos.

¡Muchas gracias!

Syndicate_Admin
Administrator
Administrator

Hay @rahuldas_vgm

Pruebe esto para agregar una nueva columna:

Column = LOOKUPVALUE('Table'[Sales Amt.],[Sales Month],[Previous Month])

Salida:

VahidDM_0-1634989823078.png

Si esta publicación ayuda,considere aceptarla como la solución para ayudar a los otros miembros a encontrarla más rápidamente.

Aprecia tus felicitaciones!!

La columna Mes anterior se creó en la edición de consulta para la columna calculada mediante Dateadd(SalesMonth,-1,Month). Es esa la razón por la que me está dando el error. ¿También si es posible obtener el valor de ventas del mes anterior de la columna Mes de ventas en sí según los valores dentro de la columna?

¡Gracias de nuevo por todas las maravillosas sugerencias y ayuda!

Gracias @VahidDM

Intenté buscar valor en la columna crear, pero da un error "Se proporcionó una tabla de valor múltiple donde se esperaba un solo valor".

😞

Gracias por su sugerencia!!

Helpful resources

Announcements
RTI Forums Carousel3

New forum boards available in Real-Time Intelligence.

Ask questions in Eventhouse and KQL, Eventstream, and Reflex.

LearnSurvey

Fabric certifications survey

Certification feedback opportunity for the community.