SAS informats have the
following form:
indicates a character
informat; its absence indicates a numeric informat.
names the informat.
The informat is a SAS informat or a user-defined informat that was
previously defined with the INVALUE statement in PROC FORMAT.
FORMAT Procedure in Base SAS Procedures Guide.
specifies the informat
width, which for most informats is the number of columns in the input
data.
specifies an optional
decimal scaling factor in the numeric informats. SAS divides the input
data by 10 to the power of d.
Note: Even though SAS can read
up to 32 digits when you specify some numeric informats, numbers with
more than 15 significant digits might lose precision due to the limitations
of the eight-byte floating-point representation used by most computers.
Informats always contain
a period (.) as a part of the name. If you omit the
w and
the
d values from the informat,
SAS uses default values. If the data contain decimal points, SAS ignores
the
d value and reads the number
of decimal places that are actually in the input data.
If the informat width
is too narrow to read all the columns in the input data, you might
get unexpected results. The problem frequently occurs with the date
and time informats. You must adjust the width of the informat to include
blanks or special characters between the day, month, year, or time.
For more information
about date and time values, see Dates, Times, and Intervals in SAS Language Reference: Concepts.
When a problem occurs
with an informat, SAS writes a note to the SAS log and assigns a missing
value to the variable. Problems occur if you use an incompatible informat,
such as a numeric informat to read character data, or if you specify
the width of a date and time informat that causes SAS to read a special
character in the last column.