cancel
Showing results for 
Search instead for 
Did you mean: 

REPORTS

Former Member
0 Kudos

CAN ANY ONE SEND ALL THE MATERIALS OF REPORTS

Accepted Solutions (0)

Answers (3)

Answers (3)

Former Member
0 Kudos

REPORT ZSTUDY no standard page heading line-size 1023 line-count 1.

include <icon>.

data icon_name(30).

icon_name = ICON_PAGE_LEFT.

WRITE: / icon_name AS ICON, "output as icon

'Text line'.

*at selection-screen

*&----


**& Report ZSTUDY *

**& *

*&----


**& *

**& *

*&----


*REPORT ZSTUDY no standard page heading line-size 1023 line-count 1.

*

  • WRITE: / TEXT-001,

  • / 'Line 2 : '(001),

  • / 'Line 3 : '(001).

    • WRITE TEXT-002.

**This is SAP prog

**ABAB programming

    • WRITE 'Hello'(UVW).

    • WRITE / TEXT-UVW.

**REPORT ZSTUDY no standard page heading line-size 66.

    • Part 1

***TYPES : BEGIN OF GTY_PRTNR,

      • PARVW LIKE KNVP-PARVW,

      • VTEXT LIKE TPART-VTEXT,

      • END OF GTY_PRTNR.

***

***DATA : GT_PRTNR TYPE TABLE OF GTY_PRTNR.

***

***SELECT PARVW VTEXT FROM TPART INTO

      • CORRESPONDING FIELDS OF TABLE GT_PRTNR

      • WHERE PARVW = 'N1' OR PARVW = 'N2'

      • OR PARVW = 'N3' OR PARVW = 'N4' .

***

***WRITE ''.

    • Part 2

*****TYPES: BEGIN OF X_CUSTINFO,

          • KUNNR LIKE KNA1-KUNNR, " customer number

          • ADDRNUMBER LIKE ADRC-ADDRNUMBER," address number

          • SORT2 LIKE ADRC-SORT2, "identifactionno

          • END OF X_CUSTINFO.

*****

*****data I_CUSTINFO TYPE TABLE OF X_CUSTINFO.

*****

*****SELECT AADDRNUMBER ASORT2

          • B~KUNNR

          • FROM ADRC AS A

          • INNER JOIN KNA1 AS B

          • ON ( AADDRNUMBER = BADRNR )

          • INTO CORRESPONDING FIELDS OF TABLE I_CUSTINFO.

          • SORT I_CUSTINFO BY KUNNR.

*****

*****WRITE ''.

*

**tables: zdetails .

**data : gt_stud like standard table of zdetails,

    • gw_stud like zdetails,

    • v_studno." like sy-index.

**do 1023 times.

    • v_studno = sy-index mod 10.

    • if sy-index = 1023.

    • write 'E' no-gap.

    • elseif sy-index ge 1000.

    • write '$' no-gap.

    • elseif v_studno <> 0.

    • write v_studno no-gap.

    • else.

    • write '!' no-gap.

    • endif.

    • if v_studno eq 0.

    • write '1' no-gap.

    • else.

    • write '.' no-gap.

    • endif.

**enddo.

    • v_studno like zcourse-zstudno.

****select * from zdetails into table gt_stud.

****sort gt_stud ascending by id.

****loop at GT_stud into gw_stud.

        • write / gw_stud-id.

****endloop.

****loop at gt_stud into gw_stud.

****CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT'

        • EXPORTING

        • INPUT = gw_stud-id

        • IMPORTING

        • OUTPUT = gw_stud-id

        • .

        • modify gt_stud from gw_stud.

****endloop.

****skip 3.

****loop at GT_stud into gw_stud.

        • write / gw_stud-id.

****endloop.

**select max( id ) into v_studno from zdetails.

**write v_studno.

**update zdetails set id = '10' where id = '4'.

*

**parameters: p_age as checkbox user-command a1,

    • p_loc as checkbox user-command a2.

**data i type i.

**select-options: s_age for i modif id 1 .

**select-options: s_age1 for i.

**at selection-screen output.

    • if p_age = ''.

    • loop at screen.

    • if ( screen-group1 = 1 and screen-group3 = 'LOW' ) or

    • ( screen-group1 = 1 and screen-group3 = 'HGH' ).

    • screen-input = '0'.

    • modify screen.

    • endif.

    • endloop.

      • message s000(zbdcmsg) with s_age-low.

    • elseif p_age = 'X'.

    • loop at screen.

    • if ( screen-group1 = 1 and screen-group3 = 'LOW' ) or

    • ( screen-group1 = 1 and screen-group3 = 'HGH' ).

    • screen-input = '1'.

    • modify screen.

    • endif.

    • endloop.

      • message s000(zbdcmsg) with s_age-low.

    • endif.

**at user-command.

    • case sy-ucomm.

    • when 'A1'.

    • message s000(zbdcmsg). " with s_age-low.

    • when 'A2'.

    • message s001(zbdcmsg).

    • endcase.

**at selection-screen on p_age.

    • if p_age = ''.

    • loop at screen.

    • if screen-group1 = 1.

    • screen-input = '0'.

    • modify screen.

    • endif.

    • endloop.

    • elseif p_age = 'X'.

    • loop at screen.

    • if screen-group1 = 1.

    • screen-input = '1'.

    • modify screen.

    • endif.

    • endloop.

    • endif.

    • if p_age = 'X'.

    • loop at screen.

    • if screen-group1 = '1'.

    • screen-input = '0'.

    • modify screen.

    • endif.

    • endloop.

    • endif.

**if p_age = 'X'.

    • message i000(zbdcmsg).

**endif.

**message-id zmessage.

**

**DATA: g_DATE TYPE DATS,

    • g_YEAR TYPE I,

    • g_MONTH TYPE I,

    • g_DAY TYPE I,

    • g_DIG TYPE N,

    • g_SUM TYPE I,

    • g_LOOP TYPE I,

    • g_DUMMY(2) TYPE c.

**

**SELECT-OPTIONS s_DATE FOR g_DATE .

**

**WRITE: (12) 'YEAR' RIGHT-JUSTIFIED, (8) 'MONTH'

    • RIGHT-JUSTIFIED, (8) 'DAY' RIGHT-JUSTIFIED.

**

**g_YEAR = s_DATE-HIGH+0(4).

**g_MONTH = s_DATE-HIGH+4(2).

**g_DAY = s_DATE-HIGH+6(2).

**WRITE: / .

**

**WRITE: (4) 'HIGH', (8) g_YEAR, (8) g_MONTH, (8) g_DAY .

**

**g_YEAR = s_DATE-LOW+0(4).

**g_MONTH = s_DATE-LOW+4(2).

**g_DAY = s_DATE-LOW+6(2).

**WRITE: / .

**

**WRITE: (4) 'LOW', (8) g_YEAR, (8) g_MONTH, (8) g_DAY .

**WRITE / .

**

**DO.

**

    • g_DUMMY = g_DAY.

    • WHILE g_DUMMY NE 0.

    • g_DIG = g_DUMMY MOD 10 .

    • g_DUMMY = TRUNC( g_DUMMY / 10 ).

    • g_SUM = g_SUM + g_DIG.

    • ENDWHILE .

    • g_DATE = s_DATE-LOW + g_SUM.

    • g_DIG = 0.

    • WRITE / g_DATE .

    • g_DAY = g_DATE+6(2).

    • IF g_DATE EQ s_DATE-HIGH.

    • WRITE / .

    • WRITE / 'Its there'.

    • EXIT.

    • ELSEIF g_DATE GT s_DATE-HIGH.

    • WRITE / .

    • WRITE / 'Its not there'.

    • EXIT.

    • ENDIF.

**ENDDO.

**

**

***CALL FUNCTION 'GET_COMMENT'

      • EXPORTING

      • REF = 'c1'

      • IM_VALUE = 'c1 '

      • IMPORTING

        • TECH_NAME =

      • DESCRIPTION = a

        • EXCEPTIONS

        • CANCELLED = 1

        • OTHERS = 2

      • .6

***IF SY-SUBRC <> 0.

        • MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO

        • WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.

***ENDIF.

**

***write a.

**

***TABLES ZCOURSE .

***

***DATA: gt_ITAB LIKE STANDARD TABLE OF ZCOURSE WITH HEADER LINE ,

      • g_TEMP LIKE ZCOURSE-ZSTUDNO.

***

***PERFORM FETCH TABLES gt_ITAB.

***PERFORM DISPLAY TABLES gt_ITAB.

***

      • SKIP 4.

      • LOOP AT gt_ITAB .

      • WRITE / gt_ITAB-ZSTUDNO .

      • ENDLOOP.

***

***FORM FETCH TABLES gt_ITAB1 STRUCTURE ZCOURSE.

      • SELECT * FROM ZCOURSE INTO TABLE gt_ITAB1.

***ENDFORM.

***

***FORM DISPLAY TABLES gt_ITAB1 STRUCTURE ZCOURSE .

      • LOOP AT gt_ITAB1 .

      • g_TEMP = gt_ITAB1-ZSTUDNO.

      • WRITE: / g_TEMP .

      • ENDLOOP.

      • DELETE gt_ITAB1 WHERE ZSTUDNO BETWEEN 101 AND 110 .

***ENDFORM.

**

***data c(10) type c value 'RAJA'.

****data d type dats.

****parameter date type dats.

****d = date + 10.

****write d.

***

***write c.

****At line-selection.

**SUBMIT ZSyntax and return

    • VIA job 'ACCESS' NUMBER 19440601.

      • WITH date = '2006/10/20'.

      • WITH c = 'fdsafasd'.

**if sy-subrc = 0.

    • write 'SUCCESS'.

**endif.

**

      • TABLES: ZSTUD.

***

***SELECT-OPTIONS A FOR ZSTUD-ZIDNAME.

***

**IF A-LOW NS ''.

      • WRITE / '*'.

***ENDIF.

**

      • data i type i.

***do.

      • write / i.

      • i = i + 1.

***enddo.

***while a < 10.

      • if a < 5.

      • write / a.

      • else.

      • continue.

      • endif.

      • a = a + 1.

***endwhile.

***tables: zstud.

***

***select-options name for zstud-zzname.

***

***write name-high+0(1).

***data: l type string,

      • p(9) value 'NAGARAJAN',

      • l1 type i value 9.

***l1 = strlen( p ).

***L = P + 3(L1).

***write / l.

**

**

***TABLES: ZEMPLOY.

***

***DATA ITAB LIKE STANDARD TABLE OF ZEMPLOY WITH HEADER LINE.

***

***SELECT * FROM ZEMPLOY INTO TABLE ITAB WHERE ZEID NOT BETWEEN 102 AND 110.

***

***LOOP AT ITAB.

      • WRITE / ITAB-ZEID.

***ENDLOOP.

**

***SAPR3://WebRepository/3220039565/ZRBE_LOGO?Version=00001

**

**

**

***SET EXTENDED CHECK OFF.

**

***WRITE / 'Anweisung 1'.

***

**

      • Syntax error in Unicode Systems:

**

      • WRITE / 'Anweisung 2'.

      • PERFORM asd.

      • WRITE / 'Anweisung 3'.

***

***

***FORM asd.

      • WRITE / 'Unterprogramm'.

***ENDFORM.

**

***ERSDA -> DATE FIELD

***MATNR -> MATERIAL NUMBER

**

***TABLES: ZCOURSE.

***TABLES: ZACC.

***

***DATA ITAB like STANDARD TABLE OF Zacc with header line.

***DATA ITAB2 like STANDARD TABLE OF Zcourse.

***DATA ITAB3 like STANDARD TABLE OF Zcourse.

***DATA WA LIKE zcourse.

***DATA WA1 LIKE Zcourse.

***

***SELECT * INTO CORRESPONDING FIELDS OF TABLE ITAB FROM Zacc.

***SELECT * FROM Zcourse INTO WA FOR ALL ENTRIES IN ITAB WHERE

***ZSTUDNO ne itab-ZSTUDNO.

***APPEND WA TO ITAB3.

***clear wa.

***ENDSELECT.

***

***sort itab3 by zstudno.

***

***LOOP AT ITAB3 INTO WA.

      • WRITE /(6) WA-ZSTUDNO RIGHT-JUSTIFIED.

***ENDLOOP.

**

***TABLES: zstud,

      • zmarks .

***DATA ITAB LIKE STANDARD TABLE OF zstud WITH HEADER LINE .

***SELECT-OPTIONS: DATE FOR zmarks-zrollno3." DEFAULT '20050101' TO '20050701' .

***SELECT-OPTIONS: time FOR zstud-ztime." DEFAULT '172500' TO '102500' .

***SELECT * FROM zstud INTO TABLE ITAB WHERE zdate IN DATE and ztime in time.

