title: Proc informat using cntlin option
body: <p>I am trying to make character informat from the range values given in a dataset.</p>
  
  <p>Dataset : Grade  </p>
  
  <pre><code>Start End Label Fmtname Type  
      0  20 A     $grad   I  
     21  40 B     $grad   I  
     41  60 C     $grad   I  
     61  80 D     $grad   I  
     81 100 E     $grad   I
  </code></pre>
  
  <p>And here is the code i wrote to create the informat</p>
  
  <pre><code>proc format cntlin = grade;  
  run;
  </code></pre>
  
  <p>And now the code to create a temp dataset using the new informat</p>
  
  <pre><code>data temp;  
      input grade : $grad. @@ ;
  datalines;  
  21 30 0 45 10
  ;
  </code></pre>
  
  <p>The output i wanted was a dataset Temp with values :  </p>
  
  <pre><code>Grade  
  A  
  B  
  A  
  ..
  </code></pre>
  
  <p>Whereas the dataset Temp has values :  </p>
  
  <pre><code>Grade  
     21  
     30  
      0  
     ...
  </code></pre>
  
  <p>SAS Log Entry :  </p>
  
  <pre><code>1146  proc format cntlin = grade;  
  NOTE: Informat $GRAD has been output.  
  1147  run;
  NOTE: PROCEDURE FORMAT used (Total process time):  
        real time           0.01 seconds  
        cpu time            0.01 seconds  
  
  NOTE: There were 5 observations read from the data set WORK.GRADE.
  
  
  1148  
  1149  
  1150  data temp;  
  1151      input grade : $grad. @@ ;  
  1152  
  1153  datalines;
  
  NOTE: SAS went to a new line when INPUT statement reached past the end of a
  line.  
  NOTE: The data set WORK.TEMP has 5 observations and 1 variables.  
  NOTE: DATA statement used (Total process time):  
        real time           0.03 seconds  
        cpu time            0.03 seconds
  </code></pre>
  
  <p>I am not able to understand why informat is not working. Can anyone please
  explain where i am making my mistake.</p>