Forum Discussion

HemanthV's avatar
HemanthV
Helper II
4 years ago
Solved

Using "And" condition for same column

Hi Guys,   Below is my data ID     Name Plant     Status 1 A abc Approved 1 A def PendingReview 1 A ghi Approve - ACD 1 A jkl Draft 1 A adf Rejected 1 A alk Re...
  • amitchandak's avatar
    4 years ago

    HemanthV , Try a new column like example 

     

    New column =

    var _1 = countx(filter(Table, [ID] = earlier([ID]) && [Status]= "NULL"),[Status])

    var _2 = countx(filter(Table, [ID] = earlier([ID]) && [Status]= "Draft"),[Status])

    var _3 = countx(filter(Table, [ID] = earlier([ID]) && [Status] in {"Approved", "Approve - ACD/Rejected"}),[Status])

    var _4 = countx(filter(Table, [ID] = earlier([ID]) && [Status] in {"Pending Review"}),[Status])

    return

    Switch ( True() ,

    not(isblank(_1)) && not(isblank(_2)) , "Yet To Start",

    not(isblank(_3)) , "Completed" ,

    not(isblank(_4)) ,"In Progress"

    )

  • ryan_mayu's avatar
    4 years ago

    HemanthV 

    why ID 1 is in progress, I didn't see NULL of ID 1.

     

    maybe you can try this

    Column = 
    VAR _null=maxx(FILTER(Table1,Table1[ID]=EARLIER(Table1[ID])&&Table1[Status]="NULL"),Table1[Status])
    var _draft=maxx(FILTER(Table1,Table1[ID]=EARLIER(Table1[ID])&&Table1[Status]="Draft"),Table1[Status])
    var _approve=maxx(FILTER(Table1,Table1[ID]=EARLIER(Table1[ID])&&Table1[Status]="Approved"),Table1[Status])
    var _acd=maxx(FILTER(Table1,Table1[ID]=EARLIER(Table1[ID])&&Table1[Status]="Approve - ACD"),Table1[Status])
    var _pending=maxx(FILTER(Table1,Table1[ID]=EARLIER(Table1[ID])&&Table1[Status]="PendingReview"),Table1[Status])
    return if(_approve<>""&&_pending<>""&&_null<>""&&_draft<>"","In progess",if(_null<>""||_draft<>"","Yet to start",if(_approve<>""||_acd<>"","Completed",if(_pending<>"","In progress"))))