***

***LOOP AT ITAB.

      • WRITE / ITAB-zzname.

***ENDLOOP.

**

**

***DATA ITAB LIKE STANDARD TABLE OF ZSTUD WITH HEADER LINE .

***DATA: N TYPE I VALUE 10,

      • S TYPE I VALUE 1.

***

***SELECT * FROM ZSTUD INTO TABLE ITAB.

***

***DELETE ITAB WHERE ZIDNAME > 5 .

***

***SELECT * FROM ZSTUD APPENDING TABLE ITAB WHERE ZIDNAME > 5.

**

**

***DO N TIMES.

      • ITAB-ZIDNAME = S.

      • CONDENSE ITAB-ZIDNAME .

      • CONCATENATE 'A' ITAB-ZIDNAME INTO ITAB-ZZNAME .

      • APPEND ITAB.

      • S = S + 1.

***ENDDO.

***

***MODIFY ZSTUD FROM TABLE ITAB.

**

***LOOP AT ITAB.

      • WRITE: / ITAB-ZIDNAME, ITAB-ZZNAME .

***ENDLOOP.

**

***DATA: ZIDNAME LIKE ZSTUD-ZIDNAME,

      • ZZNAME LIKE ZSTUD-ZZNAME,

      • MANDT LIKE ZSTUD-MANDT.

***

***SELECT * FROM ZSTUD INTO (MANDT, ZIDNAME, ZZNAME) . " A B.

***

***WRITE: / A , B .

**

***tables: zcourse.

***

***data: begin of itab occurs 0,

      • z1(3),

      • z2(15),

      • end of itab.

***

      • data itab1 like standard table of itab with header line.

***

      • select (itab) from zcourse into table itab1.

**

      • loop at itab1.

      • itab1-z1.

      • endloop.

**

***

****CALL FUNCTION 'RS_TABLE_LIST_CREATE'

        • EXPORTING

        • TABLE_NAME =

          • ACTION = 'ANZE'

          • WITHOUT_SUBMIT = ' '

          • GENERATION_FORCED =

          • NEW_SEL =

          • NO_STRUCTURE_CHECK = ' '

          • DATA_EXIT = ' '

          • IMPORTING

          • PROGNAME =

          • TABLES

          • SELTAB =

          • EXCEPTIONS

          • TABLE_IS_STRUCTURE = 1

          • TABLE_NOT_EXISTS = 2

          • DB_NOT_EXISTS = 3

          • NO_PERMISSION = 4

          • NO_CHANGE_ALLOWED = 5

          • OTHERS = 6

        • .

****IF SY-SUBRC <> 0.

          • MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO

          • WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.

****ENDIF.

***

***

***

***"

***TABLES: ZSTUD.

****select-options Z for ZSTUD-ZIDNAME.

***parameter z like zstud-zidname.

***

***"

****DATA A TYPE I.

****DO.

        • WRITE A.

        • IF A > 5.

        • EXIT.

        • ENDIF.

        • A = A + 1.

****ENDDO..

***DATA A TYPE I.

***WHILE ( A < 7 ).

      • WRITE A.

      • A = A + 1.

***ENDWHILE.

***

***"

****DATA N TYPE I VALUE 304.

****PARAMETER N TYPE I DEFAULT 25.

****DATA S TYPE I.

****DATA A TYPE I.

****S = N / 10.

****A = N MOD 10.

****IF A <> 0 AND A LT 5 .

        • S = S + 1.

****ENDIF.

****WRITE S.

***

***"

****tables zcourse.

****data lines type i.

****data itab like standard table of zcourse.

****select * from zcourse into table itab.

        • DESCRIBE TABLE itab LINES lines.

        • write / lines.

***"

****DATA x type i.

***select count() into x from zcourse where ztype = 'WE'.

****write: / 'No of records = ', x.

***

***" 1 the various formatting of WRITE statement

****write text-002. " the text symbol

****write ' This is SAP '. " a simple display

****AT LINE-SELECTION.

****WRITE SY-LINNO.

***" 2 display with indent ( overwrite or space and 'at' is optional )

****write: 'This', " starts printing at ZERO position

        • 6 'is', " starts printing at SIXTH position

        • 9 'SAP.'. " starts printing at NINETH position

***" 3 display with fixed length ( apart from space between each words

***" and 'at' is optional)

****write: (4) 'This', " lenth of 4

        • (2) 'is', " lenth of 2

        • (4) 'SAP.'. " lenth of 3

***" 4 others

****data name(15) value 'Rajan'.

****write name right-justified.

****write / name left-justified.

****write / name CENTERED.

***" 5 the date format

****data dob type d value '20060417'.

****write dob.

****write dob yymmdd.

***" 6 the currency format

****data b type i.

****b = 120000.

****write: b currency 'USD'. "displays 1,200.00

***" 7 the coloring of display

****data:

****write 'ABAP programming' color 1. " violet

****write / 'ABAP programming' color 2. " light blue

****write / 'ABAP programming' color 3. " yellow

****write / 'ABAP programming' color 4. " between 1 and 2

****write / 'ABAP programming' color 5. " green

****write / 'ABAP programming' color 6. " red

****write / 'ABAP programming' color 7. " brown

***" 8 removing of sign

****data b type i.

****b = -2.

****write b.

****write b no-sign.

***" 9 the DO....TIMES.....ENDDO statement

****do 4 times.

        • write / 'HAI'.

****enddo.

***" 10 the WHILE ....... ENDWHILE

****data a type i. " the declaration of a

        • a = 1. " the initialization of a

        • while ( a < 10 ). " while starts with the condition

        • write / a. " displays i

        • a = a + 1. " increments the i

        • endwhile. " while ends

***" 11 the DO................ENDDO

****data a type i. " the declaration of a

        • a = 1. " the initialization of a

        • do. " do starts with the condition

        • write / a. " displays a

        • a = a + 1. " increments the a

        • if a > 3. "

        • exit.

        • endif.

        • enddo. " do ends

***" 12 the structure

****data: begin of aaa occurs 0, " structure dec starts

        • name(9) type c, " field decs

        • charge type i,

        • end of aaa.

        • aaa-name = 'Nagarajan'. " field defs

        • aaa-charge = 1000.

        • append aaa. " adding to the structure

        • aaa-name = 'Ramarajan'.

        • aaa-charge = 1001.

        • append aaa.

        • loop at aaa. " to access each records

        • WRITE: / aaa-name, aaa-charge.

        • ENDLOOP.

***" 13 the retrieval and display of a single field

****tables zcourse. " table dec

****data: itab like standard table of zcourse.

****data: wa like zcourse.

****select * from zcourse into table itab. " selection on the table

        • loop at itab into wa.

        • write: /(3) wa-ZSTUDNO,

        • (15) wa-ZSTUDNAME,

        • (11) wa-ZCOURSE. " display of selected fields or records

        • endloop.

***" 14 the whole table

****tables zcourse.

****select * from zcourse.

        • write: /(3) zcourse-zstudno, " indented with length of 3

        • (15) zcourse-zstudname, " indented with length of 15

        • (11) zcourse-zcourse, "but it start display after 1 st field...

        • (2) zcourse-ztype,

        • (1) zcourse-zstatus.

****endselect.

***" 15 the internal table with header line

****tables: zcourse.

****data: gt1 like zcourse occurs 10 with header line. " creation of internal table with HL

****

****select * from zcourse into table gt1. " tranfer and process

        • loop at gt1.

        • write: / gt1-ZSTUDNO.

        • endloop.

***" 16 the do...times...enddo statement

****do 3 times.

        • perform sy-index of s1 s2 s3.

****enddo.

        • form s1.

        • write: / 'Hi from s1'.

        • endform.

        • form s2.

        • write: / 'Hi from s2'.

        • endform.

        • form s3.

        • write: / 'hi from s3'.

        • endform.

***" 18 the internal table without header line

****tables: zcourse.

****data: gt1 like standard table of zcourse. " creation of internal table without HL

****data: gw1 like zcourse.

****select * from zcourse into table gt1. " tranfer and process

        • loop at gt1 into gw1.

        • write: / gw1-ZSTUDNO.

        • endloop.

***" 19 the elementry search help

****parameter StudNo type zcourse-zstudno.

***" the keyword 'types'

****types a(8).

        • data z type a.

        • z = '20060428'.

        • write z.

***" 21 the possible typecastings

****data: name(9), name1(9) type c.

****data dob,dob1 type d.

****data avg,avg1 type f.

****data rem,rem1 type i.

****data quo,quo1 type n.

****data eid,eid1 type p.

****data key(2) type x.

****key1 type x.

****data schedule,schedule1 type t.

****write: / name left-justified,

        • / dob left-justified,

        • / avg left-justified,

        • / rem left-justified,

        • / quo left-justified,

        • / eid left-justified,

        • / key left-justified,

        • / schedule left-justified.

****name = 'Nagarajan'.

****dob = '19830107'.

****avg = '7.2'.

****rem = 1000.

****quo = '2'.

****eid = 12345678.

****key = 'f806'.

****write key.

****schedule = '121212'.

****write: / name left-justified,

        • / dob left-justified,

        • / avg left-justified,

        • / rem left-justified,

        • / quo left-justified,

        • / eid left-justified,

        • / key left-justified,

        • / schedule left-justified.

***" 22 select-options statement

****tables: zcourse.

****select-options: k for zcourse-zstudno.

****data: gt1 like standard table of zcourse. " creation of internal table without HL

****data: gw1 like zcourse.

****select * from zcourse into table gt1 where zstudno in k. " tranfer and process

        • loop at gt1 into gw1.

        • write: / gw1-ZCOURSE.

        • endloop.

***" 23 the use of 'VALUE' justassigns a value

****DATA s(2) TYPE X VALUE 'F089'.

****write s.

***" 24 the use of sysvar

****WRITE: / 'Current date', SY-DATUM,

        • / 'Current table index', SY-TABIX,

        • / 'Loop counter', SY-INDEX,

        • / 'System return code', SY-SUBRC.

***" 25 diff b/w move and chain of assignment

****DATA: SHORT_NAME(8),

        • LONG_NAME(16).

****MOVE 'Washington' TO: SHORT_NAME, LONG_NAME.

****WRITE: / SHORT_NAME, LONG_NAME.

        • Take care of intermediate steps

****LONG_NAME = SHORT_NAME = 'Washington'.

****WRITE: / SHORT_NAME, LONG_NAME.

***" 26 form with parameter passing

****DATA: A1 TYPE I value 100,

        • A2 TYPE I value 200.

****PERFORM CALC USING A1

        • CHANGING A2.

****WRITE: / 'A2 = ', A2.

****write: / 'A1 = ', A1.

****FORM CALC USING F1 LIKE A1

        • CHANGING F2 LIKE A2.

        • F2 = F1 + F2.

****ENDFORM.

***" 27. the apperance of new screen on double click a line

        • WRITE 'CLICK ME'.

****AT LINE-SELECTION.

        • WRITE 'This is the new screen'.

***" 28 char typecasting

****data: co(10), a(10) type c.

****co = ' a b c '.

****a = ' d e f '.

****write: / co,

        • / a.

        • do 5 times.

        • write / .

        • enddo.

****co = a.

****write / co.

***" 29 typecast of n and i ie n to i

****DATA: NUMBER_1(4) VALUE '1771',

        • NUMBER_2(3),

        • RESULT TYPE I.

****NUMBER_2 = '005'.

****RESULT = NUMBER_1 + NUMBER_2.

****WRITE / RESULT.

****NUMBER_2 = ' 5'.

****RESULT = NUMBER_1 + NUMBER_2.

****WRITE / RESULT.

***" 30 typecast of n and i ie i to n

****DATA: NUMBER_1(4) VALUE '1771',

        • NUMBER_2(3),

        • RESULT TYPE I.

****result = 1000.

****NUMBER_1 = result.

****RESULT = 200.

****NUMBER_2 = result.

****WRITE: / number_1,

        • / number_2.

***" 31 date typecasting

****data dob type d value '19830107'.

****data doj type d value '20060419'.

****write: / dob,

        • / doj.

****dob = doj.

****write / dob.

***" 32 n to t

****data a(6) type n value '102300'.

****data b type t value '114010'.

****write: / a,

        • / b.

****a = b.

****write: / ' a = ', a.

****b = a.

****write: / ' b = ', b.

***" 33 Using static variables

****PERFORM COUNT.

****PERFORM COUNT.

****FORM COUNT.

        • STATICS CALLS TYPE I.

        • CALLS = CALLS + 1.

        • WRITE CALLS.

****ENDFORM.

***" 34 the insert statement

****data: begin of stud occurs 0,

        • no type i,

        • name(10) type c,

