07-12-2007 8:48 AM
Hi,
I am trying to create the table with all the details of employee.
This is my program.
TYPES:
BEGIN OF TY_EMP,
EMPID(4) TYPE N,
ENAME(20) TYPE C,
DEPT(4) TYPE C,
SALARY TYPE I,
END OF TY_EMP.
DATA:
FS_EMP TYPE TY_EMP,
IT_EMP TYPE TABLE OF TY_EMP.
FS_EMP-EMPID = 1010.
FS_EMP-ENAME = 'XX'.
FS_EMP-DEPT = 'D100'.
FS_EMP-SALARY = 10000.
FS_EMP-EMPID = 1011.
FS_EMP-ENAME = 'YY'.
FS_EMP-DEPT = 'D100'.
FS_EMP-SALARY = 11000.
FS_EMP-EMPID = 1001.
FS_EMP-ENAME = 'ZZ'.
FS_EMP-DEPT = 'D200'.
FS_EMP-SALARY = 12000.
WRITE:/ FS_EMP-EMPID,FS_EMP-ENAME,FS_EMP-DEPT,FS_EMP-SALARY.
But now when iam executing it is showing only the last entry.
I want all of these to come in a table form with all the details.
07-12-2007 8:58 AM
Hi Ram,
Append all the values to your IT_EMP table.
And at last loop at internal table and display a report.
TYPES:
BEGIN OF TY_EMP,
EMPID(4) TYPE N,
ENAME(20) TYPE C,
DEPT(4) TYPE C,
SALARY TYPE I,
END OF TY_EMP.
DATA:
FS_EMP TYPE TY_EMP,
IT_EMP TYPE TABLE OF TY_EMP.
FS_EMP-EMPID = 1010.
FS_EMP-ENAME = 'XX'.
FS_EMP-DEPT = 'D100'.
FS_EMP-SALARY = 10000.
APPEND FS_EMP TO IT_EMP.
FS_EMP-EMPID = 1011.
FS_EMP-ENAME = 'YY'.
FS_EMP-DEPT = 'D100'.
FS_EMP-SALARY = 11000.
APPEND FS_EMP TO IT_EMP.
FS_EMP-EMPID = 1001.
FS_EMP-ENAME = 'ZZ'.
FS_EMP-DEPT = 'D200'.
FS_EMP-SALARY = 12000.
APPEND FS_EMP TO IT_EMP.
LOOP AT IT_EMP INTO FS_EMP.
WRITE:/ FS_EMP-EMPID,FS_EMP-ENAME,FS_EMP-DEPT,FS_EMP-SALARY.
ENDLOOP.
Thanks & Regards
Santhosh
07-12-2007 8:50 AM
07-12-2007 8:51 AM
Hi,
Sorrry for last post.
It will show last entry of header.
you have to append entries to table and by looping it ypu have to show.
Reward if useful!
07-12-2007 8:54 AM
Change your code as
DATA:
FS_EMP TYPE TY_EMP,
IT_EMP TYPE TABLE OF TY_EMP.
FS_EMP-EMPID = 1010.
FS_EMP-ENAME = 'XX'.
FS_EMP-DEPT = 'D100'.
FS_EMP-SALARY = 10000.
APPEND FS_EMP TO IT_EMP.
CLEAR FS_EMP.
FS_EMP-EMPID = 1011.
FS_EMP-ENAME = 'YY'.
FS_EMP-DEPT = 'D100'.
FS_EMP-SALARY = 11000.
APPEND FS_EMP TO IT_EMP.
CLEAR FS_EMP.
FS_EMP-EMPID = 1001.
FS_EMP-ENAME = 'ZZ'.
FS_EMP-DEPT = 'D200'.
FS_EMP-SALARY = 12000.
APPEND FS_EMP TO IT_EMP.
CLEAR FS_EMP.
LOOP AT IT_EMP INTO FS_EMP.
WRITE:/ FS_EMP-EMPID,FS_EMP-ENAME,FS_EMP-DEPT,FS_EMP-SALARY.
ENDLOOP.
Regards,
Atish
07-12-2007 9:04 AM
07-12-2007 9:29 AM
Hi Rams,
it is a good practise to clear work area each time you use APPEND.
Regards,
Atish
07-12-2007 8:54 AM
hi rams,
after assigning values to the fields of work area u should populate those records into internal table using APPEND statement as
DATA:
FS_EMP TYPE TY_EMP,
IT_EMP TYPE TABLE OF TY_EMP.
FS_EMP-EMPID = 1010.
FS_EMP-ENAME = 'XX'.
FS_EMP-DEPT = 'D100'.
APPEND TY_EMP FROM FS_EMP.
FS_EMP-SALARY = 10000.
FS_EMP-EMPID = 1011.
FS_EMP-ENAME = 'YY'.
FS_EMP-DEPT = 'D100'.
APPEND TY_EMP FROM FS_EMP.
FS_EMP-SALARY = 11000.
FS_EMP-EMPID = 1001.
FS_EMP-ENAME = 'ZZ'.
FS_EMP-DEPT = 'D200'.
APPEND TY_EMP FROM FS_EMP.
...................
and use LOOP satement to display all recors in internal table as
LOOP AT TY_EMP INTO FS_EMP.
WRITE:/10 FS_EMP-..........
..................
ENDLOOP.
if helpful reward some points.
with regards,
Suresh.A
07-12-2007 8:55 AM
FS_EMP-EMPID = 1010.
FS_EMP-ENAME = 'XX'.
FS_EMP-DEPT = 'D100'.
FS_EMP-SALARY = 10000.
<b>Append fs_emp to it_emp</b>
FS_EMP-EMPID = 1011.
FS_EMP-ENAME = 'YY'.
FS_EMP-DEPT = 'D100'.
FS_EMP-SALARY = 11000.
<b>Append fs_emp to it_emp</b>
FS_EMP-EMPID = 1001.
FS_EMP-ENAME = 'ZZ'.
FS_EMP-DEPT = 'D200'.
FS_EMP-SALARY = 12000.
<b>Append fs_emp to it_emp</b>
Regards,
Amit
Reward all helpful replies.
07-12-2007 8:58 AM
Hi Ram,
Append all the values to your IT_EMP table.
And at last loop at internal table and display a report.
TYPES:
BEGIN OF TY_EMP,
EMPID(4) TYPE N,
ENAME(20) TYPE C,
DEPT(4) TYPE C,
SALARY TYPE I,
END OF TY_EMP.
DATA:
FS_EMP TYPE TY_EMP,
IT_EMP TYPE TABLE OF TY_EMP.
FS_EMP-EMPID = 1010.
FS_EMP-ENAME = 'XX'.
FS_EMP-DEPT = 'D100'.
FS_EMP-SALARY = 10000.
APPEND FS_EMP TO IT_EMP.
FS_EMP-EMPID = 1011.
FS_EMP-ENAME = 'YY'.
FS_EMP-DEPT = 'D100'.
FS_EMP-SALARY = 11000.
APPEND FS_EMP TO IT_EMP.
FS_EMP-EMPID = 1001.
FS_EMP-ENAME = 'ZZ'.
FS_EMP-DEPT = 'D200'.
FS_EMP-SALARY = 12000.
APPEND FS_EMP TO IT_EMP.
LOOP AT IT_EMP INTO FS_EMP.
WRITE:/ FS_EMP-EMPID,FS_EMP-ENAME,FS_EMP-DEPT,FS_EMP-SALARY.
ENDLOOP.
Thanks & Regards
Santhosh
07-12-2007 8:59 AM
hi ram,
Your have forgetton to use Append statment.
just add append and use loop. simple.
TYPES:
BEGIN OF TY_EMP,
EMPID(4) TYPE N,
ENAME(20) TYPE C,
DEPT(4) TYPE C,
SALARY TYPE I,
END OF TY_EMP.
DATA:
FS_EMP TYPE TY_EMP,
IT_EMP TYPE TABLE OF TY_EMP.
FS_EMP-EMPID = 1010.
FS_EMP-ENAME = 'XX'.
FS_EMP-DEPT = 'D100'.
FS_EMP-SALARY = 10000.
Append internal table name.
FS_EMP-EMPID = 1011.
FS_EMP-ENAME = 'YY'.
FS_EMP-DEPT = 'D100'.
FS_EMP-SALARY = 11000.
Append internal table name.
FS_EMP-EMPID = 1001.
FS_EMP-ENAME = 'ZZ'.
FS_EMP-DEPT = 'D200'.
FS_EMP-SALARY = 12000.
loop at internal table name.
WRITE:/ FS_EMP-EMPID,FS_EMP-ENAME,FS_EMP-DEPT,FS_EMP-SALARY.
endloop.