Forum Discussion

Syndicate_Admin's avatar
Syndicate_Admin
Administrator
3 years ago
Solved

Tabla filtrada

Los registros tblSalaryModifications enumeran todos los cambios en el salario o la tarifa por hora de un empleado. Estoy tratando de crear una medida que produzca el salario anual para el emplolyee seleccionado (slicer), filtrando (adicionalmente) la tabla hasta el cambio salarial más reciente.
La siguiente medida se equivoca diciendo que la tabla en el curEmp_ VAR "no está disponible". ¿Dónde me he equivocado?
Salarios anuales =
DÓNDE lastedate_ = ..MAX( 'tblSalaryModifications'[DtAsignado] )
DÓNDE curEmp_ = FILTRO( 'tblSalaryModifications', 'tblSalaryModifications'[DtAsignado] = lastedate_ )
DÓNDE estAnnualWage_ =
SI( curEmp_[Salario] > 0,
curEmp_[Salario],
curEmp_[HoursPerWeek] * curEmp_[Tarifa por hora] * 52
)
DEVOLUCIÓN estAnnualWage_
  • Su código me dio el empujón que necesitaba para encontrar la solución.

    Aquí está el código que realmente funciona:

    Salarios anuales =
    DÓNDE _lastChangetbl = FILTRO(
    TODOSELECCIONADO('tblSalaryModifications'),
    'tblSalaryModifications'[DtAsignado] = ..MAX('tblSalaryModifications'[DtAsignado] ))
    DÓNDE _sueldo = SUMX( _lastChangetbl, [Salario])
    DÓNDE _annualHourly = SUMX( _lastChangetbl, [Tarifa por hora] * [HoursPerWeek] ) * 52
    DEVOLUCIÓN
    SI(
    _sueldo > 0,
    _sueldo,
    _annualHourly
    )

2 Replies

  • @newhopepdx , Siga el código de último dado aquí

    Last Qty = Var _max = maxx(filter( ALLSELECTED('tblSalaryModifications'), 'tblSalaryModifications'[EMPID] = max('tblSalaryModifications'[EMPID] )), 'tblSalaryModifications'[DtAssigned])
    devolución
    CALCULATE(sumx('tblSalaryModifications',[HoursPerWeek] *[HourlyRate] * 52 ), filter( ('tblSalaryModifications'), 'tblSalaryModifications'[EMPID] = max('tblSalaryModifications'[EMPID]) && 'tblSalaryModifications'[Date] =_max))


    Sum Last Qty = sumx(VALUES('tblSalaryModifications'[EMPID]) , [Last Qty])

    Último
    https://amitchandak.medium.com/power-bi-get-the-last-latest-value-of-a-category-d0cf2fcf92d0

    https://amitchandak.medium.com/power-bi-get-the-sum-of-the-last-latest-value-of-a-category-f1c839ee884e

  • Su código me dio el empujón que necesitaba para encontrar la solución.

    Aquí está el código que realmente funciona:

    Salarios anuales =
    DÓNDE _lastChangetbl = FILTRO(
    TODOSELECCIONADO('tblSalaryModifications'),
    'tblSalaryModifications'[DtAsignado] = ..MAX('tblSalaryModifications'[DtAsignado] ))
    DÓNDE _sueldo = SUMX( _lastChangetbl, [Salario])
    DÓNDE _annualHourly = SUMX( _lastChangetbl, [Tarifa por hora] * [HoursPerWeek] ) * 52
    DEVOLUCIÓN
    SI(
    _sueldo > 0,
    _sueldo,
    _annualHourly
    )