****end of stud.

        • stud-no = 101.

        • stud-name = 'Nagarajan'.

        • append stud.

        • stud-no = 102.

        • stud-name = 'Ssdeesh'.

        • append stud.

        • stud-no = 103.

        • stud-name = 'Anandth'.

        • append stud.

        • stud-no = 104.

        • stud-name = 'Karthi'.

        • append stud.

        • loop at stud.

        • write: / stud-no,stud-name.

        • endloop.

        • stud-no = 105.

          • insert stud index 5.

          • stud-name = 'Gokul'.

        • insert stud index 5.

        • do 5 times.

        • write /.

        • enddo.

        • loop at stud.

        • write: / stud-no,stud-name.

        • endloop.

***

***

****report zivt_test .

**************************************************************

**************************************************************

****tables : mara,makt.

****data : begin of itab_mara occurs 0,

        • matnr like mara-matnr,

        • maktx like makt-maktx,

        • chkflg(1) type c,

        • end of itab_mara.

*****data: v_cntlin type i,

          • v_matnr like mara-matnr,

          • v_chkflg type char1.

****type-pools slis.

          • Field Catalog table

****data : it_fieldcat type slis_t_fieldcat_alv.

****

****************************************************************************

*****start of selection

****************************************************************************

****start-of-selection.

*****Get the Requried Data

        • perform get_data.

        • perform get_fieldcatlog.

        • perform get_layout.

        • perform display_list.

****&----


*****& Form get_data

****&----


          • text

****----


****form get_data.

        • clear : itab_mara,mara,makt.

        • select amatnr bmaktx from mara as a inner join makt as b

        • on amatnr = bmatnr into corresponding

        • fields of table itab_mara up to 100 rows

        • order by a~matnr.

****endform. " get_data

****&----


*****& Form get_FieldCatlog

****&----


****form get_fieldcatlog.

        • data: v_fieldcat type slis_fieldcat_alv.

        • data: pos type i value 1.

*****MACRO for generating the field catalog

        • define field_cat.

        • clear v_fieldcat.

        • v_fieldcat-col_pos = pos.

        • v_fieldcat-fieldname = &1.

        • v_fieldcat-ref_fieldname = &2.

        • v_fieldcat-ref_tabname = &3.

        • v_fieldcat-key = &4.

        • append v_fieldcat to it_fieldcat.

        • pos = pos + 1.

        • end-of-definition.

*****Macro

        • field_cat 'MATNR' 'MATNR' 'MARA' 'X'.

        • field_cat 'MAKTX' 'MAKTX' 'MAKT' space.

****

****endform. " get_FieldCatlog

****&----


*****& Form get_layout

****&----


          • text

****----


****form get_layout.

****

****endform. " get_layout

****&----


*****& Form display_list

****&----


          • text

****----


****form display_list.

          • Call the FM to Display the list

        • call function 'REUSE_ALV_LIST_DISPLAY'

        • exporting

          • i_callback_program = v_repid

          • i_callback_user_command = 'CATCH_UCOMM'

          • is_layout = it_lay

        • it_fieldcat = it_fieldcat

          • it_sort = it_sort

        • i_default = 'X'

        • i_save = 'X'

          • is_variant = v_variant

        • tables

        • t_outtab = itab_mara

        • exceptions

        • program_error = 1

        • others = 2.

        • if sy-subrc <> 0.

****

        • endif.

****endform. " display_list

****

****

****CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY'

          • EXPORTING

          • I_INTERFACE_CHECK = ' '

          • I_BYPASSING_BUFFER =

          • I_BUFFER_ACTIVE = ' '

          • I_CALLBACK_PROGRAM = ' '

          • I_CALLBACK_PF_STATUS_SET = ' '

          • I_CALLBACK_USER_COMMAND = ' '

          • I_STRUCTURE_NAME =

          • IS_LAYOUT =

          • IT_FIELDCAT =

          • IT_EXCLUDING =

          • IT_SPECIAL_GROUPS =

          • IT_SORT =

          • IT_FILTER =

          • IS_SEL_HIDE =

          • I_DEFAULT = 'X'

          • I_SAVE = ' '

          • IS_VARIANT =

          • IT_EVENTS =

          • IT_EVENT_EXIT =

          • IS_PRINT =

          • IS_REPREP_ID =

          • I_SCREEN_START_COLUMN = 0

          • I_SCREEN_START_LINE = 0

          • I_SCREEN_END_COLUMN = 0

          • I_SCREEN_END_LINE = 0

          • IMPORTING

          • E_EXIT_CAUSED_BY_CALLER =

          • ES_EXIT_CAUSED_BY_USER =

        • TABLES

        • T_OUTTAB =

          • EXCEPTIONS

          • PROGRAM_ERROR = 1

          • OTHERS = 2

        • .

****IF SY-SUBRC <> 0.

          • MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO

          • WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.

****ENDIF.

****

****

****

****CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'

          • EXPORTING

          • I_INTERFACE_CHECK = ' '

          • I_BYPASSING_BUFFER = ' '

          • I_BUFFER_ACTIVE = ' '

          • I_CALLBACK_PROGRAM = ' '

          • I_CALLBACK_PF_STATUS_SET = ' '

          • I_CALLBACK_USER_COMMAND = ' '

          • I_CALLBACK_TOP_OF_PAGE = ' '

          • I_CALLBACK_HTML_TOP_OF_PAGE = ' '

          • I_CALLBACK_HTML_END_OF_LIST = ' '

          • I_STRUCTURE_NAME =

          • I_BACKGROUND_ID = ' '

          • I_GRID_TITLE =

          • I_GRID_SETTINGS =

          • IS_LAYOUT =

          • IT_FIELDCAT =

          • IT_EXCLUDING =

          • IT_SPECIAL_GROUPS =

          • IT_SORT =

          • IT_FILTER =

          • IS_SEL_HIDE =

          • I_DEFAULT = 'X'

          • I_SAVE = ' '

          • IS_VARIANT =

          • IT_EVENTS =

          • IT_EVENT_EXIT =

          • IS_PRINT =

          • IS_REPREP_ID =

          • I_SCREEN_START_COLUMN = 0

          • I_SCREEN_START_LINE = 0

          • I_SCREEN_END_COLUMN = 0

          • I_SCREEN_END_LINE = 0

          • IT_ALV_GRAPHICS =

          • IT_HYPERLINK =

          • IT_ADD_FIELDCAT =

          • IT_EXCEPT_QINFO =

          • I_HTML_HEIGHT_TOP =

          • I_HTML_HEIGHT_END =

          • IMPORTING

          • E_EXIT_CAUSED_BY_CALLER =

          • ES_EXIT_CAUSED_BY_USER =

        • TABLES

        • T_OUTTAB =

          • EXCEPTIONS

          • PROGRAM_ERROR = 1

          • OTHERS = 2

        • .

****IF SY-SUBRC <> 0.

          • MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO

          • WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.

****ENDIF.

&----


*& Report ZSYNTAX *

&----


REPORT ZSYNTAX .

*TYPES: BEGIN OF GTY_PROG,

  • NAME TYPE PROGRAMM, " Program name

  • MAX_LINE_LENGTH TYPE I, " line length

  • SOURCE TYPE RSWSOURCET,

  • END OF GTY_PROG.

*DATA: GT_ONE_PROGRAM TYPE GTY_PROG.

*TYPES: BEGIN OF GTY_KEY_FUN,

  • KEY(20),

  • END OF GTY_KEY_FUN.

*DATA: GT_STATEMENTS TYPE TABLE OF SSTMNT,

  • GT_LEVEL TYPE TABLE OF SLEVEL,

  • GW_KEY_FUN TYPE GTY_KEY_FUN,

  • GT_KEYWORDS TYPE TABLE OF GTY_KEY_FUN,

  • GT_TOKEN TYPE TABLE OF STOKEX.

*

*READ REPORT 'ZBCR_DBACCESS_SEARCH_BUP' INTO GT_ONE_PROGRAM-SOURCE

  • MAXIMUM WIDTH INTO GT_ONE_PROGRAM-MAX_LINE_LENGTH.

*

*GW_KEY_FUN-KEY = 'SCAN'.

  • APPEND GW_KEY_FUN TO GT_KEYWORDS.

*

*SCAN ABAP-SOURCE GT_ONE_PROGRAM-SOURCE

  • KEYWORDS FROM GT_KEYWORDS

  • TOKENS INTO GT_TOKEN

  • STATEMENTS INTO GT_STATEMENTS

  • WITH ANALYSIS WITH

  • INCLUDES LEVELS INTO GT_LEVEL.

*

*WRITE: 'HAI'.

"

*tables: zcourse, zcourse1.

*select * from zcourse into zcourse1.

*endselect.

*write 'hjetgjkdfipuuijfhilsdfjhjdfhnsdfhsfdklgjhfgjl'.

*" 1 SPECIFY THE SYNTAX TO FETCH DATA FROM CLIENT DEPENDENT DATABASE TABLE

*TABLES: ZCOURSE.

*DATA wa TYPE ZCOURSE.

*DATA name(10) TYPE c VALUE 'ZCOURSE'.

*SELECT * INTO wa FROM (name) CLIENT SPECIFIED.

    • WHERE mandt = '200'.

  • WRITE: / wa-ZSTUDNO, wa-ZSTUDNAME.

*ENDSELECT.

" 2 SPECIFY THE SYNTAX TO FETCH 20 RECORDS FROM ANY SAP STANDARD TABLE

*TABLES: SBOOK.

*DATA ITAB LIKE STANDARD TABLE OF SBOOK.

*DATA WA LIKE SBOOK.

*SELECT * FROM SBOOK INTO TABLE ITAB UP TO 20 ROWS.

*LOOP AT ITAB INTO WA.

  • WRITE / WA-CARRID.

*ENDLOOP.

*" 3 SPECIFY THE SYNTAX TO FETCH INDIVIDUAL COLUMNS IN ONE LINE FROM A DATABASE TABLE

*

*TABLES: ZCOURSE.

*DATA ITAB TYPE STANDARD TABLE OF ZCOURSE WITH HEADER LINE.

*SELECT SINGLE * INTO CORRESPONDING FIELDS OF ITAB FROM ZCOURSE.

  • WRITE / ITAB-ZSTUDNO.

*" 4 SPECIFY THE SYNTAX TO FETCH INDIVIDUAL COLUMNS IN SEVERAL LINE FROM A DATABASE TABLE

*TABLES: ZCOURSE.

*DATA ITAB TYPE STANDARD TABLE OF ZCOURSE.

*DATA WA LIKE ZCOURSE.

*SELECT * INTO CORRESPONDING FIELDS OF TABLE ITAB FROM ZCOURSE.

*LOOP AT ITAB INTO WA.

  • WRITE / WA-ZSTUDNO.

*ENDLOOP.

*" 5 SELECT MAXIMUM, MINIMUM, TOTAL OF A FIELD AND POPULATE IT.

*DATA: BEGIN OF S,

  • A TYPE I,

  • B TYPE I,

  • C TYPE I,

  • END OF S.

*TABLES: ZCOURSE.

*SELECT MAX( ZSTUDNO ) MIN( ZSTUDNO ) SUM( ZSTUDNO ) INTO S FROM ZCOURSE.

*WRITE: / S-A,

  • / S-B,

  • / S-C.

*" 6 FETCH FEW FIELDS FROM 2 DIFFERENT TABLES BY LINKING THE COMMON

*" FIELDS OF THE CORRESPONDING TABLES USING WHERE CLAUSE IN IT.

*TABLES: ZCOURSE.

*TABLES: ZACC.

*DATA: BEGIN OF wa,

  • ZSTUDNO TYPE ZCOURSE-ZSTUDNO,

  • ZSTUDNAME TYPE ZCOURSE-ZSTUDNAME,

  • ZACCNO TYPE ZACC-ZACCNO,

  • ZBALANCE TYPE ZACC-ZBALANCE,

  • END OF wa,

  • itab LIKE SORTED TABLE OF wa

  • WITH UNIQUE KEY ZSTUDNO.

*SELECT AZSTUDNO AZSTUDNAME BZACCNO BZBALANCE

  • INTO CORRESPONDING FIELDS OF TABLE itab

  • FROM ZCOURSE AS A INNER JOIN ZACC AS B ON AZSTUDNO = BZSTUDNO.

*LOOP AT itab INTO wa.

  • WRITE: / wa-ZSTUDNO, wa-ZSTUDNAME, wa-ZACCNO, wa-ZBALANCE.

*ENDLOOP.

" 7 WRITE THE SYNTAX TO RETRIEVE DATA, WHICH MATCHES THE ENTRIES WITHIN THE ITAB.

*TABLES: ZCOURSE.

*DATA ITAB TYPE STANDARD TABLE OF ZCOURSE.

