The problem is the way you provide the Informats on the input statement.
When you use
Input id $10. ; SAS reads 10 characters. If the value runs out then in continues on the next line. With list type data you may need the : input modifier to accept shorter values.
Similar, when you have Input name 1-20 your are reading a NUMERIC value.
You would want Input name $ 1-20.
Please. For text data to read paste it into a text box opened on the forum with the </> icon. The main message windows will reformat pasted text and sometimes inserts characters that you don't see. So we can't actually run against your data.
If your data is that simple an always is 4 lines you may be able to use the input statement / instruction to read from the next line as below.
data emp;
informat name $20. id $10. color $50. title $50.;
input name / id / color / title;
datalines;
John
890,,,900
red
Contractor
Marie
900,,,888
purple
Manager
Giselle
100,,,000
orange
President
;
Or
data emp;
input name $ 1-20 / id :$10. / color :$50. / title :$50.;
datalines;
John
890,,,900
red
Contractor
Marie
900,,,888
purple
Manager
Giselle
100,,,000
orange
President
;
... View more