As others have said, the SAS data steps and PROCs examine all the observations - i.e. they can "loop through" claim dates by member. You could code a couple steps to sort/filter and extract the minimum date for each member, while keeping all the other variables to identify the observation of interest.
But this can also be done by the highly useful PROC SUMMARY (alias PROC MEANS) procedure. Using a sort of SAS pseudo-code applied to your dataset (call it dataset HAVE), it would be something like:
proc summary data=have nway;
where criterion_variable in (comma-separated-list-of-values);
class member ;
var claims_date;
output out=want (drop=_type_ _freq_)
min=min_claims_date
idgroup (last out (othervar1 othervar2 othervar3)=) ;
run;
The WHERE statement applies a filter to examine only each case that "has a specific criteria in a list".
The CLASS statement tells PROC SUMMARY to apply its logic to each member (and the "nway" parameter tells the proc not to also analyze the entire dataset as a single group).
The OUTPUT statement describes what you want your output dataset (named WANT) to contain.
PROC SUMMARY can be a deep study, but is worth it.
... View more