*DATA WA LIKE ZCOURSE.

*SELECT-OPTIONS: A FOR ZCOURSE-ZSTUDNO.

*SELECT * INTO CORRESPONDING FIELDS OF TABLE ITAB FROM ZCOURSE WHERE ZSTUDNO IN A.

*LOOP AT ITAB INTO WA.

  • WRITE / WA-ZSTUDNAME.

*ENDLOOP.

" 8 WRITE THE SYNTAX TO RETRIEVE DATA WHICH MATCHES THE ENTRIES WITHIN A ITAB USING FOR ALL ENTRIES

TABLES: ZCOURSE.

TABLES: ZACC.

DATA ITAB TYPE STANDARD TABLE OF ZCOURSE.

DATA ITAB2 TYPE STANDARD TABLE OF ZCOURSE.

DATA WA LIKE ZCOURSE.

DATA WA1 LIKE ZCOURSE.

SELECT * INTO CORRESPONDING FIELDS OF TABLE ITAB FROM ZACC.

SELECT * FROM ZCOURSE INTO WA FOR ALL ENTRIES IN ITAB WHERE

ZSTUDNO NE ITAB-ZSTUDNO.

APPEND WA TO ITAB2.

ENDSELECT.

*APPEND WA TO ITAB2.

WRITE /(7) 'ZSTUDNO'.

WRITE /.

LOOP AT ITAB2 INTO WA1.

WRITE /(6) WA1-ZSTUDNO RIGHT-JUSTIFIED.

ENDLOOP.

" 9 WRITE THE SYNTAX TO SELECT A RANGE OF RECORDS OF A PARTICULAR FIELD FROM A TABLE USING

" VARIOUS SELECT STATEMENTS

*TABLS: ZCOURSE.

*DATA ITAB TYPE STANDARD TABLE OF ZCOURSE.

*DATA WA LIKE ZCOURSE.

*SELECT * FROM ZCOURSE INTO TABLE ITAB WHERE ZSTUDNO BETWEEN 101 AND 105.

**SELECT-OPTIONS: A FOR ZCOURSE-ZSTUDNO.

**SELECT * FROM ZCOURSE INTO TABLE ITAB WHERE ZSTUDNO IN A.

*LOOP AT ITAB INTO WA.

  • WRITE / WA-ZSTUDNO.

*ENDLOOP.

" 10 WRITE A SYNTAX TO SELECT A PARTICULAR RECORDS FROM THE INTERNAL

" TABLE WITH DATA USING READ STATEMENT

*TABLES: ZCOURSE.

*DATA ITAB TYPE STANDARD TABLE OF ZCOURSE.

*DATA WA LIKE ZCOURSE.

*SELECT * INTO CORRESPONDING FIELDS OF TABLE ITAB FROM ZCOURSE.

*READ TABLE ITAB INTO WA INDEX 6.

*WRITE / WA-ZSTUDNO.

" 1 QUESTION_1

*DATA: BEGIN OF STR,

  • DESC1(40) TYPE C,

  • DESC2(50) TYPE C,

  • END OF STR.

*DATA ITAB1 LIKE STANDARD TABLE OF STR WITH HEADER LINE.

*DATA ITAB2 LIKE STANDARD TABLE OF STR WITH HEADER LINE.

*

*ITAB1-DESC1 = 'RECORD 1 FIELD 1'.

*ITAB1-DESC2 = 'RECORD 1 FIELD 2'.

*APPEND ITAB1.

*ITAB1-DESC1 = 'RECORD 2 FIELD 1'.

*ITAB1-DESC2 = 'RECORD 2 FIELD 2'.

*APPEND ITAB1.

*ITAB1-DESC1 = 'RECORD 3 FIELD 1'.

*ITAB1-DESC2 = 'RECORD 3 FIELD 2'.

*APPEND ITAB1.

*ITAB1-DESC1 = 'RECORD 4 FIELD 1'.

*ITAB1-DESC2 = 'RECORD 4 FIELD 2'.

*APPEND ITAB1.

*ITAB1-DESC1 = 'RECORD 5 FIELD 1'.

*ITAB1-DESC2 = 'RECORD 5 FIELD 2'.

*APPEND ITAB1.

*ITAB2[] = ITAB1[].

*WRITE /(28) ' DESC1 DESC2'.

*WRITE /.

*LOOP AT ITAB2.

*WRITE: /(16) ITAB2-DESC1, SY-VLINE, ITAB2-DESC2.

*ENDLOOP.

" QUESTION_2

*TABLES: ZEMPLOY.

*DATA: ITAB1 TYPE STANDARD TABLE OF ZEMPLOY,

  • ITAB2 LIKE STANDARD TABLE OF ZEMPLOY,

  • ITAB3 LIKE STANDARD TABLE OF ZEMPLOY.

*DATA WA LIKE ZEMPLOY.

*DATA S TYPE I.

*SELECT * FROM ZEMPLOY INTO TABLE ITAB1 WHERE ZSAL BETWEEN 2000 AND 3000.

*SELECT * FROM ZEMPLOY INTO TABLE ITAB2 WHERE ZSAL BETWEEN 3001 AND 5000.

*SELECT * FROM ZEMPLOY INTO TABLE ITAB3 WHERE ZSAL BETWEEN 5001 AND 7000.

*LOOP AT ITAB2 INTO WA.

  • APPEND WA TO ITAB1.

*ENDLOOP.

*WRITE: / ' OLD ZSAL NEW ZSAL'.

*WRITE / .

*LOOP AT ITAB1 INTO WA WHERE ZSAL BETWEEN 2100 AND 3300.

  • S = WA-ZSAL.

  • WA-ZSAL = WA-ZSAL + 200.

  • WRITE: / S, (3) SY-VLINE RIGHT-JUSTIFIED, WA-ZSAL.

*ENDLOOP.

" CHECKING STATEMENTS

*LOOP AT ITAB1 INTO WA.

  • WRITE / WA-ZSAL.

*ENDLOOP.

*LOOP AT ITAB2 INTO WA.

  • WRITE / WA-ZSAL.

*ENDLOOP.

*WRITE: / ' OLD ZSAL NEW ZSAL'.

*WRITE / .

*LOOP AT ITAB1 INTO WA WHERE ZSAL BETWEEN 2100 AND 3000.

  • S = WA-ZSAL.

  • WA-ZSAL = WA-ZSAL + 200.

  • WRITE: / S, (3) SY-VLINE RIGHT-JUSTIFIED, WA-ZSAL.

*ENDLOOP.

*CLEAR WA.

*LOOP AT ITAB2 INTO WA WHERE ZSAL BETWEEN 3000 AND 3300.

  • S = WA-ZSAL.

  • WA-ZSAL = WA-ZSAL + 200.

  • WRITE: / S, (3) SY-VLINE RIGHT-JUSTIFIED, WA-ZSAL.

*ENDLOOP.

*LOOP AT ITAB1 INTO WA.

  • WRITE / WA-ZENAME.

*ENDLOOP.

" QUESTION_3

*TABLES: ZEMPLOY.

*DATA: ITAB1 TYPE STANDARD TABLE OF ZEMPLOY,

  • ITAB2 LIKE STANDARD TABLE OF ZEMPLOY.

*DATA A TYPE I.

*DATA WA LIKE ZEMPLOY.

*SELECT * FROM ZEMPLOY INTO TABLE ITAB1 WHERE ZSAL BETWEEN 2000 AND 5000.

*SELECT * FROM ZEMPLOY INTO TABLE ITAB2 WHERE ZSAL BETWEEN 5001 AND 7000.

*SELECT AVG( ZSAL ) FROM ZEMPLOY INTO A.

*LOOP AT ITAB2 INTO WA.

  • APPEND WA TO ITAB1.

*ENDLOOP.

*WRITE / 'Employees below the Average salary:'.

*WRITE / .

*LOOP AT ITAB1 INTO WA WHERE ZSAL < A.

  • WRITE / WA-ZENAME.

*ENDLOOP.

*WRITE / .

*WRITE / .

*WRITE / .

*WRITE / 'Employees below the Average salary:'.

*WRITE / .

*LOOP AT ITAB1 INTO WA WHERE ZSAL > A.

  • WRITE / WA-ZENAME.

*ENDLOOP.

" CHECKING STATEMENTS

*WRITE: / 'Average salary is ', A.

*LOOP AT ITAB1 INTO WA.

  • WRITE / WA-ZSAL.

*ENDLOOP.

*LOOP AT ITAB2 INTO WA.

  • WRITE / WA-ZSAL.

*ENDLOOP.

*LOOP AT ITAB1 INTO WA.

  • WRITE / WA-ZSAL.

*ENDLOOP.

*WRITE / 'Employees below the Average salary:'.

*SELECT

" QUESTION_4

*TABLES: ZEMPLOY.

*DATA: ITAB1 TYPE STANDARD TABLE OF ZEMPLOY,

  • ITAB2 LIKE STANDARD TABLE OF ZEMPLOY.

*DATA WA LIKE ZEMPLOY.

*PERFORM RETRIEVAL.

*PERFORM DISP.

*FORM RETRIEVAL.

  • SELECT * FROM ZEMPLOY INTO TABLE ITAB1 WHERE ZSAL > 2000 AND ZAGE BETWEEN 25 AND 35.

*ENDFORM.

*FORM DISP.

*WRITE /(10) 'ZENAME' RIGHT-JUSTIFIED.

*WRITE /.

*LOOP AT ITAB1 INTO WA.

  • WRITE /(10) WA-ZENAME RIGHT-JUSTIFIED.

*ENDLOOP.

*ENDFORM.

"

*WRITE 'SFFDHDFHDFHDFHDFHDFH'.

*SKIP 5.

*WRITE 'SJDJFGJFFJFGJFJGFGJG'.

*DATA: ALPHABET(10) VALUE 'ABCDEFGHIJ',

  • THREE(3) VALUE 'DEF',

  • FOUR(4) VALUE 'DEF '.

*SHIFT ALPHABET UP TO FOUR.

*WRITE ALPHABET.

*DATA S(10) TYPE C VALUE 'QWERTYUIOP'.

*DATA I(10) TYPE C VALUE 'QWERTYUIOP'.

*DATA W(5) TYPE C.

*I = S / 2.

*W = I.

*WRITE / W.

*DATA: text TYPE STRING.

*text = 'abcdefgh'.

*REPLACE SECTION OFFSET 5 OF text WITH ''.

*WRITE TEXT.

  • SHIFT a BY 2 PLACES LEFT.

*abap-scan

*DATA S(10) TYPE C VALUE 'QWERTYUIO'.

*data x type i.

*x = strlen( s ) - 5.

**do x times.

*shift s by x places.

**enddo.

*write s.

"

*TABLES: mara,sscrfields.

*data: itab like standard table of mara with header line.

*SELECTION-SCREEN BEGIN OF BLOCK blk1 WITH FRAME.

*SELECT-OPTIONS: mat FOR mara-matnr.

*SELECTION-SCREEN END OF BLOCK blk1.

*SELECTION-SCREEN PUSHBUTTON /50(15) material USER-COMMAND press.

*DATA: ok_code LIKE sy-ucomm.

*INITIALIZATION.

  • MOVE 'MATERIAL REQ' TO material.

*AT SELECTION-SCREEN ON mat.

  • ok_code = sy-ucomm.

  • CASE ok_code.

  • WHEN 'PRESS'.

  • REFRESH : itab .

  • SELECT * FROM mara INTO corresponding fields of table itab

  • WHERE matnr IN mat.

  • ENDCASE.

  • IF ok_code = 'PRESS'.

*PERFORM alv.

  • ENDIF.

*FORM alv .

*CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'

  • EXPORTING

  • I_STRUCTURE_NAME = 'MARA'

  • TABLES

  • T_OUTTAB = itab.

*ENDFORM. " alv

"

*TABLES: ZEMPLOY.

*DATA: ITAB1 TYPE STANDARD TABLE OF ZEMPLOY with header line,

  • ITAB2 LIKE STANDARD TABLE OF ZEMPLOY with header line,

  • ITAB3 LIKE STANDARD TABLE OF ZEMPLOY.

*DATA WA LIKE ZEMPLOY.

*DATA S TYPE I.

*SELECT * FROM ZEMPLOY INTO TABLE ITAB1 WHERE ZSAL BETWEEN 2000 AND 3000.

*SELECT * FROM ZEMPLOY INTO TABLE ITAB2 WHERE ZSAL BETWEEN 3001 AND 5000.

*SELECT * FROM ZEMPLOY INTO TABLE ITAB3 WHERE ZSAL BETWEEN 5001 AND 7000.

*append lines of itab2 to itab1.

**clear itab2.

**if itab1-zsal < 4999 or itab1-zsal > 2100.

    • insert itab1 into itab2.

