‎2008 Jun 10 7:10 AM
hi experts
when I look into a standard program, I noticed one table declaration as following:
tables: *bkpf
so can anyone tell me the meaning of * ?
many thanks
‎2008 Jun 10 7:16 AM
Hi,
I think this statement would declare work area for BKPF table..
but i guess this is an obsolete declaration.
Regards,
Nikhil
‎2008 Jun 10 7:16 AM
Hi,
I think this statement would declare work area for BKPF table..
but i guess this is an obsolete declaration.
Regards,
Nikhil
‎2008 Jun 10 7:35 AM
hi Nikhil
thanks for your reply.
but I do not think is a work area declaration, as u mayknow, if we declare a table using tables: bkpf, system will automatically create a work area for this table with the same name...
anyway, thank you very much
‎2008 Jun 10 11:13 AM
>
> hi Nikhil
> thanks for your reply.
> but I do not think is a work area declaration, as u mayknow, if we declare a table using tables: bkpf, system will automatically create a work area for this table with the same name...
>
> anyway, thank you very much
You are thinking wrong; Nikhil was right!
TABLES: mytab, *mytabcreates two work areas with structure of "mytab", one called "mytab", the second called *mytab.
As others have pointed out, TABLES is not valid in ABAP Objects. And in the later releases of ABAP it is entirely unneeded.
matt
‎2008 Jun 10 9:59 AM
hi...
Syntax
TABLES *table_wa.
Effect
This statement declares an additional table work area *table_wa, whose data type, like that of normal TABLES statements of flat, structured data type table_wa, is copied from the ABAP Dictionary.
The additional table work area can be used like the normal table work area. This applies in particular to obsolete short forms of Open SQL statements.
Note
The statement TABLES cannot be used in classes. For declaring as many work areas as you want, you can use the addition TYPE to use the data types in the ABAP Dictionary.
Example
Declaration of a normal and additional table work area and its use in obsolete short forms of the SELECT statement.
TABLES: scarr, *scarr.
SELECT SINGLE *
FROM scarr
WHERE carrid = 'LH'.
SELECT SINGLE *
FROM *scarr
WHERE carrid = 'UA'.
regards,
Naresh.