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
Ani26
Helper III
Helper III

Obtenga el valor de fecha anterior si falta una entrada para dicha fecha.

Hola Equipo,

Espero que todos estén haciendo el bien!!

Tengo el requisito de que necesito mostrar los tipos de cambio para todas las monedas frente a las fechas en una tabla de calendario donde el día es viernes o un fin de mes.

Permítanme explicárselo con datos de muestra y resultados esperados.

Tabla 1 : Tasa

FromCurrencyEffectiveDateExchangeRate
Aed3/15/20200.27225
Aed3/16/20200.27223
Aed3/17/20200.27225
Aed3/18/20200.27225
Aed3/19/20200.27223
ZTWD3/15/20200.03314
ZTWD3/16/20200.03315
ZTWD3/17/20200.03309
ZTWD3/18/20200.03315
ZTWD3/19/20200.03314
ZTWD3/20/20200.03314

Tabla 2 : Calendario

FechaWeekNumberWeekFillupFlagInfo
3/15/2020 0:001203/13/20200
3/16/2020 0:001203/20/20200
3/17/2020 0:001203/20/20200
3/18/2020 0:001203/20/20200
3/19/2020 0:001203/20/20200
3/20/2020 0:001203/20/20201
3/21/2020 0:001203/20/20200


Requisito:

Quiero tener una tabla con las siguientes columnas:

FechaEffectiveDateFromCurrencyWeekNumberWeekFillupFlagInfoTasa


Pero la tasa debe ser el valor de la tabla Rate donde WeekFillup es EffectiveDate.

Para esto fusioné las dos tablas seleccionando las columnas anteriores para unirse y obtuve el 50% del requisito.

Ahora supongamos que, debido a un día festivo en EAU no hubo ninguna entrada en la tabla de tasas para 03/20/2020 que es un viernes con el valor FlagInfo como 1 (FlagInfo valor es una columna que tiene un valor 1 cuando el día es un viernes o mes día de fin de año de lo contrario es 0).
Pero en la tabla de salida frente a la columna Date que tiene el valor 03/20/2020, queremos que la columna Tasa tenga un valor de fecha anterior (03/19/2020) de la tabla Tasa. Esto es algo donde estoy atascado. Entiendo que es posible que necesite usar la función CROSSJOIN pero no puedo aplicarla.

La salida esperada es la siguiente donde los valores en negrita son realmente la tasa para 03/19/2020 ya que faltaba el registro para el 20 de marzo para AED, pero funcionó como se esperaba para ZTWD, ya que no faltaba entrada para el 20 de marzo.

FechaEffectiveDateFromCurrencyWeekNumberWeekFillupFlagInfoTasa
3/15/20203/15/2020Aed123/13/202000.27225
3/16/20203/16/2020Aed123/20/202000.27223
3/17/20203/17/2020Aed123/20/202000.27223
3/18/20203/18/2020Aed123/20/202000.27223
3/19/20203/19/2020Aed123/20/202000.27223
3/20/20203/20/2020Aed123/20/202010.27223
3/15/20203/15/2020ZTWD123/13/202000.03314
3/16/20203/16/2020ZTWD123/20/202000.03314
3/17/20203/17/2020ZTWD123/20/202000.03314
3/18/20203/18/2020ZTWD123/20/202000.03314
3/19/20203/19/2020ZTWD123/20/202000.03314
3/20/20203/20/2020ZTWD123/20/202010.03314


Espero poder explicarlo correctamente. Si en caso de que se requiere más información, hágamelo saber.

Gracias

O

2 REPLIES 2
v-lid-msft
Community Support
Community Support

Hola @Ani26 ,

Podemos crear una tabla para satisfacer sus necesidades.

Table =
ADDCOLUMNS (
    CROSSJOIN ( DISTINCT ( 'Rate'[FromCurrency] ), 'Calendar' ),
    "EffectiveDate", [Date],
    "Rate",
    VAR result =
        CALCULATE (
            SUM ( 'Rate'[ExchangeRate] ),
            'Rate'[FromCurrency] = EARLIER ( [FromCurrency] ),
            'Rate'[EffectiveDate] = EARLIER ( [Date] )
        )
    RETURN
        IF (
            result = BLANK ()
                && [FlagInfo] = 1,
            VAR lastD =
                CALCULATE (
                    MAX ( 'Rate'[EffectiveDate] ),
                    'Rate'[FromCurrency] = EARLIER ( [FromCurrency] ),
                    'Rate'[EffectiveDate] < EARLIER ( [Date] )
                )
            RETURN
                CALCULATE (
                    SUM ( 'Rate'[ExchangeRate] ),
                    'Rate'[FromCurrency] = EARLIER ( [FromCurrency] ),
                    'Rate'[EffectiveDate] = lastD
                ),
            result
        )
)

33.png

BTW, pbix como adjunto.


Saludos

Community Support Team _ Dong Li
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.

Muchas gracias @v-lid-msft . Esto también funcionó según lo esperado. También probé un enfoque más e incluso eso me trajo la salida requerida. Pero creo que esto es más codicioso. Muchas gracias de nuevo.

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.