**endif.

*loop at itab1.

*write / itab1-zsal.

*endloop.

&----


*& Report ZSYNTAX1 *

*& *

&----


*& *

*& *

&----


REPORT ZSYNTAX1 .

" 74 The UPDATE statement

*TABLES: ZCOURSE.

*UPDATE ZCOURSE SET ZSTUDNAME = 'Mr. ALAGU' WHERE ZSTUDNO = 101.

*WRITE 'Successfully updated'.

" 75 The use of HIDE statement

*TABLES: ZCOURSE.

*DATA ITAB LIKE STANDARD TABLE OF ZCOURSE.

*WRITE 'IJKLMNOP'.

*AT LINE-SELECTION.

*WRITE: 'ABCDEFGH',ZCOURSE-ZSTUDNAME.

*HIDE ZCOURSE-ZSTUDNO.

" 76

*TABLES: ZCOURSE.

*DATA ITAB LIKE STANDARD TABLE OF ZCOURSE.

*DATA WA LIKE ZCOURSE.

*SELECT * FROM ZCOURSE INTO TABLE ITAB WHERE ZSTUDNO = 101.

*loop at ITAB INTO WA.

  • WRITE WA-ZSTUDNAME.

*ENDLOOP.

"

*SELECT * FROM ZCOURSE INTO TABLE ITAB UP TO 5 ROWS.

*loop at ITAB INTO WA.

  • WRITE / WA-ZSTUDNAME.

*ENDLOOP.

"

*TABLES: ZCOURSE.

*DATA ITAB LIKE SORTED TABLE OF ZCOURSE.

*DATA WA LIKE ZCOURSE.

*DATA M TYPE ZCOURSE-ZSTUDNO.

*SELECT * FROM ZCOURSE INTO TABLE ITAB.

*SELECT MAX(ITAB-ZSTUDNO) FROM ZCOURSE into M WHERE ZCOURSE-ZTYPE = 'WD'.

*WRITE M.

"

*TABLES: ZCOURSE.

*DATA ITAB LIKE STANDARD TABLE OF ZCOURSE.

*DATA WA LIKE ZCOURSE.

*SELECT ZSTUDNO FROM ZCOURSE INTO TABLE ITAB WHERE ZSTUDNAME LIKE 'Mr. Alagu'.

*loop at ITAB INTO WA.

  • WRITE / WA-ZSTUDNO.

*ENDLOOP.

*ENDSELECT.

*INSERT ZSTUDNAME FROM TABLE ZCOURSE.

*DATA: count TYPE I,

  • avg TYPE F,

  • connid TYPE sbook-connid.

*SELECT CONNID COUNT( * ) avg( LUGGWEIGHT )

  • INTO (connid, count, avg)

  • FROM sbook

  • WHERE

  • carrid = 'LH' AND

  • fldate = '20010228'

  • GROUP BY connid

  • HAVING AVG( luggweight ) > '20.0'.

  • WRITE: / connid, count, avg.

*ENDSELECT.

*TABLES: ZCOURSE.

*DATA ZSTUDNO LIKE ZCOURSE-ZSTUDNO.

*DATA: count TYPE I,

  • avg TYPE F,

  • ZSTUDNO TYPE ZCOURSE-ZSTUDNO,

  • ZTYPE TYPE ZCOURSE-ZTYPE,

  • ZSTATUS TYPE ZCOURSE-ZSTATUS.

*SELECT COUNT( * ) avg( ZSTUDNO )

  • INTO (count, avg)

  • FROM ZCOURSE

  • WHERE

  • ZTYPE = 'WE' AND

  • ZSTATUS = 'A'

  • GROUP BY ZSTUDNO

  • HAVING AVG( ZSTUDNO ) > '20.0'.

  • WRITE: / ZSTUDNO, count, avg.

*ENDSELECT.

"

*TABLES: ZCOURSE, ZCOURSE1.

*SELECT * FROM ZCOURSE INTO ZCOURSE1.

*APPEND ZCOURSE1.

*ENDSELECT.

*WRITE 'Copied successfully'.

"

*TABLES: ZCOURSE.

*DATA ITAB LIKE STANDARD TABLE OF ZCOURSE.

*DATA WA LIKE ZCOURSE.

*READ TABLE ITAB INTO WA WITH STUDNO = 105.

*IF SY-SUBRC = 0

  • WRITE 'Ya.....We did it.'.

*ELSE

  • WRITE 'Oho! Not found'.

*ENDIF.

"

*TABLES: ZCOURSE.

*DATA ITAB LIKE SORTED TABLE OF ZCOURSE WITH unique key ZSTUDNO.

*DATA WA LIKE ZCOURSE.

*SELECT * FROM ZCOURSE INTO ITAB WHERE ZSTUDNAME LIKE 'Mr. %' and ZTYPE = 'WD'.

*LOOP AT ITAB INTO WA.

  • WRITE WA-ZSTUDNAME.

*ENDLOOP.

"

*TABLES: ZCOURSE.

*DATA ITAB LIKE SORTED TABLE OF ZCOURSE WITH unique key ZSTUDNO.

*DATA WA LIKE ZCOURSE.

*SELECT * FROM ZCOURSE AS F INTO TABLE ITAB WHERE

  • ZSTUDNO < 106 AND ZTYPE EXISTS ( SELECT DISTINCT ZTYPE FROM ZCOURSE ).

**SELECT DISTINCT ZTYPE FROM ZCOURSE INTO TABLE ITAB.

*LOOP AT ITAB INTO WA.

  • WRITE / WA-ZSTUDNO.

*ENDLOOP.

"

*TABLES: ZCOURSE.

*DATA ITAB LIKE STANDARD TABLE OF ZCOURSE.

*DATA ITAB1 LIKE STANDARD TABLE OF ZCOURSE with header line.

*DATA WA LIKE ZCOURSE.

*SELECT * FROM ZCOURSE INTO TABLE ITAB.

*loop at ITAB INTO WA.

  • COLLECT WA INTO ITAB1.

    • WRITE / WA-ZSTUDNAME.

*ENDLOOP.

*SORT ITAB1 BY ZSTUDNO.

*LOOP AT ITAB1.

  • WRITE / ITAB1-ZSTUDNO.

*ENDLOOP.

"

*TABLES: ZCOURSE.

*DATA ITAB LIKE STANDARD TABLE OF ZCOURSE WITH HEADER LINE.

*DATA WA LIKE ZCOURSE.

*SELECT * FROM ZCOURSE INTO TABLE ITAB.

*DELETE ADJACENT DUPLICATES FROM ITAB

*COMPARING ZSTUDNO.

*LOOP AT ITAB.

  • WRITE / ITAB-ZSTUDNAME.

*ENDLOOP.

  • ADJACENT

"

*TABLES: ZCOURSE.

*DATA ITAB LIKE STANDARD TABLE OF ZCOURSE WITH HEADER LINE.

*DATA WA LIKE ZCOURSE.

*SELECT * FROM ZCOURSE INTO TABLE ITAB.

*DELETE ITAB FROM 1 TO 10.

*WRITE 'Successfully deleted'.

*LOOP AT ITAB.

  • WRITE / ITAB-ZSTUDNAME.

*ENDLOOP.

"

*FIELD-SYMBOLS: <ASD> TYPE INT1.

*TABLES: ZCOURSE.

*DATA ITAB LIKE STANDARD TABLE OF ZCOURSE WITH HEADER LINE.

*SELECT * FROM ZCOURSE INTO TABLE ITAB.

*LOOP AT ITAB.

  • ASSIGN ITAB-ZSTUDNO TO <ASD>.

  • WRITE / <ASD>.

*ENDLOOP.

"

*TABLES: ZCOURSE.

*DATA ITAB LIKE STANDARD TABLE OF ZCOURSE.

*DATA WA LIKE ZCOURSE.

*select * into corresponding fields of table itab from zcourse.

*endselect.

*read table itab into wa index 1.

*loop at wa.

  • write / wa-zstudname.

  • write / sy-uzeit.

*endloop.

"

*TABLES: ZCOURSE.

*DATA ITAB LIKE STANDARD TABLE OF ZCOURSE WITH HEADER LINE.

*DATA WA LIKE ZCOURSE.

*CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY'

  • EXPORTING

  • I_INTERFACE_CHECK = ' '

  • I_BYPASSING_BUFFER =

  • I_BUFFER_ACTIVE = ' '

  • I_CALLBACK_PROGRAM = ' '

  • I_CALLBACK_PF_STATUS_SET = ' '

  • I_CALLBACK_USER_COMMAND = ' '

  • I_STRUCTURE_NAME =

  • IS_LAYOUT =

  • IT_FIELDCAT =

  • IT_EXCLUDING =

  • IT_SPECIAL_GROUPS =

  • IT_SORT =

  • IT_FILTER =

  • IS_SEL_HIDE =

  • I_DEFAULT = 'X'

  • I_SAVE = ' '

  • IS_VARIANT =

  • IT_EVENTS =

  • IT_EVENT_EXIT =

  • IS_PRINT =

  • IS_REPREP_ID =

  • I_SCREEN_START_COLUMN = 0

  • I_SCREEN_START_LINE = 0

  • I_SCREEN_END_COLUMN = 0

  • I_SCREEN_END_LINE = 0

  • IMPORTING

  • E_EXIT_CAUSED_BY_CALLER =

  • ES_EXIT_CAUSED_BY_USER =

  • TABLES

  • T_OUTTAB =

  • EXCEPTIONS

  • PROGRAM_ERROR = 1

  • OTHERS = 2

.

*IF SY-SUBRC <> 0.

  • MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO

  • WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.

*ENDIF.

"

*TABLES: ZCOURSE.

*DATA ITAB LIKE STANDARD TABLE OF ZCOURSE WITH HEADER LINE.

*DATA WA LIKE ZCOURSE.

*CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'

  • EXPORTING

  • I_INTERFACE_CHECK = ' '

  • I_BYPASSING_BUFFER = ' '

  • I_BUFFER_ACTIVE = ' '

  • I_CALLBACK_PROGRAM = ' '

  • I_CALLBACK_PF_STATUS_SET = ' '

  • I_CALLBACK_USER_COMMAND = ' '

  • I_CALLBACK_TOP_OF_PAGE = ' '

  • I_CALLBACK_HTML_TOP_OF_PAGE = ' '

  • I_CALLBACK_HTML_END_OF_LIST = ' '

  • I_STRUCTURE_NAME =

  • I_BACKGROUND_ID = ' '

  • I_GRID_TITLE =

  • I_GRID_SETTINGS =

  • IS_LAYOUT =

  • IT_FIELDCAT =

  • IT_EXCLUDING =

  • IT_SPECIAL_GROUPS =

  • IT_SORT =

  • IT_FILTER =

  • IS_SEL_HIDE =

  • I_DEFAULT = 'X'

  • I_SAVE = ' '

  • IS_VARIANT =

  • IT_EVENTS =

  • IT_EVENT_EXIT =

  • IS_PRINT =

  • IS_REPREP_ID =

  • I_SCREEN_START_COLUMN = 0

  • I_SCREEN_START_LINE = 0

  • I_SCREEN_END_COLUMN = 0

  • I_SCREEN_END_LINE = 0

  • IT_ALV_GRAPHICS =

  • IT_HYPERLINK =

  • IT_ADD_FIELDCAT =

  • IT_EXCEPT_QINFO =

  • I_HTML_HEIGHT_TOP =

  • I_HTML_HEIGHT_END =

  • IMPORTING

  • E_EXIT_CAUSED_BY_CALLER =

  • ES_EXIT_CAUSED_BY_USER =

  • TABLES

  • T_OUTTAB =

  • EXCEPTIONS

  • PROGRAM_ERROR = 1

  • OTHERS = 2

.

*IF SY-SUBRC <> 0.

  • MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO

  • WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.

*ENDIF.

"

*parameter word(20) type c.

*data i type i.

*i = strlen( word ).

*data i1 type i.

*i1 = 1.

*DO i TIMES.

  • write /(i1) word.

  • i1 = i1 + 1.

*enddo.

"

*data a type string.

*a = 'Hello'.

*write a.

"

*data c1(10) type c.

*data i type i.

*c1 = 'ABCDEFGH'.

*i = charlen( c1 ).

*write: 'The length of c1 is ', i. " displays 1 - always

"

*data: a type string,

  • b(30) type c,

  • c(10) type c,

  • d(10) type c.

*b = 'aaaaaaaaa,bbbbbbbbb,cccccccccc'.

*split b at ',' into a c d.

*write: a, c, d.

"

*data a type i.

*parameter var like a.

*if var < 0.

  • write 'NEGATIVE'.

*elseif var > 0.

  • write 'POSITIVE'.

