As I improve my programming but still leverage the existing program code from the prgms I received, I attached a new var(s) to similar code, but it is not tight enough, therefore I need to add another condition, which I think should be something along the lines of first.obs. Here is a bit of the code. Please direct me if you know of a keyword for a tutorial. Thank you.[as i learn and improve, I am shameless in sharing my inefficient code].
So I want the first obs to count using pers07 for those who received earned income in this unit. 
| do i=1 to 16; |  | 
 | if first.affil(i)=1 then do; | 
 |  | if 5<erned(i)<=3000 then do;/* EARNED INCOME */ | 
 |  | pers07+wght; | 
 | end; | 
 |  | end; | 
end;