my abap practice programs
TRANSCRIPT
![Page 1: My Abap Practice Programs](https://reader036.vdocuments.us/reader036/viewer/2022081720/5532855d4a7959c5638b463a/html5/thumbnails/1.jpg)
ABAP PRACTICE PROGRAMS R.S.V.V. PRASAD RAO
1
*&---------------------------------------------------------------------*
*& Report ZPRASAD_2
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*
REPORT zprasad_2 line-count 24(2) line-size 600 no standard page heading.
TABLES : vbap.
DATA : count TYPE i.
TYPES : BEGIN OF w_mara,
matnr TYPE mara-matnr,
ersda TYPE mara-ersda,
ernam TYPE mara-ernam,
END OF w_mara.
DATA : t_mara TYPE STANDARD TABLE OF w_mara.
DATA : wa_mara TYPE w_mara.
TYPES : BEGIN OF w_makt,
matnr TYPE makt-matnr,
maktx TYPE makt-maktx,
END OF w_makt.
DATA : t_makt TYPE STANDARD TABLE OF w_makt.
DATA : wa_makt TYPE w_makt.
TYPES : BEGIN OF w_vbak,
vbeln TYPE vbak-vbeln,
ernam TYPE vbak-ernam,
vtweg TYPE vbak-vtweg,
END OF w_vbak.
DATA : t_vbak TYPE STANDARD TABLE OF w_vbak.
DATA : wa_vbak TYPE w_vbak.
TYPES : BEGIN OF w_vbap,
vbeln TYPE vbap-vbeln,
posnr TYPE vbap-posnr,
matnr TYPE vbap-matnr,
ernam TYPE vbap-ernam,
![Page 2: My Abap Practice Programs](https://reader036.vdocuments.us/reader036/viewer/2022081720/5532855d4a7959c5638b463a/html5/thumbnails/2.jpg)
ABAP PRACTICE PROGRAMS R.S.V.V. PRASAD RAO
2
END OF w_vbap.
DATA : t_vbap TYPE STANDARD TABLE OF w_vbap.
DATA : wa_vbap TYPE w_vbap.
TYPES : BEGIN OF w_result,
matnr TYPE mara-matnr,
ersda TYPE mara-ersda,
maktx TYPE makt-maktx,
vbeln TYPE vbak-vbeln,
ernam TYPE vbak-ernam,
vtweg TYPE vbak-vtweg,
posnr TYPE vbap-posnr,
END OF w_result.
DATA : t_result TYPE STANDARD TABLE OF w_result.
DATA : wa_result TYPE w_result.
SELECT-OPTIONS : v_vbeln FOR vbap-vbeln.
start-of-selection.
SELECT vbeln posnr matnr ernam INTO TABLE t_vbap FROM vbap WHERE vbeln IN v_vbeln.
SELECT vbeln ernam vtweg INTO TABLE t_vbak FROM vbak FOR ALL ENTRIES IN t_vbap WHERE vbeln = t
_vbap-vbeln.
SELECT matnr maktx INTO TABLE t_makt FROM makt FOR ALL ENTRIES IN t_vbap WHERE matnr = t_vbap
-matnr.
SELECT matnr ersda ernam INTO TABLE t_mara FROM mara FOR ALL ENTRIES IN t_vbap WHERE matnr =
t_vbap-matnr.
LOOP AT t_vbap INTO wa_vbap.
READ TABLE t_vbak INTO wa_vbak WITH KEY vbeln = wa_vbap-vbeln.
IF sy-subrc = 0.
READ TABLE t_makt INTO wa_makt WITH KEY matnr = wa_vbap-matnr.
IF sy-subrc = 0.
READ TABLE t_mara INTO wa_mara WITH KEY matnr = wa_vbap-matnr.
IF sy-subrc = 0.
wa_result-matnr = wa_vbap-matnr.
wa_result-ersda = wa_mara-ersda.
wa_result-maktx = wa_makt-maktx.
wa_result-vbeln = wa_vbap-vbeln.
wa_result-ernam = wa_mara-ernam.
![Page 3: My Abap Practice Programs](https://reader036.vdocuments.us/reader036/viewer/2022081720/5532855d4a7959c5638b463a/html5/thumbnails/3.jpg)
ABAP PRACTICE PROGRAMS R.S.V.V. PRASAD RAO
3
wa_result-vtweg = wa_vbak-vtweg.
wa_result-posnr = wa_vbap-posnr.
APPEND wa_result TO t_result.
CLEAR wa_result.
ENDIF.
ENDIF.
ENDIF.
ENDLOOP.
DESCRIBE TABLE t_result LINES count.
top-of-page.
write : 'Welcome this is a header',
/ sy-uline(40).
end-of-page.
write:'Thank You', sy-pagno.
uline.
end-of-selection.
WRITE : 'Number of records are :',count COLOR 6.
uline.
LOOP AT t_result INTO wa_result.
WRITE : / wa_result-matnr,20 wa_result-ersda,40 wa_result-maktx,80 wa_result-vbeln,100 wa_result-
ernam,120 wa_result-vtweg,130 wa_result-posnr.
ENDLOOP.
* end-of-page.
*
* write : 'This is footer'.
![Page 4: My Abap Practice Programs](https://reader036.vdocuments.us/reader036/viewer/2022081720/5532855d4a7959c5638b463a/html5/thumbnails/4.jpg)
ABAP PRACTICE PROGRAMS R.S.V.V. PRASAD RAO
4
*&---------------------------------------------------------------------*
*& Report ZPRASAD_3
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*
REPORT zprasad_3.
TABLES : marc.
DATA : count TYPE i.
TYPES : BEGIN OF w_mara,
matnr TYPE mara-matnr,
ersda TYPE mara-ersda,
ernam TYPE mara-ernam,
END OF w_mara.
DATA : t_mara TYPE STANDARD TABLE OF w_mara.
DATA : wa_mara TYPE w_mara.
TYPES : BEGIN OF w_marc,
![Page 5: My Abap Practice Programs](https://reader036.vdocuments.us/reader036/viewer/2022081720/5532855d4a7959c5638b463a/html5/thumbnails/5.jpg)
ABAP PRACTICE PROGRAMS R.S.V.V. PRASAD RAO
5
matnr TYPE marc-matnr,
werks TYPE marc-werks,
pstat TYPE marc-pstat,
END OF w_marc.
DATA : t_marc TYPE STANDARD TABLE OF w_marc.
DATA : wa_marc TYPE w_marc.
TYPES : BEGIN OF w_mard,
matnr TYPE mard-matnr,
werks TYPE mard-werks,
lgort TYPE mard-lgort,
END OF w_mard.
DATA : t_mard TYPE STANDARD TABLE OF w_mard.
DATA : wa_mard TYPE w_mard.
TYPES : BEGIN OF w_result,
matnr TYPE mara-matnr,
ersda TYPE mara-ersda,
ernam TYPE mara-ernam,
werks TYPE marc-werks,
pstat TYPE marc-pstat,
lgort TYPE mard-lgort,
END OF w_result.
DATA : t_result TYPE STANDARD TABLE OF w_result.
DATA : wa_result TYPE w_result.
SELECT-OPTIONS: s_plant FOR marc-werks.
PERFORM get_data.
PERFORM process_data.
DESCRIBE TABLE t_result LINES count.
WRITE : 'The number of records are :',count COLOR 6.
SKIP 2.
PERFORM display_data.
*&---------------------------------------------------------------------*
*& Form get_data
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
![Page 6: My Abap Practice Programs](https://reader036.vdocuments.us/reader036/viewer/2022081720/5532855d4a7959c5638b463a/html5/thumbnails/6.jpg)
ABAP PRACTICE PROGRAMS R.S.V.V. PRASAD RAO
6
* --> p1 text
* <-- p2 text
*----------------------------------------------------------------------*
FORM get_data .
SELECT matnr werks pstat FROM marc INTO TABLE t_marc WHERE werks IN s_plant.
SELECT matnr ersda ernam FROM mara INTO TABLE t_mara FOR ALL ENTRIES IN t_marc WHERE matnr
= t_marc-matnr.
perform get_item_data.
ENDFORM. " get_data
*&---------------------------------------------------------------------*
*& Form process_data
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* --> p1 text
* <-- p2 text
*----------------------------------------------------------------------*
FORM process_data .
LOOP AT t_mard INTO wa_mard.
READ TABLE t_marc INTO wa_marc WITH KEY matnr = wa_mard-matnr werks = wa_mard-werks.
IF sy-subrc = 0.
READ TABLE t_mara INTO wa_mara WITH KEY matnr = wa_mard-matnr.
IF sy-subrc = 0.
wa_result-matnr = wa_mara-matnr.
wa_result-ersda = wa_mara-ersda.
wa_result-ernam = wa_mara-ernam.
wa_result-werks = wa_marc-werks.
wa_result-pstat = wa_marc-pstat.
wa_result-lgort = wa_mard-lgort.
APPEND wa_result TO t_result.
CLEAR wa_result.
ENDIF.
ENDIF.
ENDLOOP.
ENDFORM. " process_data
*&---------------------------------------------------------------------*
*& Form display_data
*&---------------------------------------------------------------------*
![Page 7: My Abap Practice Programs](https://reader036.vdocuments.us/reader036/viewer/2022081720/5532855d4a7959c5638b463a/html5/thumbnails/7.jpg)
ABAP PRACTICE PROGRAMS R.S.V.V. PRASAD RAO
7
* text
*----------------------------------------------------------------------*
* --> p1 text
* <-- p2 text
*----------------------------------------------------------------------*
FORM display_data .
LOOP AT t_result INTO wa_result.
WRITE :/ wa_result-matnr,20 wa_result-ersda,40 wa_result-ernam,60 wa_result-werks,80 wa_result-
pstat,100 wa_result-lgort.
ENDLOOP.
ENDFORM. " display_data
*&---------------------------------------------------------------------*
*& Form get_item_data
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* --> p1 text
* <-- p2 text
*----------------------------------------------------------------------*
form get_item_data .
SELECT matnr werks lgort FROM mard INTO TABLE t_mard FOR ALL ENTRIES IN t_marc WHERE matnr = t
_marc-matnr AND werks = t_marc-werks.
endform. " get_item_data
*&---------------------------------------------------------------------*
*& Report ZPRASAD_4
*&
*&---------------------------------------------------------------------*
![Page 8: My Abap Practice Programs](https://reader036.vdocuments.us/reader036/viewer/2022081720/5532855d4a7959c5638b463a/html5/thumbnails/8.jpg)
ABAP PRACTICE PROGRAMS R.S.V.V. PRASAD RAO
8
*&
*&
*&---------------------------------------------------------------------*
REPORT zprasad_4 line-size 200.
TABLES :lips.
TYPES : BEGIN OF w_lips,
vbeln TYPE lips-vbeln,
posnr TYPE lips-posnr,
matnr TYPE lips-matnr,
ernam TYPE lips-ernam,
END OF w_lips.
DATA : t_lips TYPE STANDARD TABLE OF w_lips.
DATA : wa_lips TYPE w_lips.
TYPES : BEGIN OF w_likp,
vbeln TYPE likp-vbeln,
lifnr TYPE likp-lifnr,
werks TYPE likp-werks,
END OF w_likp.
DATA : t_likp TYPE STANDARD TABLE OF w_likp.
DATA : wa_likp TYPE w_likp.
TYPES : BEGIN OF w_ekpo,
ebeln TYPE ekpo-ebeln,
ebelp TYPE ekpo-ebelp,
matnr TYPE ekpo-matnr,
werks TYPE ekpo-werks,
END OF w_ekpo.
DATA : t_ekpo TYPE STANDARD TABLE OF w_ekpo.
DATA : wa_ekpo TYPE w_ekpo.
TYPES : BEGIN OF w_ekko,
ebeln TYPE ekko-ebeln,
ernam TYPE ekko-ernam,
lifnr type ekko-lifnr,
END OF w_ekko.
DATA : t_ekko TYPE STANDARD TABLE OF w_ekko.
DATA : wa_ekko TYPE w_ekko.
![Page 9: My Abap Practice Programs](https://reader036.vdocuments.us/reader036/viewer/2022081720/5532855d4a7959c5638b463a/html5/thumbnails/9.jpg)
ABAP PRACTICE PROGRAMS R.S.V.V. PRASAD RAO
9
DATA : count TYPE i.
TYPES : BEGIN OF w_output,
vbeln TYPE lips-vbeln,
posnr TYPE lips-posnr,
matnr TYPE lips-matnr,
ernam TYPE lips-ernam,
lifnr TYPE likp-lifnr,
werks TYPE likp-werks,
ebeln TYPE ekpo-ebeln,
ebelp TYPE ekpo-ebelp,
END OF w_output.
DATA : t_output TYPE STANDARD TABLE OF w_output.
DATA : wa_output TYPE w_output.
SELECT-OPTIONS : v_vbeln FOR lips-vbeln.
SELECT vbeln posnr matnr ernam INTO TABLE t_lips FROM lips WHERE
vbeln IN v_vbeln.
SELECT vbeln lifnr werks INTO TABLE t_likp FROM likp FOR ALL
ENTRIES IN t_lips WHERE vbeln = t_lips-vbeln.
SELECT ebeln ernam lifnr INTO TABLE t_ekko FROM ekko. "FOR ALL ENTRIES IN
"t_likp WHERE lifnr = t_likp-lifnr.
SELECT ebeln ebelp matnr werks INTO TABLE t_ekpo FROM ekpo FOR ALL
ENTRIES IN t_ekko WHERE ebeln = t_ekko-ebeln.
LOOP AT t_lips INTO wa_lips.
READ TABLE t_likp INTO wa_likp WITH KEY vbeln = wa_lips-vbeln.
IF sy-subrc = 0.
READ TABLE t_ekko INTO wa_ekko WITH KEY lifnr = wa_likp-lifnr.
IF sy-subrc = 0.
READ TABLE t_ekpo INTO wa_ekpo WITH KEY ebeln = wa_ekko-ebeln.
IF sy-subrc = 0.
wa_output-vbeln = wa_lips-vbeln.
wa_output-posnr = wa_lips-posnr.
wa_output-matnr = wa_lips-matnr.
wa_output-ernam = wa_lips-ernam.
![Page 10: My Abap Practice Programs](https://reader036.vdocuments.us/reader036/viewer/2022081720/5532855d4a7959c5638b463a/html5/thumbnails/10.jpg)
ABAP PRACTICE PROGRAMS R.S.V.V. PRASAD RAO
10
wa_output-lifnr = wa_likp-lifnr.
wa_output-werks = wa_likp-werks.
wa_output-ebeln = wa_ekpo-ebeln.
wa_output-ebelp = wa_ekpo-ebeln.
* write: 'Success'.
* skip 1.
APPEND wa_output TO t_output.
CLEAR wa_output.
ENDIF.
ENDIF.
ENDIF.
ENDLOOP.
DESCRIBE TABLE t_output LINES count.
WRITE : 'Total number of records are:',count COLOR 6.
LOOP AT t_output INTO wa_output.
WRITE : / wa_output-vbeln,sy-vline,30 wa_output-posnr,sy-vline,50 wa_output-matnr,sy-
vline,70 wa_output-ernam,sy-vline,90 wa_output-lifnr,sy-vline,
110 wa_output-werks,sy-vline,130 wa_output-ebeln,sy-vline,150 wa_output-ebelp.
ENDLOOP.
![Page 11: My Abap Practice Programs](https://reader036.vdocuments.us/reader036/viewer/2022081720/5532855d4a7959c5638b463a/html5/thumbnails/11.jpg)
ABAP PRACTICE PROGRAMS R.S.V.V. PRASAD RAO
11
*&---------------------------------------------------------------------*
*& Report ZPRASAD_5
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*
REPORT ZPRASAD_5 line-count 20(3) line-size 75.
parameters : var1 type c radiobutton group g1,
var2 type c radiobutton group g1,
var3 type c radiobutton group g1.
types : begin of w_mchb,
matnr type mchb-matnr,
clabs type mchb-clabs,
cinsm type mchb-cinsm,
cspem type mchb-cspem,
werks type mchb-werks,
lgort type mchb-lgort,
end of w_mchb.
data : t_mchb type standard table of w_mchb.
data : wa_mchb type w_mchb.
![Page 12: My Abap Practice Programs](https://reader036.vdocuments.us/reader036/viewer/2022081720/5532855d4a7959c5638b463a/html5/thumbnails/12.jpg)
ABAP PRACTICE PROGRAMS R.S.V.V. PRASAD RAO
12
types : begin of w_result,
matnr type mchb-matnr,
clabs type mchb-clabs,
cinsm type mchb-cinsm,
cspem type mchb-cspem,
werks type mchb-werks,
lgort type mchb-lgort,
end of w_result.
data : t_result type standard table of w_result.
data : wa_result type w_result.
if var1 = 'X'.
select matnr clabs cinsm cspem into table t_mchb from mchb.
loop at t_mchb into wa_mchb.
wa_result-matnr = wa_mchb-matnr.
wa_result-clabs = wa_mchb-clabs.
wa_result-cinsm = wa_mchb-cinsm.
wa_result-cspem = wa_mchb-cspem.
collect wa_result into t_result .
clear wa_result.
endloop.
loop at t_result into wa_result.
write : / sy-vline,wa_result-matnr,sy-vline,30 wa_result-clabs,sy-vline,50 wa_result-cinsm,sy-
vline,70 wa_result-cspem,sy-vline.
write : sy-uline.
endloop.
endif.
if var2 = 'X'.
select matnr clabs cinsm cspem werks into table t_mchb from mchb.
loop at t_mchb into wa_mchb.
wa_result-matnr = wa_mchb-matnr.
wa_result-werks = wa_mchb-werks.
wa_result-clabs = wa_mchb-clabs.
wa_result-cinsm = wa_mchb-cinsm.
wa_result-cspem = wa_mchb-cspem.
![Page 13: My Abap Practice Programs](https://reader036.vdocuments.us/reader036/viewer/2022081720/5532855d4a7959c5638b463a/html5/thumbnails/13.jpg)
ABAP PRACTICE PROGRAMS R.S.V.V. PRASAD RAO
13
collect wa_result into t_result.
endloop.
loop at t_result into wa_result.
write : / sy-vline,wa_result-matnr,sy-vline,30 wa_result-werks,sy-vline,50 wa_result-clabs,sy-
vline,70 wa_result-cinsm,sy-vline,90 wa_result-cspem,sy-vline.
write : sy-uline.
endloop.
endif.
if var3 = 'X'.
select matnr clabs cinsm cspem werks lgort into table t_mchb from mchb.
loop at t_mchb into wa_mchb.
wa_result-matnr = wa_mchb-matnr.
wa_result-werks = wa_mchb-werks.
wa_result-lgort = wa_mchb-lgort.
wa_result-clabs = wa_mchb-clabs.
wa_result-cinsm = wa_mchb-cinsm.
wa_result-cspem = wa_mchb-cspem.
collect wa_result into t_result.
endloop.
loop at t_result into wa_result.
write : / sy-vline,wa_result-matnr,sy-vline,30 wa_result-werks,sy-vline,50 wa_result-lgort,sy-
vline,70 wa_result-clabs,sy-vline,90 wa_result-cinsm,sy-vline,110 wa_result-cspem.
write : sy-uline.
endloop.
endif.
![Page 14: My Abap Practice Programs](https://reader036.vdocuments.us/reader036/viewer/2022081720/5532855d4a7959c5638b463a/html5/thumbnails/14.jpg)
ABAP PRACTICE PROGRAMS R.S.V.V. PRASAD RAO
14
*&---------------------------------------------------------------------*
*& Report ZPRASAD_6
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*
REPORT zprasad_6.
TABLES : sflight.
![Page 15: My Abap Practice Programs](https://reader036.vdocuments.us/reader036/viewer/2022081720/5532855d4a7959c5638b463a/html5/thumbnails/15.jpg)
ABAP PRACTICE PROGRAMS R.S.V.V. PRASAD RAO
15
PARAMETERS : vbak TYPE c RADIOBUTTON GROUP g1,
bkpf TYPE c RADIOBUTTON GROUP g1,
bsis TYPE c RADIOBUTTON GROUP g1,
erdat RADIOBUTTON GROUP g1,
carrid TYPE c RADIOBUTTON GROUP g1,
cid(2) TYPE c,
sflite TYPE c RADIOBUTTON GROUP g1,
fldt TYPE sflight-fldate,
btwn TYPE c RADIOBUTTON GROUP g1.
SELECT-OPTIONS : carid FOR sflight-carrid.
parameters : single TYPE c RADIOBUTTON GROUP g1,
weight type c radiobutton group g1,
from1 type spfli-airpfrom,
to1 type spfli-airpto.
parameters : doc type c radiobutton group g1,
docno type vbap-vbeln default '0000004974'.
TYPES : BEGIN OF w_vbak,
vbeln TYPE vbak-vbeln,
erdat TYPE vbak-erdat,
ernam TYPE vbak-ernam,
submi TYPE vbak-submi,
END OF w_vbak.
DATA : t_vbak TYPE STANDARD TABLE OF w_vbak.
DATA : wa_vbak TYPE w_vbak.
TYPES : BEGIN OF w_bkpf,
bukrs TYPE bkpf-bukrs,
belnr TYPE bkpf-belnr,
blart TYPE bkpf-blart,
END OF w_bkpf.
DATA : t_bkpf TYPE STANDARD TABLE OF w_bkpf.
DATA : wa_bkpf TYPE w_bkpf.
TYPES : BEGIN OF w_bsis,
bukrs TYPE bsis-bukrs,
budat TYPE bsis-budat,
blart TYPE bsis-blart,
![Page 16: My Abap Practice Programs](https://reader036.vdocuments.us/reader036/viewer/2022081720/5532855d4a7959c5638b463a/html5/thumbnails/16.jpg)
ABAP PRACTICE PROGRAMS R.S.V.V. PRASAD RAO
16
END OF w_bsis.
DATA : t_bsis TYPE STANDARD TABLE OF w_bsis.
DATA : wa_bsis TYPE w_bsis.
TYPES : BEGIN OF w_erdat,
erdat TYPE vbak-erdat,
erdat1 TYPE likp-erdat,
END OF w_erdat.
DATA : t_erdat TYPE STANDARD TABLE OF w_erdat.
DATA : wa_erdat TYPE w_erdat.
DATA : total TYPE p DECIMALS 3.
TYPES : BEGIN OF w_flight,
carrid TYPE sflight-carrid,
END OF w_flight.
DATA : t_flight TYPE STANDARD TABLE OF w_flight.
DATA : wa_flight TYPE w_flight.
TYPES : BEGIN OF w_flite,
carrid TYPE sflight-carrid,
connid TYPE sflight-connid,
fldate TYPE sflight-fldate,
price TYPE sflight-price,
END OF w_flite.
DATA : t_flite TYPE STANDARD TABLE OF w_flite.
DATA : wa_flite TYPE w_flite.
types : begin of w_spfli,
carrid type spfli-carrid,
airpfrom type spfli-airpfrom,
airpto type spfli-airpto,
deptime type spfli-deptime,
end of w_spfli.
data : t_spfli type standard table of w_spfli.
data : wa_spfli type w_spfli.
types : begin of w_vbap,
![Page 17: My Abap Practice Programs](https://reader036.vdocuments.us/reader036/viewer/2022081720/5532855d4a7959c5638b463a/html5/thumbnails/17.jpg)
ABAP PRACTICE PROGRAMS R.S.V.V. PRASAD RAO
17
vbeln type vbap-vbeln,
erdat type vbap-erdat,
ernam type vbap-ernam,
erzet type vbap-erzet,
end of w_vbap.
data :t_vbap type standard table of w_vbap.
data : wa_vbap type w_vbap.
IF vbak = 'X'.
SELECT vbeln erdat ernam submi INTO TABLE t_vbak FROM vbak.
SORT t_vbak BY vbeln ASCENDING.
DATA : count TYPE i.
DESCRIBE TABLE t_vbak LINES count.
WRITE :'Number of rows:',count COLOR 6.
SKIP 1.
LOOP AT t_vbak INTO wa_vbak.
WRITE :/ wa_vbak-vbeln,20 wa_vbak-erdat,40 wa_vbak-ernam,50 wa_vbak-submi.
SKIP 1.
ENDLOOP.
ENDIF.
IF bkpf = 'X'.
SELECT SINGLE bukrs belnr blart INTO wa_bkpf FROM bkpf.
WRITE :/ wa_bkpf-bukrs,20 wa_bkpf-belnr,40 wa_bkpf-blart.
SKIP 1.
ENDIF.
IF bsis = 'X'.
SELECT bukrs budat blart UP TO 5 ROWS FROM bsis INTO TABLE t_bsis.
IF t_bsis IS NOT INITIAL.
LOOP AT t_bsis INTO wa_bsis.
WRITE :/ sy-vline,wa_bsis-bukrs,sy-vline,20 wa_bsis-budat,sy-vline,40 wa_bsis-blart.
WRITE : sy-uline.
![Page 18: My Abap Practice Programs](https://reader036.vdocuments.us/reader036/viewer/2022081720/5532855d4a7959c5638b463a/html5/thumbnails/18.jpg)
ABAP PRACTICE PROGRAMS R.S.V.V. PRASAD RAO
18
ENDLOOP.
SKIP 2.
ENDIF.
ENDIF.
IF erdat = 'X'.
SELECT erdat INTO TABLE t_erdat FROM vbak.
IF sy-subrc = 0.
SELECT erdat INTO TABLE t_erdat FROM likp .
IF sy-subrc = 0.
LOOP AT t_erdat INTO wa_erdat.
WRITE :/ wa_erdat-erdat,20 wa_erdat-erdat1.
ENDLOOP.
ENDIF.
ENDIF.
ENDIF.
IF carrid = 'X'.
SELECT SUM( price ) FROM sflight INTO total WHERE carrid = cid.
WRITE : 'The Total amount for all Carrid where id =LH is ',total.
ENDIF.
IF sflite = 'X'.
SELECT carrid FROM sflight INTO TABLE t_flight WHERE fldate GT fldt.
LOOP AT t_flight INTO wa_flight.
WRITE : wa_flight-carrid.
SKIP 1.
ENDLOOP.
ENDIF.
IF btwn = 'X'.
SELECT carrid FROM sflight INTO TABLE t_flight WHERE carrid IN carid.
LOOP AT t_flight INTO wa_flight.
WRITE : wa_flight-carrid.
SKIP 1.
ENDLOOP.
ENDIF.
![Page 19: My Abap Practice Programs](https://reader036.vdocuments.us/reader036/viewer/2022081720/5532855d4a7959c5638b463a/html5/thumbnails/19.jpg)
ABAP PRACTICE PROGRAMS R.S.V.V. PRASAD RAO
19
IF single ='X'.
SELECT SINGLE carrid connid fldate price FROM sflight INTO wa_flite WHERE carrid ='LH' AND connid =
0400 AND fldate = fldt.
WRITE : / wa_flite-carrid,20 wa_flite-connid,40 wa_flite-fldate,60 wa_flite-price.
ENDIF.
if weight = 'X'.
select carrid airpfrom airpto deptime from spfli into table t_spfli where airpfrom = from1 and airpto = to
1.
loop at t_spfli into wa_spfli.
write :/ wa_spfli-carrid,sy-vline,20 wa_spfli-deptime,sy-vline,40 wa_spfli-airpfrom,sy-vline,60 wa_spfli-
airpto.
write : sy-uline.
endloop.
endif.
if doc = 'X'.
select single vbeln erdat ernam erzet from vbap into wa_vbap where vbeln = docno.
write : / wa_vbap-vbeln,20 wa_vbap-erdat,40 wa_vbap-ernam,60 wa_vbap-erzet.
endif.
![Page 20: My Abap Practice Programs](https://reader036.vdocuments.us/reader036/viewer/2022081720/5532855d4a7959c5638b463a/html5/thumbnails/20.jpg)
ABAP PRACTICE PROGRAMS R.S.V.V. PRASAD RAO
20
*&---------------------------------------------------------------------*
*& Report ZPRASAD_7
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*
REPORT ZPRASAD_7 line-count 20(3) LINE-SIZE 75.
types : begin of w_flight,
carrid type sflight-carrid,
connid type sflight-connid,
fldate type sflight-fldate,
price type sflight-price,
end of w_flight.
data : t_flight type standard table of w_flight.
data : wa_flight type w_flight.
data : v_sub type sflight-price,v_grand type sflight-price.
![Page 21: My Abap Practice Programs](https://reader036.vdocuments.us/reader036/viewer/2022081720/5532855d4a7959c5638b463a/html5/thumbnails/21.jpg)
ABAP PRACTICE PROGRAMS R.S.V.V. PRASAD RAO
21
select carrid connid fldate price from sflight into table t_flight.
loop at t_flight into wa_flight.
at first.
write :/'Price Report'.
endat.
at new carrid.
write :/10 wa_flight-carrid.
write sy-uline.
endat.
v_sub = v_sub + wa_flight-price.
v_grand = v_grand + wa_flight-price.
write :/ wa_flight-connid,20 wa_flight-fldate,40 wa_flight-price.
at end of carrid.
skip 1.
write :/70 'Sub Total :',v_sub.
write : sy-uline.
clear v_sub.
endat.
at last.
skip 1.
write :/70 'Grand Total :',v_grand.
endat.
endloop.
*&---------------------------------------------------------------------*
*& Report ZPRASAD_8
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*
REPORT zprasad_8.
write: sy-pagno.
TYPES : BEGIN OF w_mchb,
matnr TYPE mchb-matnr,
![Page 22: My Abap Practice Programs](https://reader036.vdocuments.us/reader036/viewer/2022081720/5532855d4a7959c5638b463a/html5/thumbnails/22.jpg)
ABAP PRACTICE PROGRAMS R.S.V.V. PRASAD RAO
22
werks TYPE mchb-werks,
lgort TYPE mchb-lgort,
clabs TYPE mchb-clabs,
cinsm TYPE mchb-cinsm,
cspem TYPE mchb-cspem,
END OF w_mchb.
DATA : t_mchb TYPE STANDARD TABLE OF w_mchb.
DATA : wa_mchb TYPE w_mchb.
DATA : sub TYPE mchb-clabs, sub1 TYPE p, sub2 TYPE p, grand TYPE mchb-clabs.
SELECT matnr werks lgort clabs cinsm cspem FROM mchb INTO TABLE t_mchb.
sort t_mchb by matnr.
LOOP AT t_mchb INTO wa_mchb.
AT FIRST.
WRITE : /'Price Report for Quality,blocked & unrestricted stocks'.
SKIP 1.
WRITE : sy-uline.
ENDAT.
AT NEW matnr.
WRITE :/ 'Material Number :',wa_mchb-matnr color 7.
SKIP 1.
ENDAT.
sub = sub + wa_mchb-clabs.
sub1 = sub1 + wa_mchb-cinsm.
sub2 = sub2 + wa_mchb-cspem.
grand = grand + wa_mchb-clabs + wa_mchb-cinsm + wa_mchb-cspem.
WRITE :/40 wa_mchb-werks,60 wa_mchb-clabs,80 wa_mchb-cinsm,100 wa_mchb-cspem.
AT END OF matnr.
WRITE : sy-uline.
WRITE :/90 'Sub Total Unrestricted Stock:',sub COLOR 1,/90 'Sub Total Quality Stock :',sub1 COLOR 2,/
90 'Sub Total Blocked Stock :',sub2 COLOR 3.
SKIP 1.
CLEAR : sub,sub1,sub2.
WRITE : sy-uline.
ENDAT.
AT LAST.
![Page 23: My Abap Practice Programs](https://reader036.vdocuments.us/reader036/viewer/2022081720/5532855d4a7959c5638b463a/html5/thumbnails/23.jpg)
ABAP PRACTICE PROGRAMS R.S.V.V. PRASAD RAO
23
WRITE :/107 'Grand Total :',grand COLOR 6.
ENDAT.
ENDLOOP.
*&---------------------------------------------------------------------*
*& Report ZPRASAD_9
![Page 24: My Abap Practice Programs](https://reader036.vdocuments.us/reader036/viewer/2022081720/5532855d4a7959c5638b463a/html5/thumbnails/24.jpg)
ABAP PRACTICE PROGRAMS R.S.V.V. PRASAD RAO
24
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*
REPORT ZPRASAD_9.
data : t_flight type standard table of sflight.
data : wa_flight type sflight.
select * from sflight into table t_flight.
loop at t_flight into wa_flight.
write :/ wa_flight-carrid,20 wa_flight-connid,30 wa_flight-fldate,50 wa_flight-price.
skip 1.
endloop.
![Page 25: My Abap Practice Programs](https://reader036.vdocuments.us/reader036/viewer/2022081720/5532855d4a7959c5638b463a/html5/thumbnails/25.jpg)
ABAP PRACTICE PROGRAMS R.S.V.V. PRASAD RAO
25
*&---------------------------------------------------------------------*
*& Report ZPRASAD_10
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*
REPORT zprasad_10.
TYPES : BEGIN OF w_vbap,
matnr TYPE vbap-matnr,
maktx TYPE makt-maktx,
END OF w_vbap.
DATA : t_vbap TYPE STANDARD TABLE OF w_vbap.
DATA : wa_vbap TYPE w_vbap.
PARAMETERS : mat TYPE vbap-matnr.
data :pstyv TYPE vbap-pstyv.
SELECT pstyv INTO pstyv FROM vbap WHERE matnr = mat.
endselect.
IF sy-subrc = 0.
SELECT matnr maktx INTO CORRESPONDING FIELDS OF TABLE t_vbap FROM makt WHERE matnr = mat.
IF sy-subrc = 0.
LOOP AT t_vbap INTO wa_vbap.
WRITE :/ wa_vbap-matnr,40 pstyv,50 wa_vbap-maktx.
ENDLOOP.
ENDIF.
ENDIF.
![Page 26: My Abap Practice Programs](https://reader036.vdocuments.us/reader036/viewer/2022081720/5532855d4a7959c5638b463a/html5/thumbnails/26.jpg)
ABAP PRACTICE PROGRAMS R.S.V.V. PRASAD RAO
26
*&---------------------------------------------------------------------*
*& Report ZPRASAD_11
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*
REPORT ZPRASAD_11.
types : begin of w_vbap,
vbeln type vbap-vbeln,
posnr type vbap-posnr,
matnr type vbap-matnr,
end of w_vbap.
data : t_vbap type standard table of w_vbap .
data : wa_vbap type w_vbap,count type i.
parameters : n type i .
select vbeln posnr matnr from vbap into table t_vbap .
describe table t_vbap lines count.
write :'Number of records are:',count.
skip 1.
read table t_vbap into wa_vbap index n.
write :/ wa_vbap-vbeln,30 wa_vbap-posnr,50 wa_vbap-matnr.
![Page 27: My Abap Practice Programs](https://reader036.vdocuments.us/reader036/viewer/2022081720/5532855d4a7959c5638b463a/html5/thumbnails/27.jpg)
ABAP PRACTICE PROGRAMS R.S.V.V. PRASAD RAO
27
*&---------------------------------------------------------------------*
*& Report ZPRASAD_12
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*
REPORT ZPRASAD_12 message-id ZPRASAD_MSG.
parameters : var1(10) type c.
if var1 = 'PRASAD'.
message i000.
endif.
ZPRASAD_MSG
![Page 28: My Abap Practice Programs](https://reader036.vdocuments.us/reader036/viewer/2022081720/5532855d4a7959c5638b463a/html5/thumbnails/28.jpg)
ABAP PRACTICE PROGRAMS R.S.V.V. PRASAD RAO
28
*&---------------------------------------------------------------------*
*& Report ZPRASAD_13
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*
REPORT ZPRASAD_13.
data : var1(4) type c value 'echo', len type i, x type i value 1.
len = strlen( var1 ).
while x <= len.
write at len(x) var1.
skip 1.
x = x + 1.
endwhile.
![Page 29: My Abap Practice Programs](https://reader036.vdocuments.us/reader036/viewer/2022081720/5532855d4a7959c5638b463a/html5/thumbnails/29.jpg)
ABAP PRACTICE PROGRAMS R.S.V.V. PRASAD RAO
29
x = 4.
len = 3.
while len > 0.
write at x(len) var1.
skip 1.
len = len - 1.
endwhile.
OUTPUT :
![Page 30: My Abap Practice Programs](https://reader036.vdocuments.us/reader036/viewer/2022081720/5532855d4a7959c5638b463a/html5/thumbnails/30.jpg)
ABAP PRACTICE PROGRAMS R.S.V.V. PRASAD RAO
30
*&---------------------------------------------------------------------*
*& Report ZPRASAD_14
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*
REPORT ZPRASAD_14.
types : begin of w_mard,
matnr type mard-matnr,
werks type mard-werks,
lgort type mard-lgort,
end of w_mard.
data : t_mard type standard table of w_mard.
data : wa_mard type w_mard.
parameters : n type i.
perform data_retrieve.
perform data_display.
perform data_read.
*perform data_delete.
*
![Page 31: My Abap Practice Programs](https://reader036.vdocuments.us/reader036/viewer/2022081720/5532855d4a7959c5638b463a/html5/thumbnails/31.jpg)
ABAP PRACTICE PROGRAMS R.S.V.V. PRASAD RAO
31
*perform data_collect.
form data_retrieve .
select matnr werks lgort up to 10 rows from mard into table t_mard.
write : 'You data is successfully retrieved'.
skip 5.
* perform data_display.
endform. " data_retrieve
form data_read .
skip 3.
write : 'data Read :'.
skip 3.
read table t_mard into wa_mard index n.
write : wa_mard-matnr,30 wa_mard-werks,50 wa_mard-lgort.
endform. " data_read
form data_display .
write : sy-uline.
loop at t_mard into wa_mard.
write : sy-vline,wa_mard-matnr,sy-vline,30 wa_mard-werks,sy-vline,50 wa_mard-lgort,sy-vline.
write :sy-uline.
endloop.
endform. " data_display
form data_delete .
endform. " data_delete
![Page 32: My Abap Practice Programs](https://reader036.vdocuments.us/reader036/viewer/2022081720/5532855d4a7959c5638b463a/html5/thumbnails/32.jpg)
ABAP PRACTICE PROGRAMS R.S.V.V. PRASAD RAO
32
*&---------------------------------------------------------------------*
*& Report ZPRASAD_16
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*
REPORT ZPRASAD_16.
data: dat type d,dat1 type d.
dat = '20120829'.
dat1 = '20120119'.
data : x type i,y type i, z type i.
x = dat+4(2).
![Page 33: My Abap Practice Programs](https://reader036.vdocuments.us/reader036/viewer/2022081720/5532855d4a7959c5638b463a/html5/thumbnails/33.jpg)
ABAP PRACTICE PROGRAMS R.S.V.V. PRASAD RAO
33
y = dat1+4(2).
z = x - y.
write : /10 z.
write : sy-pagno.
FUNCTION MODULES
*&---------------------------------------------------------------------*
*& Report ZPRASAD_17
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*
REPORT ZPRASAD_17.
![Page 34: My Abap Practice Programs](https://reader036.vdocuments.us/reader036/viewer/2022081720/5532855d4a7959c5638b463a/html5/thumbnails/34.jpg)
ABAP PRACTICE PROGRAMS R.S.V.V. PRASAD RAO
34
data : t_data type standard table of mard.
data : wa_mard type mard,var2 type c.
parameters : s_plant type mard-werks.
CALL FUNCTION 'ZPRASAD_1_4'
EXPORTING
s_plant = s_plant
IMPORTING
VAR1 = var2
tables
t_mard = t_data.
perform display_table .
form display_table .
skip 1.
loop at t_data into wa_mard.
write : / wa_mard-matnr,sy-vline,30 wa_mard-werks,sy-vline,40 wa_mard-lgort,sy-vline.
write : sy-uline.
endloop.
endform.
.
" display_table
code in function module zprasad_1_4
TRANSACTION CODE FOR FUNCTION MODULES IS SE37
FUNCTION ZPRASAD_1_4.
*"----------------------------------------------------------------------
*"*"Local Interface:
*" IMPORTING
*" REFERENCE(S_PLANT) TYPE WERKS_D
*" EXPORTING
*" REFERENCE(VAR1) TYPE C
*" TABLES
*" T_MARD STRUCTURE MARD
*"----------------------------------------------------------------------
![Page 35: My Abap Practice Programs](https://reader036.vdocuments.us/reader036/viewer/2022081720/5532855d4a7959c5638b463a/html5/thumbnails/35.jpg)
ABAP PRACTICE PROGRAMS R.S.V.V. PRASAD RAO
35
select * from mard into table t_mard where werks = s_plant.
if sy-subrc = 0.
var1 = 'Success'.
endif.
ENDFUNCTION.
screens of function module settings :
![Page 36: My Abap Practice Programs](https://reader036.vdocuments.us/reader036/viewer/2022081720/5532855d4a7959c5638b463a/html5/thumbnails/36.jpg)
ABAP PRACTICE PROGRAMS R.S.V.V. PRASAD RAO
36
![Page 37: My Abap Practice Programs](https://reader036.vdocuments.us/reader036/viewer/2022081720/5532855d4a7959c5638b463a/html5/thumbnails/37.jpg)
ABAP PRACTICE PROGRAMS R.S.V.V. PRASAD RAO
37
![Page 38: My Abap Practice Programs](https://reader036.vdocuments.us/reader036/viewer/2022081720/5532855d4a7959c5638b463a/html5/thumbnails/38.jpg)
ABAP PRACTICE PROGRAMS R.S.V.V. PRASAD RAO
38
![Page 39: My Abap Practice Programs](https://reader036.vdocuments.us/reader036/viewer/2022081720/5532855d4a7959c5638b463a/html5/thumbnails/39.jpg)
ABAP PRACTICE PROGRAMS R.S.V.V. PRASAD RAO
39
![Page 40: My Abap Practice Programs](https://reader036.vdocuments.us/reader036/viewer/2022081720/5532855d4a7959c5638b463a/html5/thumbnails/40.jpg)
ABAP PRACTICE PROGRAMS R.S.V.V. PRASAD RAO
40
*&---------------------------------------------------------------------*
*& Report ZPRASAD_19
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*
REPORT ZPRASAD_19.
parameters : s_carrid type S_CARR_ID.
data : t_result type standard table of sflight.
data : wa_sflight type sflight.
data : result type i,result1 type i.
CALL FUNCTION 'ZPRASAD_1_5'
EXPORTING
s_carrid = s_carrid
IMPORTING
RESULT = result
tables
t_sflight = t_result
changing
result1 = result1
.
loop at t_result into wa_sflight.
write :/ wa_sflight-carrid,30 wa_sflight-connid,50 wa_sflight-carrid,70 wa_sflight-price.
endloop.
skip 3.
write : 80 result color 1, 100 result1 color 6.
CODE FOR FUNCTION MODULE ZPRASAD_1_5 :
![Page 41: My Abap Practice Programs](https://reader036.vdocuments.us/reader036/viewer/2022081720/5532855d4a7959c5638b463a/html5/thumbnails/41.jpg)
ABAP PRACTICE PROGRAMS R.S.V.V. PRASAD RAO
41
![Page 42: My Abap Practice Programs](https://reader036.vdocuments.us/reader036/viewer/2022081720/5532855d4a7959c5638b463a/html5/thumbnails/42.jpg)
ABAP PRACTICE PROGRAMS R.S.V.V. PRASAD RAO
42
![Page 43: My Abap Practice Programs](https://reader036.vdocuments.us/reader036/viewer/2022081720/5532855d4a7959c5638b463a/html5/thumbnails/43.jpg)
ABAP PRACTICE PROGRAMS R.S.V.V. PRASAD RAO
43
![Page 44: My Abap Practice Programs](https://reader036.vdocuments.us/reader036/viewer/2022081720/5532855d4a7959c5638b463a/html5/thumbnails/44.jpg)
ABAP PRACTICE PROGRAMS R.S.V.V. PRASAD RAO
44
![Page 45: My Abap Practice Programs](https://reader036.vdocuments.us/reader036/viewer/2022081720/5532855d4a7959c5638b463a/html5/thumbnails/45.jpg)
ABAP PRACTICE PROGRAMS R.S.V.V. PRASAD RAO
45
IN THE SOURCE CODE TAB IMPLEMENT THE LOGIC GIVEN BELOW :
FUNCTION ZPRASAD_1_5.
*"----------------------------------------------------------------------
*"*"Local Interface:
*" IMPORTING
*" REFERENCE(S_CARRID) TYPE S_CARR_ID
*" EXPORTING
*" REFERENCE(RESULT) TYPE I
*" TABLES
*" T_SFLIGHT STRUCTURE SFLIGHT
*" CHANGING
*" REFERENCE(RESULT1) TYPE I
*"----------------------------------------------------------------------
data : wa_sflight type sflight.
select * from sflight into table t_sflight where carrid = s_carrid.
![Page 46: My Abap Practice Programs](https://reader036.vdocuments.us/reader036/viewer/2022081720/5532855d4a7959c5638b463a/html5/thumbnails/46.jpg)
ABAP PRACTICE PROGRAMS R.S.V.V. PRASAD RAO
46
loop at t_sflight into wa_sflight.
at new carrid.
write : / wa_sflight-carrid.
skip 1.
endat.
result = result + wa_sflight-price.
result1 = result * 2.
endloop.
ENDFUNCTION.
![Page 47: My Abap Practice Programs](https://reader036.vdocuments.us/reader036/viewer/2022081720/5532855d4a7959c5638b463a/html5/thumbnails/47.jpg)
ABAP PRACTICE PROGRAMS R.S.V.V. PRASAD RAO
47
*&---------------------------------------------------------------------*
*& Report ZPRASAD_20
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*
REPORT ZPRASAD_20.
start-of-selection .
write : 'Click me'.
message s888(zprasad_msgs) with text-001.
at line-selection.
if sy-lsind = 1.
message i001(zprasad_msgs) with text-002.
endif.
if sy-lsind = 2.
message w003(zprasad_msgs) with text-003 sy-lsind text-003.
endif.
![Page 48: My Abap Practice Programs](https://reader036.vdocuments.us/reader036/viewer/2022081720/5532855d4a7959c5638b463a/html5/thumbnails/48.jpg)
ABAP PRACTICE PROGRAMS R.S.V.V. PRASAD RAO
48
*&---------------------------------------------------------------------*
*& Report ZPRASAD_21
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*
REPORT ZPRASAD_21.
data : result type i.
selection-screen : begin of block b1 with frame title text-001.
parameters : var1 type i,var2 type i.
selection-screen : end of block b1.
selection-screen : begin of block b2 with frame title text-002.
parameters : c1 type c radiobutton group g1,
c2 type c radiobutton group g1.
selection-screen : end of block b2.
if c1 = 'X'.
result = var1 + var2.
endif.
if c2 ='X'.
result = var1 - var2.
endif.
format hotspot on.
write : 'Click here to see the result' color 6.
![Page 49: My Abap Practice Programs](https://reader036.vdocuments.us/reader036/viewer/2022081720/5532855d4a7959c5638b463a/html5/thumbnails/49.jpg)
ABAP PRACTICE PROGRAMS R.S.V.V. PRASAD RAO
49
format hotspot off.
at line-selection.
SELECTION-SCREEN : begin of block b3 with frame title text-003.
write :'Result of addition is:',result.
selection-screen : end of block b3.
OUTPUT :
PRESS F8
![Page 50: My Abap Practice Programs](https://reader036.vdocuments.us/reader036/viewer/2022081720/5532855d4a7959c5638b463a/html5/thumbnails/50.jpg)
ABAP PRACTICE PROGRAMS R.S.V.V. PRASAD RAO
50
PLACE THE CURSOR ON THE TEXT (LINE SELECTION EVENT)
![Page 51: My Abap Practice Programs](https://reader036.vdocuments.us/reader036/viewer/2022081720/5532855d4a7959c5638b463a/html5/thumbnails/51.jpg)
ABAP PRACTICE PROGRAMS R.S.V.V. PRASAD RAO
51
![Page 52: My Abap Practice Programs](https://reader036.vdocuments.us/reader036/viewer/2022081720/5532855d4a7959c5638b463a/html5/thumbnails/52.jpg)
ABAP PRACTICE PROGRAMS R.S.V.V. PRASAD RAO
52
*&---------------------------------------------------------------------*
*& Report ZPRASAD_22
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*
REPORT ZPRASAD_22.
parameters : s_city type zcityinfo-city_name,
code_c type znum20.
data : dist type zchar20.
data : t_result type standard table of zcityinfo,code1 type znum20.
.
CALL FUNCTION 'ZPRASAD_1_7'
EXPORTING
s_city_name = s_city
code1 = code_c
IMPORTING
DISTRICT = dist
tables
t_cityinfo = t_result
changing
code = code1.
.
write :/'The city for which data is retrieved',s_city.
skip 1.
write :/'The district which is obtained from database',dist.
skip 1.
write :/'The data that is fetched and updated back to the database table sis:',code1.
FUNCTION MODULE OF ZPRASAD_1_7
![Page 53: My Abap Practice Programs](https://reader036.vdocuments.us/reader036/viewer/2022081720/5532855d4a7959c5638b463a/html5/thumbnails/53.jpg)
ABAP PRACTICE PROGRAMS R.S.V.V. PRASAD RAO
53
CODE IN SOURCE CODE :
FUNCTION ZPRASAD_1_7.
*"----------------------------------------------------------------------
*"*"Local Interface:
*" IMPORTING
*" REFERENCE(S_CITY_NAME) TYPE ZCHAR20
*" REFERENCE(CODE1) TYPE ZNUM20
*" EXPORTING
*" REFERENCE(DISTRICT) TYPE ZCHAR20
*" TABLES
*" T_CITYINFO STRUCTURE ZCITYINFO
*" CHANGING
*" REFERENCE(CODE) TYPE ZNUM20
*"----------------------------------------------------------------------
*parameters : s_city_name type zchar20.
select * into table t_cityinfo from zcityinfo where city_name = s_city_name.
loop at t_cityinfo into wa_cityinfo.
district = wa_cityinfo-district.
endloop.
update zcityinfo set CITY_STD_CODE = code1 where district = district.
select single city_std_code from zcityinfo into code where city_name = s_city_name.
if sy-subrc = 0.
write: 'Successfully populated'.
endif.
skip 1.
ENDFUNCTION.
![Page 54: My Abap Practice Programs](https://reader036.vdocuments.us/reader036/viewer/2022081720/5532855d4a7959c5638b463a/html5/thumbnails/54.jpg)
ABAP PRACTICE PROGRAMS R.S.V.V. PRASAD RAO
54
![Page 55: My Abap Practice Programs](https://reader036.vdocuments.us/reader036/viewer/2022081720/5532855d4a7959c5638b463a/html5/thumbnails/55.jpg)
ABAP PRACTICE PROGRAMS R.S.V.V. PRASAD RAO
55
![Page 56: My Abap Practice Programs](https://reader036.vdocuments.us/reader036/viewer/2022081720/5532855d4a7959c5638b463a/html5/thumbnails/56.jpg)
ABAP PRACTICE PROGRAMS R.S.V.V. PRASAD RAO
56
![Page 57: My Abap Practice Programs](https://reader036.vdocuments.us/reader036/viewer/2022081720/5532855d4a7959c5638b463a/html5/thumbnails/57.jpg)
ABAP PRACTICE PROGRAMS R.S.V.V. PRASAD RAO
57
![Page 58: My Abap Practice Programs](https://reader036.vdocuments.us/reader036/viewer/2022081720/5532855d4a7959c5638b463a/html5/thumbnails/58.jpg)
ABAP PRACTICE PROGRAMS R.S.V.V. PRASAD RAO
58
OUTPUT :
![Page 59: My Abap Practice Programs](https://reader036.vdocuments.us/reader036/viewer/2022081720/5532855d4a7959c5638b463a/html5/thumbnails/59.jpg)
ABAP PRACTICE PROGRAMS R.S.V.V. PRASAD RAO
59
![Page 60: My Abap Practice Programs](https://reader036.vdocuments.us/reader036/viewer/2022081720/5532855d4a7959c5638b463a/html5/thumbnails/60.jpg)
ABAP PRACTICE PROGRAMS R.S.V.V. PRASAD RAO
60
-PROGRAMS TILL AUGUST 31ST 2012 SINCE AUGUST 1ST
![Page 61: My Abap Practice Programs](https://reader036.vdocuments.us/reader036/viewer/2022081720/5532855d4a7959c5638b463a/html5/thumbnails/61.jpg)
ABAP PRACTICE PROGRAMS R.S.V.V. PRASAD RAO
61
*&---------------------------------------------------------------------*
*& Report ZPRASAD_24
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*
REPORT zprasad_24.
DATA : t_cityinfo TYPE STANDARD TABLE OF zcityinfo.
DATA : wa1_cityinfo TYPE zcityinfo.
DATA : wa_cityinfo TYPE zcityinfo,wa_cityinfo2 LIKE wa_cityinfo.
DATA : dis TYPE char20,y TYPE i VALUE 0.
SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE text-001.
PARAMETERS : cityname TYPE zchar20," OBLIGATORY,
stdcode TYPE znum5," OBLIGATORY,
district TYPE zchar25." OBLIGATORY.
SELECTION-SCREEN SKIP 1.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN : POSITION 42.
PARAMETERS : insert AS CHECKBOX.
SELECTION-SCREEN COMMENT 44(15) text-003.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN END OF BLOCK b1.
SELECTION-SCREEN BEGIN OF BLOCK b2 WITH FRAME TITLE text-002.
SELECT-OPTIONS : select FOR wa_cityinfo-city_name.
PARAMETERS : delete AS CHECKBOX.
SELECTION-SCREEN END OF BLOCK b2.
SELECTION-SCREEN BEGIN OF BLOCK b3 WITH FRAME TITLE text-004.
PARAMETERS : cname TYPE zchar20,
code TYPE znum5,
distr TYPE zchar25 ,
distr1 TYPE zchar25 NO-DISPLAY.
SELECTION-SCREEN SKIP 1.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN POSITION 42.
PARAMETERS : update AS CHECKBOX.
SELECTION-SCREEN COMMENT 44(6) text-005.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN END OF BLOCK b3.
wa_cityinfo-city_name = cityname.
wa_cityinfo-city_std_code = stdcode.
![Page 62: My Abap Practice Programs](https://reader036.vdocuments.us/reader036/viewer/2022081720/5532855d4a7959c5638b463a/html5/thumbnails/62.jpg)
ABAP PRACTICE PROGRAMS R.S.V.V. PRASAD RAO
62
wa_cityinfo-district = district.
IF insert = 'X'.
SELECT city_name city_std_code FROM zcityinfo INTO TABLE t_cityinfo WHERE c
ity_name = cityname OR city_std_code = stdcode. .
IF sy-subrc = 0.
MESSAGE i001(zinertsmsg).
ELSE.
INSERT zcityinfo FROM wa_cityinfo .
IF sy-subrc = 0.
MESSAGE i000(zinertsmsg) .
ENDIF.
ENDIF.
ENDIF.
AT SELECTION-SCREEN OUTPUT.
SELECT SINGLE city_name city_std_code district FROM zcityinfo INTO wa_cityi
nfo2 WHERE city_name = cname.
IF SY-SUBRC = 0.
cname = wa_cityinfo2-city_name.
code = wa_cityinfo2-city_std_code.
distr = wa_cityinfo2-district.
ENDIF.
END-OF-SELECTION.
DATA : DAT1 TYPE ZCHAR25.
DAT1 = DISTR.
IF update = 'X'.
IF distr NE ''.
UPDATE zcityinfo SET district = dat1 WHERE city_name = cname AND city
_std_code = code.
IF sy-subrc = 0.
MESSAGE i002(zinertsmsg).
ENDIF.
ELSE.
MESSAGE i003(zinertsmsg).
ENDIF.
ENDIF.
![Page 63: My Abap Practice Programs](https://reader036.vdocuments.us/reader036/viewer/2022081720/5532855d4a7959c5638b463a/html5/thumbnails/63.jpg)
ABAP PRACTICE PROGRAMS R.S.V.V. PRASAD RAO
63
*&---------------------------------------------------------------------*
*& Report ZPRASAD_25
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*
REPORT zprasad_25.
SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE text-001.
PARAMETERS : var1(20) TYPE c,var2(20) TYPE c.
SELECTION-SCREEN END OF BLOCK b1.
DATA : x TYPE c,y TYPE c,len TYPE i,var11(20) TYPE c,var21(20) TYPE c,len1 TY
PE i,a TYPE i VALUE 0,b TYPE i VALUE 0.
DATA :temp(20) TYPE c,len2 TYPE i,ex TYPE i.
len = STRLEN( var1 ).
len1 = STRLEN( var2 ).
format hotspot on.
write : 'Click here to see the result'.
at line-selection.
DO len TIMES.
x = var1+a(1).
* write : 'First char in First name :',x.
* skip 1.
DO len1 TIMES.
y = var2+b(1).
* write : 'First char in 2nd name :', y.
* skip 1.
IF x EQ y.
SPLIT var2 AT y INTO var11 var21.
* write : 'Split b4 match char',var11.
* skip 1.
* write: 'Split after match char',var21.
* skip 1.
CONCATENATE var11 var21 INTO temp.
var2 = temp.
* write :'After concatenating',var2.
* skip 1.
SHIFT var1 LEFT BY 1 PLACES.
* write : 'First string after removing first char',var1.
* skip 1.
len1 = STRLEN( var2 ).
* write :'length after comparing string 1:', len1.
![Page 64: My Abap Practice Programs](https://reader036.vdocuments.us/reader036/viewer/2022081720/5532855d4a7959c5638b463a/html5/thumbnails/64.jpg)
ABAP PRACTICE PROGRAMS R.S.V.V. PRASAD RAO
64
* skip 1.
* clear : temp, var11, var21.
b = 0.
EXIT.
ELSE.
IF b <= len1.
b = b + 1.
* write : 'Current posi of char in 2nd string is:',b.
* skip 1.
* write : 'Len of 2nd string is:',len1.
* skip 1.
ENDIF.
ENDIF.
ENDDO.
IF b = len1.
ex = ex + 1.
SHIFT var1 LEFT BY 1 PLACES.
ENDIF.
a = 0.
b = 0.
len = STRLEN( var1 ).
ENDDO.
*len = strlen( var1 ).
*len1 = strlen( var2 ).
len2 = len + len1 + ex.
WRITE :'Total ', len2.
IF len2 > 6.
len2 = len2 - 6.
CASE len2.
WHEN 1.
WRITE : 'Friends' color 5.
WHEN 2.
WRITE : 'Lovers' color 1.
WHEN 3.
WRITE : 'Animals' color 6.
WHEN 4.
WRITE : 'Marriage' color 5.
WHEN 5.
WRITE : 'Enemies' color 6.
WHEN 6.
WRITE : 'Sisters/Brothers' color 4.
endcase.
else.
CASE len2.
![Page 65: My Abap Practice Programs](https://reader036.vdocuments.us/reader036/viewer/2022081720/5532855d4a7959c5638b463a/html5/thumbnails/65.jpg)
ABAP PRACTICE PROGRAMS R.S.V.V. PRASAD RAO
65
WHEN 1.
WRITE : 'Friends' color 5.
WHEN 2.
WRITE : 'Lovers' color 1.
WHEN 3.
WRITE : 'Animals' color 6.
WHEN 4.
WRITE : 'Marriage' color 5.
WHEN 5.
WRITE : 'Enemies' color 6.
WHEN 6.
WRITE : 'Sisters/Brothers' color 4.
endcase.
ENDIF.
![Page 66: My Abap Practice Programs](https://reader036.vdocuments.us/reader036/viewer/2022081720/5532855d4a7959c5638b463a/html5/thumbnails/66.jpg)
ABAP PRACTICE PROGRAMS R.S.V.V. PRASAD RAO
66
*&---------------------------------------------------------------------*
*& Report ZPRASAD_2
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*
REPORT zprasad_2 LINE-COUNT 20(3) NO STANDARD PAGE HEADING.
TYPES : BEGIN OF w_mara,
matnr TYPE mara-matnr,
ersda TYPE mara-ersda,
ernam TYPE mara-ernam,
END OF w_mara.
DATA : t_mara TYPE STANDARD TABLE OF w_mara.
DATA : wa_mara TYPE w_mara.
TYPES : BEGIN OF w_marc,
matnr TYPE marc-matnr,
werks TYPE marc-werks,
END OF w_marc.
DATA : t_marc TYPE STANDARD TABLE OF w_marc.
DATA : wa_marc TYPE w_marc.
TYPES : BEGIN OF w_mard,
matnr TYPE mard-matnr,
werks TYPE mard-werks,
lgort TYPE mard-lgort,
END OF w_mard.
DATA : t_mard TYPE STANDARD TABLE OF w_mard.
DATA : wa_mard TYPE w_mard.
START-OF-SELECTION.
SELECT matnr ersda ernam INTO TABLE t_mara FROM mara.
END-OF-SELECTION.
LOOP AT t_mara INTO wa_mara.
WRITE : /10 wa_mara-matnr HOTSPOT ON,
30 wa_mara-ersda,
50 wa_mara-ernam.
HIDE wa_mara-matnr.
ENDLOOP.
TOP-OF-PAGE.
WRITE : 'Data with respect to STORAGE LOCATION'.
![Page 67: My Abap Practice Programs](https://reader036.vdocuments.us/reader036/viewer/2022081720/5532855d4a7959c5638b463a/html5/thumbnails/67.jpg)
ABAP PRACTICE PROGRAMS R.S.V.V. PRASAD RAO
67
ULINE.
END-OF-PAGE.
ULINE.
WRITE : 'End of data'.
AT LINE-SELECTION.
SET PF-STATUS 'XYZ'.
SELECT matnr werks FROM marc INTO TABLE t_marc WHERE matnr = wa_mara-matnr.
LOOP AT t_marc INTO wa_marc.
WRITE :/10 wa_marc-matnr,
30 wa_marc-werks.
ENDLOOP.
TOP-OF-PAGE DURING LINE-SELECTION.
ULINE.
WRITE : 'Secondary list'.
ULINE.
AT USER-COMMAND.
CASE sy-ucomm.
WHEN 'DISPLAY'.
SELECT matnr werks lgort INTO TABLE t_mard FROM mard WHERE matnr = wa_m
ara-matnr.
LOOP AT t_mard INTO wa_mard.
WRITE : /10 wa_mard-matnr,30 wa_mard-werks,50 wa_mard-lgort.
ENDLOOP.
ENDCASE.