*else.

  • write 'ZERO'.

*endif.

"

*data a type i.

*parameter var like a.

*case var.

  • when 1.

  • write 'ONE'.

  • when 2.

  • write 'TWO'.

  • when 3.

  • write 'THREE'.

  • WHEN OTHERS.

  • WRITE 'OTHERS'.

*endcase.

*DATA: wa_sbook TYPE sbook.

*

*SELECT * FROM sbook INTO wa_sbook

  • WHERE

  • carrid = 'LH'

  • AND connid = '0400' AND

  • fldate = '20010228'

  • ORDER BY PRIMARY KEY.

  • WRITE: / wa_sbook-bookid, wa_sbook-customid,

  • wa_sbook-custtype, wa_sbook-smoker,

  • wa_sbook-luggweight, wa_sbook-wunit,

  • wa_sbook-invoice.

*ENDSELECT.

"

*TABLES: ZCOURSE.

*DATA: WA_SBOOK TYPE SBOOK.

*

*SELECT * FROM SBOOK INTO WA_SBOOK

  • WHERE

  • CARRID = 'LH ' AND

  • CONNID = '0400' AND

  • FLDATE = '19950228'

  • ORDER BY PRIMARY KEY.

  • WRITE: / WA_SBOOK-BOOKID, WA_SBOOK-CUSTOMID,

*

  • WA_SBOOK-CUSTTYPE, WA_SBOOK-SMOKER,

  • WA_SBOOK-LUGGWEIGHT, WA_SBOOK-WUNIT,

  • WA_SBOOK-INVOICE.

*ENDSELECT.

*DATA: BEGIN OF STR,

  • ZSTUDNO LIKE ZCOURSE-ZSTUDNO,

  • ZSTUDNAME LIKE ZCOURSE-ZSTUDNAME,

  • END OF STR.

*

*DATA S TYPE I.

*

*DATA: ITAB LIKE STANDARD TABLE OF STR,

  • WA LIKE ITAB.

  • SELECT * INTO CORRESPONDING FIELDS OF TABLE ITAB FROM ZCOURSE.

  • LOOP AT ITAB INTO WA.

  • WA-ZSTUDNO = ITAB-ZSTUNO.

  • WA-ZSTUDNAME = ITAB-ZSTUNAME.

  • ENDLOOP.

*data D TYPE I.

*D = 1.

  • READ TABLE ITAB INTO WA INDEX D.

  • SELECT COUNT( WA-ZSSTUDNAME ) AS S FROM ITAB INDEX 1.

*

  • WRITE S.

&----


*& Report ZSYNTAX2 *

*& *

&----


*& *

*& *

&----


REPORT ZSYNTAX2 .

" 48 The display of table name and no of records in it

*Tables: ZCOURSE.

  • Variables for later use

*DATA: TABLENAME(10),

  • COUNT_ROWS TYPE I.

  • Setting the table name dynamically

*MOVE 'ZCOURSE' TO TABLENAME.

  • Selecting data

*SELECT COUNT( * ) FROM (TABLENAME) INTO COUNT_ROWS.

*WRITE: TABLENAME, COUNT_ROWS.

" 49 FAILED Use of logical databases

  • Work area

  • "Initial processing

*START-OF-SELECTION.

  • WRITE / 'Start'.

  • "Reading data

  • TABLES: ZCOURSE.

*"GET ZCOURSE.

  • WRITE: AT /3 ZCOURSE-ZSTUDNAME.

  • "Final processing

*END-OF-SELECTION.

  • WRITE / 'Finished'.

" 50 the use of messages

*message w001.

*message i001.

*message e000.

*message s001.

*message a001.

" 51 FAILED The addition of two numbers

*parameter: v1 type i,

  • v2 type i,

  • v3 type i.

*data: a1 like v1,

  • a2 like v2.

*DATA t type i.

*t = a1 + a2.

*v3 = t.

*v3 = v1 + v2.

*write 'How is it?'.

" 52 zalv display

&----


*& Chapter 26: Reading data from a file (presentation server)

&----


*REPORT CHAP2604.

    • Data declarations for later use

*PARAMETERS FILENAME(128) DEFAULT 'c:TEXT.TXT'

  • LOWER CASE.

*TABLES ZCOURSE.

*DATA ITAB LIKE ZCOURSE OCCURS 100

  • WITH HEADER LINE.

*data WA like ITAB.

*CALL FUNCTION 'WS_UPLOAD'

  • EXPORTING

  • FILENAME = FILENAME

  • TABLES

  • DATA_TAB = ITAB

  • EXCEPTIONS

  • FILE_OPEN_ERROR = 1

  • OTHERS = 2.

*CASE SY-SUBRC.

  • WHEN 1.

  • WRITE 'Error when file opened'.

  • EXIT.

  • WHEN 2.

  • WRITE 'Error during data transfer'.

  • EXIT.

*ENDCASE.

    • Display the result

*LOOP AT ZCOURSE into WA.

  • WRITE: / WA-ZSTUDNO,

  • WA-ZSTUDNAME.

*ENDLOOP.

" 53 FAILED The 'call screen' statement

*CALL SCREEN 1300.

" 54 The display at desire place

*DATA a(24) TYPE c VALUE 'This is ABAB progrmming'.

*SKIP to LINE 20.

*POSITION 10.

*WRITE a.

" 55 The use of TYPE p, DECIMALS

*DATA a TYPE p DECIMALS 4.

*a = 4 / 5.

*WRITE: 'a = ' , a.

" 56 The use of keyword TYPES

*types a(6) type c.

  • data z type a.

  • z = 'ABCDEF'.

  • write z.

" 57 The use of 'CLAER' statement

*DATA name(13) type c VALUE 'MR.NAGARAJAN'.

*WRITE name.

*CLEAR name.

*WRITE name.

*DATA n type i VALUE 12345.

*WRITE n.

*CLEAR n.

*WRITE n.

" 58 FAILED The use of MATH functions.

*DATA: a type i,

  • b type i,

  • c type p DECIMALS 4.

*a = 4.

*b = 5.

*c = a / b.

*WRITE: / c,

  • / 'ABS: ', abs(c),

  • / 'SIGN: ', sign(c),

  • / 'CEIL: ', ceil(c),

  • / 'FLOOR:', floor(c),

  • / 'TRUNC:', trunc(c),

  • / 'FRAC: ', frac(c).

" 59 The use of 'SHIFT' statement

*DATA a(10) type c VALUE 'ABCDEF'.

  • SHIFT a.

  • WRITE: 'a = ', a.

  • SHIFT a BY 2 PLACES LEFT.

  • WRITE: 'a = ', a.

  • SHIFT a BY 2 PLACES RIGHT.

  • WRITE: 'a = ', a.

  • SHIFT a BY 2 PLACES CIRCULAR.

  • WRITE: 'a = ', a.

" 60 The us of COUNTER functions

*DATA a TYPE i VALUE 0.

*CALL FUNCTION 'SET_COUNTER'

  • EXPORTING

  • SET_VALUE = a

  • .

*do 3 times.

*CALL FUNCTION 'INCREMENT_COUNTER'

  • .

*enddo.

*CALL FUNCTION 'GET_COUNTER'

  • IMPORTING

  • GET_VALUE = a

  • .

*WRITE: 'After three increments, a = ', a left-justified.

" 61 The use of 'SELECT' statement

*TABLES: ZCOURSE.

*DATA WA LIKE ZCOURSE.

*SELECT ZSTUDNO ZSTUDNAME ZCOURSE ZTYPE ZSTATUS INTO CORRESPONDING FIELDS OF WA FROM ZCOURSE

  • WHERE ZSTUDNO = 111.

*ENDSELECT.

*IF sy-subrc EQ 0.

  • WRITE: / WA-ZSTUDNO, WA-ZSTUDNAME, WA-ZCOURSE, WA-ZTYPE, WA-ZSTATUS.

*else.

  • WRITE 'Iho! No record, What to do?'.

*ENDIF.

" 62 The display of whole table

*DATA: ITAB TYPE STANDARD TABLE OF ZCOURSE,

  • WA LIKE LINE OF itab.

*SELECT ZSTUDNO ZSTUDNAME ZCOURSE ZTYPE ZSTATUS

  • INTO CORRESPONDING FIELDS OF TABLE itab

  • FROM ZCOURSE.

    • WHERE ZSTUDNO = 110.

*IF sy-subrc EQ 0.

  • LOOP AT ITAB INTO WA.

  • WRITE: / WA-ZSTUDNO, WA-ZSTUDNAME, WA-ZCOURSE, WA-ZTYPE, WA-ZSTATUS.

  • ENDLOOP.

*ENDIF.

" 63 The use 'PACKAGE SIZE' statement

*TABLES: ZCOURSE.

*DATA: WA TYPE ZCOURSE,

  • ITAB TYPE SORTED TABLE OF ZCOURSE WITH UNIQUE KEY ZSTUDNO ZSTUDNAME ZCOURSE.

*SELECT * FROM ZCOURSE INTO CORRESPONDING FIELDS OF TABLE ITAB PACKAGE SIZE 3.

*LOOP AT ITAB INTO WA.

  • WRITE: / WA-ZSTUDNO, WA-ZSTUDNAME, WA-ZCOURSE, WA-ZTYPE, WA-ZSTATUS.

*ENDLOOP.

*ENDSELECT.

" 64 FAILED

*DATA: ITAB TYPE STANDARD TABLE OF ZCOURSE,

  • WA LIKE LINE OF itab.

*DATA: a type p DECIMALS 2,

  • b type p DECIMALS 2.

*SELECT * FROM ZCOURSE INTO CORRESPONDING FIELDS OF TABLE ITAB.

*LOOP AT ITAB INTO WA.

  • WRITE: / WA-ZSTUDNO, WA-ZSTUDNAME, WA-ZCOURSE, WA-ZTYPE, WA-ZSTATUS.

*SELECT avg (ZSTUDNO) SUM (ZSTUDNO) into (a,b) FROM ZCOURSE.

*WRITE: 'The average is ', a,

  • 'The summation is ', b.

*ENDLOOP.

" 64 The use of 'avg' and 'sum' function

*DATA: BEGIN OF l,

  • average TYPE p DECIMALS 2,

  • sum TYPE p DECIMALS 2,

  • END OF l.

*SELECT AVG( ZSTUDNO ) AS average SUM( ZSTUDNO ) AS sum

  • INTO CORRESPONDING FIELDS OF l

  • FROM ZCOURSE.

*WRITE: / 'Average:', l-average,

  • / 'Sum :', l-sum.

" 65 The STATIC SOURCE SPEC

*TABLES: ZCOURSE.

*DATA wa TYPE ZCOURSE.

*SELECT *

  • INTO wa

  • FROM ZCOURSE UP TO 4 ROWS.

  • WRITE: / wa-ZSTUDNO, wa-ZSTUDNAME.

*ENDSELECT.

" 66 Dynamic SOURCE SPEC

*TABLES: ZCOURSE.

*DATA wa TYPE ZCOURSE.

*DATA name(10) TYPE c VALUE 'ZCOURSE'.

*SELECT *

  • INTO wa

  • FROM (name) CLIENT SPECIFIED

  • WHERE mandt = '200'.

  • WRITE: / wa-ZSTUDNO, wa-ZSTUDNAME.

*ENDSELECT.

" 67 The inner join of two tables

*TABLES: ZCOURSE.

*TABLES: ZACC.

*DATA: BEGIN OF wa,

  • ZSTUDNO TYPE ZCOURSE-ZSTUDNO,

  • ZSTUDNAME TYPE ZCOURSE-ZSTUDNAME,

  • ZACCNO TYPE ZACC-ZACCNO,

  • ZBALANCE TYPE ZACC-ZBALANCE,

  • END OF wa,

  • itab LIKE SORTED TABLE OF wa

  • WITH UNIQUE KEY ZSTUDNO.

*

*SELECT AZSTUDNO AZSTUDNAME BZACCNO BZBALANCE

  • INTO CORRESPONDING FIELDS OF TABLE itab

  • FROM ZCOURSE AS A INNER JOIN ZACC AS B ON AZSTUDNO = BZSTUDNO.

*LOOP AT itab INTO wa.

  • WRITE: / wa-ZSTUDNO, wa-ZSTUDNAME, wa-ZACCNO, wa-ZBALANCE.

*ENDLOOP.

" 68 The LEFT OUTER JOIN of two tables

*TABLES: ZCOURSE.

*TABLES: ZACC.

*DATA: BEGIN OF wa,

  • ZSTUDNO TYPE ZCOURSE-ZSTUDNO,

  • ZSTUDNAME TYPE ZCOURSE-ZSTUDNAME,

  • ZACCNO TYPE ZACC-ZACCNO,

  • ZBALANCE TYPE ZACC-ZBALANCE,

  • END OF wa.

  • DATA: ITAB1 LIKE SORTED TABLE OF WA with non-unique key ZSTUDNO. " COURSE-ZTYPE.

