You might want to explain the layout of your CARDS (instream) data, such as how are the individual records organized and how you expect the output to appear, both in detail and after any data manipulation to meet your objectives.
Suggest you reply to your post and paste a sample of the WORK.A file and also what you expect *AFTER* any additional SAS processing (possibly explaining your DATA step flow to help you with developing your SAS program).
What happens to 1944 input data field/value? Also, suggest you label your output columns to make no assumptions with your processing.
Using a DATA step, you will likely need to input a field at a time and assign either a SAS CHARACTER or NUMERIC variable, possibly in a continuous DO/END loop to avoid needing to use a RETAIN statement. You can use PUTLOG _ALL_ statements in your code to interrogate what SAS processing is doing as you develop your program. And since you have multiple measurement values on one record, you will do an explicit OUTPUT statement.
Then look at PROC MEANS or SUMMARY to generate an output for each unique CODE variable and a non-missing MIN value.
No question that this can be done with a DATA step approach alone, but it may also be more straightforward to rely on a suitable SAS PROC, like MEANS.
Suggested Google advanced search argument, this topic/post: