0% found this document useful (0 votes)
41 views3 pages

ABAP Programming Techniques

cdfsafdc

Uploaded by

nnxdt9d9dq
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
41 views3 pages

ABAP Programming Techniques

cdfsafdc

Uploaded by

nnxdt9d9dq
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd

#Program 1:

TYPES: BEGIN OF ty_simple,


a type i,
b type c,
END OF ty_simple.

data: itab type table of ty_simple,


wa type ty_simple.

wa-a = 10.
wa-b = 'X'.
append wa to itab.

wa-a = 20.
wa-b = 'Y'.
append wa to itab.

wa-a = 30.
wa-b = 'Z'.
append wa to itab.

LOOP AT itab into wa.


write: wa-a, wa-b.
ENDLOOP.

* NEW code for above.


TYPES: BEGIN OF ty_simple,
a type i,
b type c,
END OF ty_simple.

data: itab type table of ty_simple,


wa type ty_simple.

append value #( a=10 b='X') to itab.


append value #( a=20 b='Y') to itab.
append value #( a=30 b='Z') to itab.

itab =value #( ( a=40 b='D' )( a=50 b='O') ).

read table itab into data(wa) with key b = 'O'.


write:/ wa-a, wa-b.

new sytax.
data(wa) = itab[ b = 'O'].
assign itab[ b='o'] to field-symbol(<fs>)

*Concatenation by string expression


data: lv_string type string,
lv_country type string value 'Aus'.
lv_string = |i love '{lv_country}'|.

data: lt_bp type table of snwd_bpa,


wa type snwd_bpa.
select bp_id,company_name
from snwd_bpa
into table @data(bp_id).
loop at itab into wa.
write:/ wa-bp_id, wa-company_name.
endloop.

loop at lt_bp assigning field-symbol(<fs>).


write:/ <fs>-company_name.
ENDLOOP.

*object traversal.

loop at lt_bp reference into data(lo_bp).


write: /lo_bp->bp_id,lo_bp->company_name.
endloop.

*working with the o bjects.


data: lo_plane type ref to zcl_dec_airplane,
lv_color type char16.

create object lo_plane.


lo_plane->set_color( 'RED' ).
lv_color = lo_plane->get_color().
write:/ lv_color.

*new method of calling an object is as follows.


data(lo_plane2) = new zcl_dec_airplane().
lo_plane2->set_color('blue').
write:/ lo_plane2->get_color().

#Program 2:
class zcl_dec_airplane DEFINITION.
PUBLIC.
FINAL.
CREATE PUBLIC.

PUBLIC SECTION.
data: color type char16.
METHODS get_color RETURNING VALUE(rv_color) type char16.
METHODS set_color IMPORTING im_color type char16.
PROTECTED SECTION.
PRIVATE SECTION.
ENDCLASS.

class zcl_dec_airplane IMPLEMENTATION.

method get_color.
rv_color = me->color.
endmethod.

method set_color.
me->color = im_color.
endmethod.
ENDCLASS.

PROGRAM 3:

report zabap_new_sql.

case1:
select so_id,
case gross_amount >1000
then 'High value'
else 'low Value' end as valued
from snwd_so into table @data(itab).

loop at itab into data(wa).


write: wa-so_id,wa-valued.
endloop.

*case2:
select bp_id, company_name,
case bp_role
when '01' then 'Customer'
when '02' then 'Supplier'
end as bp_role
into table
@data(itab).
from snwd_bpa.
loop at itab into data(wa).
write:/ wa-bp_id, wa-company_name, wa-bp_role.
endloop.

aggregate functions:

select category, sum(price) as price from snwd_of into


table @data(itab) group by category
having sum(price) > 5000.
loop at itab into data(wa).
write: wa-category,wa-price.
endloop.

You might also like