Skip to main content
Announcements
Have questions about Qlik Connect? Join us live on April 10th, at 11 AM ET: SIGN UP NOW
cancel
Showing results for 
Search instead for 
Did you mean: 
ajsjoshua
Specialist
Specialist

Flags

Dear all,

I am calculating the patients who are visited again and so i had created flag in script and called in set analysis.

If(Peek(patientid)=patientid,1,0) as revisit

=count({<revisit={1},Year={'$(=max(Year))'}>} patientid)

But i am not getting the answer. In this case my answer should be 2.

 

patientidtypedaterevenuediscount
1Op2/3/20175000250
2Op5/3/201745000
3Op18/4/201760000
4Op23/4/20177000350
5Op1/5/201720000
1Op1/5/20173000150
4Op2/5/20175000250
1 Solution

Accepted Solutions
pradosh_thakur
Master II
Master II

Hi Joshua

i tweaked the script a bit. Expression is same as yours

PFA

ABC:

LOAD *

INLINE [

    patientid, type, date, revenue, discount

    1, Op, 2/3/2017, 5000, 250

    2, Op, 5/3/2017, 4500, 0

    3, Op, 18/4/2017, 6000, 0

    4, Op, 23/4/2017, 7000, 350

    5, Op, 1/5/2017, 2000, 0

    1, Op, 1/5/2017, 3000, 150

    4, Op, 2/5/2017, 5000, 250

];

NoConcatenate

Load

patientid,

type,

date,

revenue,

discount,

If(patientid=Previous(patientid),1,0) as revisit

RESIDENT ABC

ORDER BY patientid ASC;

drop table ABC;

Learning never stops.

View solution in original post

14 Replies
zhadrakas
Specialist II
Specialist II

can you share a sample qvw for this?

siddharth_s3
Partner - Creator II
Partner - Creator II

Did you sort your data by patient ID?

Peek just looks at the previous row.

Anil_Babu_Samineni

Perhaps this?

If(patientid=Previous(patientid),1,0) as revisit // But, In your data there is not common with current to previous

Please add me Anil_Babu_Samineni to interact faster when reply back. Speak low think High.

Before develop something, think If placed (The Right information | To the right people | At the Right time | In the Right place | With the Right context)
ajsjoshua
Specialist
Specialist
Author

Dear Tim,

PFA for qvw.

Regards,

Joshua.

ajsjoshua
Specialist
Specialist
Author

Dear Siddharth,

Yes based on Date .

zhadrakas
Specialist II
Specialist II

i think your data needed to be sorted by Patient iD like Siddarth said.

try this script to test that:

patient:
Load
patientid,
type,
Date,
If(patientid=Previous(patientid),1,0) as revisit,
revenue,
discount
;
Load
patientid,
type,
Date,
revenue,
discount
ORDER BY patientid ASC
;
LOAD patientid,
type,
date as Date,
revenue,
discount
FROM
E:\Qlik\healthcare\Sukra\samp.xlsx
(
ooxml, embedded labels, table is Sheet1);

ajsjoshua
Specialist
Specialist
Author

Dear Anil,

I am sorting the data based on Patient.

ajsjoshua
Specialist
Specialist
Author

Dear Tim,

By using this script and expression =count({<revisit={1},Year={'$(=max(Year))'}>} patientid)

I am getting 5 but i want 2.

siddharth_s3
Partner - Creator II
Partner - Creator II

Sort it by patient id and then date.

Unless there is a reason you are sorting it by date first.

You would have to try a different approach if you have to sort the data by date first.