@u13161556U Actually you can make it 3-4 lines shorter and easier to read. Edited code is as below. DATA Intermediate;
SET HAVE;
IF Balance > 0 THEN
OUTPUT;
RUN;
DATA Want (DROP=StartBalance Balance);
SET Intermediate;
BY Account_Num;
RETAIN StartBalance 0;
IF FIRST.Account_Num THEN
StartBalance=Balance;
IF LAST.Account_Num THEN DO;
Difference=Balance - StartBalance;
OUTPUT;
END;
RUN;
... View more