*SELECT sZSTUDNO sZSTUDNAME pZACCNO pZBALANCE

  • INTO CORRESPONDING FIELDS OF TABLE itab1

  • FROM ZCOURSE AS s

  • LEFT OUTER JOIN ZACC AS p ON sZSTUDNO = pZSTUDNO.

*LOOP AT itab1 INTO wa.

  • WRITE: / wa-ZSTUDNO, wa-ZSTUDNAME, wa-ZACCNO.

*ENDLOOP.

" 69 FAILED The 'GROUP BY' statement

TABLES: ZCOURSE.

DATA: BEGIN OF STRCT,

ZSTUDNO LIKE ZCOURSE-ZSTUDNO,

ZSTUDNAME LIKE ZCOURSE-ZSTUDNAME,

ZCOURSE LIKE ZCOURSE-ZCOURSE,

ZTYPE LIKE ZCOURSE-ZTYPE,

ZSTATUS LIKE ZCOURSE-ZSTATUS,

END OF STRCT.

DATA ITAB LIKE SORTED TABLE OF ZCOURSE with unique key ZSTUDNO.

DATA WA LIKE ITAB.

SELECT * FROM ZCOURSE

INTO TABLE ITAB

GROUP BY ZCOURSE-ZTYPE.

LOOP AT ITAB INTO WA.

WRITE: / ZCOURSE-ZSTUDNO, ZCOURSE-ZSTUDNAME.

ENDLOOP.

ENDSELECT.

*printout

*printout

*printout

*printout

*printout

" 70 The LEAP year identification

*DATA: mydate TYPE d.

*mydate = '20050301'.

*mydate = mydate - 1.

*IF mydate+6(2) = '29'.

  • WRITE 'A leap year'.

*ELSE.

  • WRITE 'No leap year'.

*ENDIF.

" 71 ABAP MACRO

*DATA: RESULT TYPE I,

  • N1 TYPE I VALUE 5,

  • N2 TYPE I VALUE 6.

*DEFINE OPERATION.

  • RESULT = &1 &2 &3.

  • OUTPUT &1 &2 &3 RESULT.

*END-OF-DEFINITION.

*DEFINE OUTPUT.

  • WRITE: / 'The result of &1 &2 &3 is', &4 LEFT-JUSTIFIED.

*END-OF-DEFINITION.

*OPERATION 4 + 3.

*OPERATION 2 * 7.

*OPERATION N2 - N1.

" 72 Messages

*MESSAGE i001.

*MESSAGE s001.

*MESSAGE w001.

*MESSAGE e001.

*MESSAGE a001.

" 73 Varous 'SY-FIELDS'

*WRITE SY-HOST.

*WRITE SY-LANGU.

*WRITE SY-USRID.

*WRITE SY-LILLI.

*WRITE SY-MANDT.

*WRITE SY-MSGID.

*WRITE SY-REPID.

*WRITE SY-SYSID.

*WRITE SY-TITLE.

*WRITE SY-UNAME.

*WRITE SY-UZEIT.

*DO 35 TIMES.

*DO 62 TIMES.

*WRITE SY-VLINE.

*ENDDO.

*ENDDO.

*What is the difference between session batch input and call transaction in BDC?

*Session method.

*1) synchronous processing.

*2) can tranfer large amount of data.

*3) processing is slower.

*4) error log is created

*5) data is not updated until session is processed.

*6) Both foreground and background operations.

*Call transaction.

*1) asynchronous processing

*2) can transfer small amount of data

*3) processing is faster.

*4) errors need to be handled explicitly

*5) data is updated automatically

*6) Only foreground operations.

&----


*& Report ZSYNTAX3 *

*& *

&----


*& *

*& *

&----


REPORT ZSYNTAX3 .

"35 the modify statement

*data: begin of stud occurs 0,

  • no type i,

  • name(10) type c,

*end of stud.

  • stud-no = 101.

  • stud-name = 'Nagarajan'.

  • append stud.

  • stud-no = 102.

  • stud-name = 'Ssdeesh'.

  • append stud.

  • stud-no = 103.

  • stud-name = 'Anandth'.

  • append stud.

  • stud-no = 104.

  • stud-name = 'Karthi'.

  • append stud.

  • loop at stud.

  • write: / stud-no,stud-name.

  • endloop.

  • stud-name = 'Pradeep'.

  • modify stud index 1.

  • stud-no = 109.

  • modify stud index 4.

  • do 5 times.

  • write /.

  • enddo.

  • loop at stud.

  • write: / stud-no,stud-name.

  • endloop.

" 36 the 'free' keyword

*data: begin of stud occurs 0,

  • no type i,

  • name(10) type c,

*end of stud.

  • stud-no = 101.

  • stud-name = 'Nagarajan'.

  • append stud.

  • stud-no = 102.

  • stud-name = 'Ssdeesh'.

  • append stud.

  • stud-no = 103.

  • stud-name = 'Anandth'.

  • append stud.

  • stud-no = 104.

  • stud-name = 'Karthi'.

  • append stud.

  • loop at stud.

  • write: / stud-no,stud-name.

  • endloop.

  • free stud.

  • do 5 times.

  • write /.

  • enddo.

*if stud[] is initial.

  • write 'Ya! Contents of STUD are deleted'.

*endif.

*printout taken

*printout taken

*printout taken

*printout taken

*printout taken

" 37 the refresh statement

*data: begin of stud occurs 0,

  • no type i,

  • name(10) type c,

*end of stud.

  • stud-no = 101.

  • stud-name = 'Nagarajan'.

  • append stud.

  • stud-no = 102.

  • stud-name = 'Ssdeesh'.

  • append stud.

  • stud-no = 103.

  • stud-name = 'Anandth'.

  • append stud.

  • stud-no = 104.

  • stud-name = 'Karthi'.

  • append stud.

  • loop at stud.

  • write: / stud-no,stud-name.

  • endloop.

  • refresh stud.

  • do 5 times.

  • write /.

  • enddo.

*if stud[] is initial.

  • write 'Ya! Contents of STUD are deleted'.

*endif.

" 38 the clear statement

*data: begin of stud occurs 0,

  • no type i,

  • name(10) type c,

*end of stud.

  • stud-no = 101.

  • stud-name = 'Nagarajan'.

  • append stud.

  • stud-no = 102.

  • stud-name = 'Ssdeesh'.

  • append stud.

  • stud-no = 103.

  • stud-name = 'Anandth'.

  • append stud.

  • stud-no = 104.

  • stud-name = 'Karthi'.

  • append stud.

  • loop at stud.

  • write: / stud-no,stud-name.

  • endloop.

  • clear stud[].

  • do 5 times.

  • write /.

  • enddo.

*if stud[] is initial.

  • write 'Ya! Contents of STUD are deleted'.

*endif.

*do 5 times.

  • write /.

  • enddo.

  • loop at stud.

  • write: / stud-no,stud-name.

  • if sy-subrc <> 0.

  • write 'Ya! Contents of STUD are deleted'.

  • endif.

  • endloop.

" 39 user defined function module to im/ex values

*data t type p.

*parameter: scoreof1 type p,

  • scoreof2 type p.

*scoreof1 = 23.

*scoreof2 = 32.

*CALL FUNCTION 'ZMOD'

  • EXPORTING

  • SCORE1 = scoreof1

  • SCORE2 = scoreof2

  • IMPORTING

  • TOTAL = t

  • .

*CALL FUNCTION 'ZMOD'

  • EXPORTING

  • SCORE1 = scoreof1

  • SCORE2 = scoreof2

  • IMPORTING

  • TOTAL = t

.

*do 5 times.

  • write /.

*enddo.

*write: 'The total score is ' , t.

" 40 user defined function module to process the table

*tables: zcourse.

*data b like zcourse occurs 10 with header line.

*CALL FUNCTION 'ZTAB'

  • TABLES

  • A = b

  • .

*do 5 times.

  • write /.

*enddo.

*loop at b.

  • write / b-zstudno.

*endloop.

"41 the projection view as table

*tables: zprov.

*data: intern like zprov occurs 10 with header line.

*select * from zprov into table intern.

  • loop at intern.

  • write / intern-ZSTUDNO.

  • endloop.

*intern-zstudno = 120.

*modify intern index 4.

*intern-zstudno = 120.

*insert intern index 4.

*do 5 times.

  • write /.

*enddo.

*loop at intern.

  • write / intern-ZSTUDNO.

  • endloop.

" 42 ABAP events 1

  • initialization.

  • write / .

  • write /(11) '1' right-justified.

  • start-of-selection.

  • write /(11) '2' right-justified.

  • end-of-selection.

  • write /(11) '3' right-justified.

  • top-of-page.

  • write: / '____________________',

  • / 'ABAP Events Examples',

  • / '____________________'.

  • at line-selection.

  • write 'This is a new screen'.

  • tables: zcourse.

  • data: gt1 like standard table of zcourse. " creation of internal table without HL

  • data: gw1 like zcourse.

  • select * from zcourse into table gt1. " tranfer and process

  • write / .

  • loop at gt1 into gw1.

  • write: /(11) gw1-ZSTUDNO right-justified.

  • endloop.

" 43 ABAP events 2

*data f1 type i value 1.

  • end-of-selection.

  • write: / '3. f1 =', f1.

  • start-of-selection.

  • write: / '2. f1 =', f1.

  • f1 = 99.

  • initialization.

  • write: / '1. f1 =', f1.

  • add 1 to f1.

" 44 ABAB events 3

*report ztx1705 no standard page heading line-count 6(2).

