Forum Discussion

shantu_pm5's avatar
shantu_pm5
New Member
2 years ago
Solved

Emp code wise completion Rate

Hi Team   I have below data set and i am looking for employee was training completion rate. Ex: Emp code 1 has completed 3 courses out of 6 which should be 50%.    Emp Code Training Module 1...
  • Anonymous's avatar
    Anonymous
    2 years ago

    Hi  shantu_pm5 ,

     

    Here are the steps you can follow:

    1. Create calculated table.

    Table 2 =
    UNION(
    SELECTCOLUMNS(
        'Table',"Emp Code",'Table'[Emp Code],"Training Module","Training Module 1","Value",[Training Module 1]),
    SELECTCOLUMNS(
        'Table',"Emp Code",'Table'[Emp Code],"Training Module","Training Module 2","Value",[Training Module 2]),
    SELECTCOLUMNS(
        'Table',"Emp Code",'Table'[Emp Code],"Training Module","Training Module 3","Value",[Training Module 3]),
    SELECTCOLUMNS(
        'Table',"Emp Code",'Table'[Emp Code],"Training Module","Training Module 4","Value",[Training Module 4]),
    SELECTCOLUMNS(
        'Table',"Emp Code",'Table'[Emp Code],"Training Module","Training Module 5","Value",[Training Module 5]),
    SELECTCOLUMNS(
        'Table',"Emp Code",'Table'[Emp Code],"Training Module","Training Module 6","Value",[Training Module 6]))

    2. Create measure.

    Test =
    var _countnotblank=
    COUNTX(
        FILTER(ALL('Table 2'),'Table 2'[Emp Code]=MAX('Table 2'[Emp Code])&&'Table 2'[Value]<>BLANK()),
        [Value])
    var _count=
    COUNTX(
        FILTER(ALL('Table 2'),'Table 2'[Emp Code]=MAX('Table 2'[Emp Code])),
        [Value])
    return
    IF(
        MAX('Table 2'[Value])=BLANK(),BLANK(),
    DIVIDE(
        _countnotblank,_count))

    3. Result:

     

     

    Best Regards,

    Liu Yang

    If this post helps, then please consider Accept it as the solution to help the other members find it more quickly