Determining the Data Type
To determine the data type of a field, you use the TYPE parameter with the DESCRIBE FIELD statement as follows:
Syntax
DESCRIBE FIELD <f> TYPE <t> [COMPONENTS <n>].
The system reads the data type of the field <f> and writes the value into the field <t> .
Besides returning the predefined data types C, D, F, I, N, P, T, and X (see the table in Predefined Elementary Data Types), this statement also returns
While types s and b can come from references to ABAP Dictionary objects (see The TABLES Statement), the latter three types stem from user-defined types.
With the option COMPONENTS <n>, the statement returns
and writes the number of direct components of the structure to <n>.

TABLES SPFLI.
DATA: NUMTEXT(8) TYPE N, TYP.
DESCRIBE FIELD NUMTEXT TYPE TYP.
WRITE TYP.
DESCRIBE FIELD NUMTEXT TYPE TYP.
WRITE TYP.
This example produces the following output:
N T
In this example, the field TYP contains first the value 'N' and then the value 'T'.

TYPES: SURNAME(20) TYPE C,
STREET(30) TYPE C,
ZIP_CODE(10) TYPE N,
CITY(30) TYPE C,
PHONE(20) TYPE N,
DATE LIKE SY-DATUM.
TYPES: BEGIN OF ADDRESS,
NAME TYPE SURNAME,
CODE TYPE ZIP_CODE,
TOWN TYPE CITY,
STR TYPE STREET,
END OF ADDRESS.
TYPES: BEGIN OF PHONE_LIST,
ADR TYPE ADDRESS,
TEL TYPE PHONE,
END OF PHONE_LIST.
DATA PL TYPE PHONE-LIST.
DATA: TYP, N TYPE I.
DESCRIBE FIELD PL TYPE TYP COMPONENTS N.
WRITE: TYP, N.
This example is similar to the last example in the section
The TYPES Statement. The output is as follows:u 2
Here, the field TYP contains the value 'u' and N contains the value 2 because PL is a structure with two direct components (ADR and TEL) and without internal tables.