*in events before start-of-selection:

  • - exit and check have the same behavior. They both leave the event

  • and processing continues with the next event or action.

  • - stop goes directly to the end-of-selection event

  • (don't use stop in initialization or at selection-screen output)

*in start-of-selection and subsequent events:

  • - exit terminates the report and shows the output list

  • exception: top-of-page: exit leaves the event

  • - check leaves the event and processing continues with the next one.

  • - stop goes directly to the end-of-selection event

"execute an:

  • parameters: exit_sos radiobutton group g1, "exit in start-of-selection

  • exit_eos radiobutton group g1, "exit in end-of-selection

  • chck_sos radiobutton group g1, "check in start-of-selection

  • chck_eos radiobutton group g1, "check in end of selection

  • stop_sos radiobutton group g1, "stop in start-of-selection

  • stop_eos radiobutton group g1, "stop in end-of-selection

  • none radiobutton group g1. "no stop, exit or check

  • initialization.

  • exit. "exits event

  • check 1 = 2. "exits event

  • stop. "don't do this

  • chck_sos = 'X'.

  • at selection-screen output.

  • exit. "exits event

  • check 1 = 2. "exits event

  • stop. "don't do this

  • message s789(zk) with 'at selection-screen output'.

  • at selection-screen on radiobutton group g1.

  • exit. "exits event

  • check 1 = 2. "exits event

  • stop. "goes to end-of-selection

  • message i789(zk) with 'at selection-screen on rbg'.

  • at selection-screen.

  • exit. "exits event

  • check 1 = 2. "exits event

  • stop. "goes to end-of-selection

  • message i789(zk) with 'at selection-screen'.

  • start-of-selection.

  • write: / 'Top of SOS'.

  • if exit_sos = 'X'.

  • exit. "exits report

  • elseif chck_sos = 'X'.

  • check 1 = 2. "exits event

  • elseif stop_sos = 'X'.

  • stop. "goes to end-of-selection

  • endif.

  • write: / 'Bottom of SOS'.

  • end-of-selection.

  • write: / 'Top of EOS'.

  • if exit_eos = 'X'.

  • exit. "exits report

  • elseif chck_eos = 'X'.

  • check 1 = 2. "exits report

  • elseif stop_eos = 'X'.

  • stop. "exits report

  • endif.

  • write: / 'Bottom of EOS'.

  • write: / '1',

  • / '2',

  • / '3'.

  • top-of-page.

  • write: / 'Title'.

  • exit. "exits event and returns to write statement

  • check 'X' = 'Y'. "exits event and returns to write statement

  • stop. "goto end-of-selection - don't write after it

  • uline.

  • end-of-page.

  • uline.

  • exit. "exits report

  • check 'X' = 'Y'. "exits event and returns to write statement

  • stop. "goto end-of-selection - don't write after it

  • write: / 'Footer'.

*printout

*printout

*printout

*printout

" 45 Various typecastings of time, date, char, x hexade, packed, numeric char, i, float

" 1 typecast of n to i and i to n

*data: num(4) value '1771',

  • result type I value 1234.

*result = num.

*write result. " displays 1771

*num = '4321'.

*result = 09872.

*num = result.

*write: / ,

  • / ,

  • / num. " displays 9872

" 2 typecast of t to n and n to t

*data a(6) type n value '102300'.

*data b type t value '114010'.

*write: / a, " displays 102300

  • / b. " displays 114010

*a = b.

*write: / ' a = ', a. " displays 114010

*a = '234562'.

*b = a.

*write: / ' b = ', b. " displays 234562

" 3 typecast of p to c and c to p.

*data par type p value 789.

*data n(3) type c value 'kjh'.

*write: / par left-justified, " displays 789

  • / n left-justified. " displays kjh

*n = par.

*write: / ' n = ', n. " displays 789

*par = 345.

*n = '564'.

*par = n.

*write: / ' par = ', par. " displays 564

" 46 SINGLE record retrieval

  • Work area for a database table

*TABLES ZCOURSE.

  • Reading a single entry

*SELECT SINGLE * FROM ZCOURSE

  • WHERE ZSTUDNO = '101'.

*IF SY-SUBRC = 0.

  • WRITE ZCOURSE-ZSTUDNAME.

*ELSE.

  • WRITE 'Customer not found.'.

*ENDIF.

" 47 the order by statement

  • Work area

*TABLES ZCOURSE.

  • Reading table entries in a specified order

*SELECT * FROM ZCOURSE

  • ORDER BY ZSTUDNAME.

  • WRITE: / ZCOURSE-ZSTUDNO,

  • ZCOURSE-ZCOURSE.

*ENDSELECT.

&----


*& Report ZEX3_1 *

*& *

&----


*& *

*& *

&----


REPORT ZEX3_1 line-count 9(3) no standard page heading message-id zmessage .

" ORDER OF EXECUTION OF EVENTS ->

" .- INITIALIZATION

" .- AT SELECTION SCREEN

" .- START-OF-SELECTION

" . GET

" . END-OF-SELECTION

" . AT LINE-SELECTION

" . AT PFN

" . AT USER-COMMAND

" .- TOP-OF-PAGE

" .- END-OF-PAGE

INITIALIZATION.

TABLES: ZCOURSE.

DATA ITAB LIKE STANDARD TABLE OF ZCOURSE WITH HEADER LINE.

PARAMETER : cus LIKE ZCOURSE-ZSTUDNO DEFAULT 212.

AT SELECTION-SCREEN.

IF cus IS INITIAL.

MESSAGE e002.

ENDIF.

START-OF-SELECTION.

PERFORM DISPLAY.

TOP-OF-PAGE.

WRITE: / 'THIS IS INNER JOIN'.

ULINE.

FORM DISPLAY.

SELECT * FROM ZCOURSE INTO TABLE ITAB WHERE ZSTUDNO = cus .

IF SY-SUBRC <> 0.

MESSAGE E002 .

ELSE.

MESSAGE S001.

ENDIF.

WRITE: (7) 'ZSTUDNO', (12) 'ZSTUDNAME' RIGHT-JUSTIFIED, (9) 'ZCOURSE' RIGHT-JUSTIFIED, 35 'ZTYPE', 41 'ZSTATUS'.

WRITE /.

LOOP AT ITAB.

WRITE: /(5) ITAB-ZSTUDNO RIGHT-JUSTIFIED, 12 ITAB-ZSTUDNAME,

24 ITAB-ZCOURSE, 37 ITAB-ZTYPE RIGHT-JUSTIFIED, 44 ITAB-ZSTATUS RIGHT-JUSTIFIED.

ENDLOOP.

WRITE /.

RESERVE 3 LINES.

ENDFORM.

END-OF-PAGE.

ULINE.

WRITE:/ 'THE INNER JOIN IS OBTAINED'.

ULINE.

REPORT ZEX3_2 .

TABLES: ZCOURSE,sscrfields,ZDIS.

type-pools slis.

data: itab like standard table of zcourse.

data title(30) type c.

data: v_fieldcat type slis_fieldcat_alv. "LVC_S_FCAT. " LVC_T_FCAT .

data : it_fieldcat type slis_t_fieldcat_alv.

data: pos type i value 1.

define field_cat.

clear v_fieldcat.

  • v_fieldcat-col_pos = pos.

v_fieldcat-fieldname = &1.

  • v_fieldcat-ref_fieldname = &2.

  • v_fieldcat-ref_tabname = &2.

v_fieldcat-key = &2.

append v_fieldcat to it_fieldcat.

pos = pos + 1.

end-of-definition.

SELECTION-SCREEN BEGIN OF BLOCK blk1 WITH FRAME.

SELECTION-SCREEN END OF BLOCK blk1.

SELECTION-SCREEN SKIP 9.

SELECTION-SCREEN PUSHBUTTON /55(15) P1 USER-COMMAND press.

SELECTION-SCREEN SKIP 1.

SELECTION-SCREEN PUSHBUTTON /55(15) P2 USER-COMMAND press1.

SELECTION-SCREEN SKIP 1.

SELECTION-SCREEN PUSHBUTTON /55(15) P3 USER-COMMAND press2.

SELECTION-SCREEN SKIP 1.

SELECTION-SCREEN PUSHBUTTON /55(15) P4 USER-COMMAND press3.

SELECTION-SCREEN SKIP 1.

SELECTION-SCREEN PUSHBUTTON /55(15) P5 USER-COMMAND press4.

DATA: ok_code LIKE sy-ucomm,

SAVE_CODE LIKE SY-UCOMM.

INITIALIZATION.

MOVE 'ZSTUDNO' TO P1.

MOVE 'STUDNAME' TO P2.

MOVE 'COURSE' TO P3.

MOVE 'TYPE' TO P4.

MOVE 'STATUS' TO P5.

AT SELECTION-SCREEN.

OK_CODE = SY-UCOMM.

CASE OK_CODE.

WHEN 'PRESS'.

CLEAR ITAB.

SELECT ZSTUDNO from ZCOURSE INTO corresponding fields of table itaB.

CLEAR POS.

field_cat 'ZSTUDNO' 'X' .

  • field_cat 'ZSTUDNO' 'ZCOURSE' 'X' '1'.

  • FCATLOG '1' '1' 'NO'(T30) 'CHAR' '1' TEXT-T03 TEXT-T03.

  • CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'

  • EXPORTING

  • IT_FIELDCAT = IT_fieldcat

  • I_DEFAULT = 'X'

  • I_SAVE = 'X'

  • TABLES

  • T_OUTTAB = ITAB

  • EXCEPTIONS

  • PROGRAM_ERROR = 1

  • OTHERS = 2.

*CALL FUNCTION 'LVC_FIELDCATALOG_MERGE'

  • EXPORTING

    • I_BUFFER_ACTIVE =

  • I_STRUCTURE_NAME = 'ZCOURSE'

    • I_CLIENT_NEVER_DISPLAY = 'X'

    • I_BYPASSING_BUFFER =

  • I_INTERNAL_TABNAME = ITAB

  • CHANGING

  • CT_FIELDCAT = IT_fieldcat

  • EXCEPTIONS

  • INCONSISTENT_INTERFACE = 1

  • PROGRAM_ERROR = 2

  • OTHERS = 3

  • .

*IF SY-SUBRC <> 0.

    • MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO

    • WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.

*ENDIF.

CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY'

EXPORTING

IT_FIELDCAT = it_fieldcat

I_DEFAULT = 'X'

I_SAVE = 'X'

TABLES

T_OUTTAB = ITAB

EXCEPTIONS

PROGRAM_ERROR = 1

OTHERS = 2.

clear v_fieldcat.

CLEAR IT_FIELDCAT.

WHEN 'PRESS1'.

CLEAR itab .

SELECT zstudnAME from ZCOURSE INTO corresponding fields of table itab.

  • define field_cat.

  • clear v_fieldcat.

  • v_fieldcat-col_pos = pos.

  • v_fieldcat-fieldname = &1.

  • v_fieldcat-ref_fieldname = &2.

  • v_fieldcat-ref_tabname = &3.

  • v_fieldcat-key = &4.

  • append v_fieldcat to it_fieldcat.

  • pos = pos + 1.

  • end-of-definition.

CLEAR POS.

field_cat 'ZSTUDNAME' 'X'.

CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY'

EXPORTING

IT_FIELDCAT = it_fieldcat

I_DEFAULT = 'X'

I_SAVE = 'X'

TABLES

T_OUTTAB = ITAB

EXCEPTIONS

PROGRAM_ERROR = 1

OTHERS = 2.

clear v_fieldcat.

CLEAR IT_FIELDCAT.

WHEN 'PRESS2'.

CLEAR itab .

SELECT zCOURSE from ZCOURSE INTO corresponding fields of table itab.

  • define field_cat.

  • clear v_fieldcat.

  • v_fieldcat-col_pos = pos.

  • v_fieldcat-fieldname = &1.

  • v_fieldcat-ref_fieldname = &2.

  • v_fieldcat-ref_tabname = &3.

  • v_fieldcat-key = &4.

  • append v_fieldcat to it_fieldcat.

  • pos = pos + 1.

  • end-of-definition.

CLEAR POS.

field_cat 'ZCOURSE' 'X'.

CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY'

EXPORTING

IT_FIELDCAT = it_fieldcat

I_DEFAULT = 'X'

I_SAVE = 'X'

TABLES

T_OUTTAB = ITAB

EXCEPTIONS

PROGRAM_ERROR = 1

OTHERS = 2.

clear v_fieldcat.

CLEAR IT_FIELDCAT.

WHEN 'PRESS3'.

CLEAR itab .

SELECT zTYPE from ZCOURSE INTO corresponding fields of table itab.

  • define field_cat.

  • clear v_fieldcat.

  • v_fieldcat-col_pos = pos.

  • v_fieldcat-fieldname = &1.

  • v_fieldcat-ref_fieldname = &2.

  • v_fieldcat-ref_tabname = &3.

  • v_fieldcat-key = &4.

  • append v_fieldcat to it_fieldcat.

  • pos = pos + 1.

  • end-of-definition.

CLEAR POS.

field_cat 'ZTYPE' 'X'.

CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY'

EXPORTING

IT_FIELDCAT = it_fieldcat

I_DEFAULT = 'X'

I_SAVE = 'X'

TABLES

T_OUTTAB = ITAB

EXCEPTIONS

PROGRAM_ERROR = 1

OTHERS = 2.

clear v_fieldcat.

CLEAR IT_FIELDCAT.

WHEN 'PRESS4'.

CLEAR itab .

SELECT zstATUS from ZCOURSE INTO corresponding fields of table itab.

  • define field_cat.

  • clear v_fieldcat.

  • v_fieldcat-col_pos = pos.

  • v_fieldcat-fieldname = &1.

  • v_fieldcat-ref_fieldname = &2.

  • v_fieldcat-ref_tabname = &3.

  • v_fieldcat-key = &4.

  • append v_fieldcat to it_fieldcat.

  • pos = pos + 1.

  • end-of-definition.

CLEAR POS.

field_cat 'ZSTATUS' 'X'.

CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY'

EXPORTING

IT_FIELDCAT = it_fieldcat

I_DEFAULT = 'X'

I_SAVE = 'X'

TABLES

T_OUTTAB = ITAB

EXCEPTIONS

PROGRAM_ERROR = 1

OTHERS = 2.

clear v_fieldcat.

CLEAR IT_FIELDCAT.

ENDCASE.

former_member187748
Active Contributor
0 Kudos

Thanks a lot for your efforts.But also tell what are the differences between all these different Reports.

Former Member
0 Kudos

Hi Arindam,

Forward the same to me at shaheen.csc@gmail.com

Shaheen

Former Member
0 Kudos

Hi,

send your email id.

asvhen

Former Member
0 Kudos

my email id

arindammukherjee64@gmail.com

Former Member
0 Kudos

PLZ send me All Reports formates

Thanks and Regards

visu (ficovisu@gmail.com)

Former Member
0 Kudos

Hi Arindam,

Forward the same reports to me yusuf_bhori@hotmail.com

Yusuf

Former Member
0 Kudos

hi how r u can u send me the material regarding z reports thanks in advance

my mail id is vpk.sap@gmail.com

venu

Former Member
0 Kudos

Hi,

This is Thiru .

can you send me material on report programs.

my mail id thirusapabap@yahoo.com

Former Member
0 Kudos

Hi!

Can plz send me the material of Reports.

MY id is vsd.divya@gmail.com

Thank you,

Regards,

Divya

Former Member
0 Kudos

hai kumar

pls send me also

my id is nm.roby@rediffmail.com

thanks

Former Member
0 Kudos

can u send some reports to nsipra@gmail.com

Advanced thanks

Former Member
0 Kudos

send me also

my mail id is psreddybiw@gmail.com