Application Development and Automation Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 
Read only

oops programming in abap

Former Member
0 Likes
588

Hi,

Suggest me some sites to get a hang of Object Oriented concepts in ABAP and how to go about developing custom programs using those concepts.

<<removed by moderator>>

Those who respond to this post see this ==>

Thnx and Regards,

Mohana.

1 ACCEPTED SOLUTION
Read only

Former Member
0 Likes
551

Hi,

Here i am giving the one simple oops program. You can understand it very easy.

REPORT Z15117_GET_MARA.

TABLES : VBAK,VBAP.

TYPES : BEGIN OF ST_VBAK,

VBELN TYPE VBAK-VBELN,

ERDAT TYPE VBAK-ERDAT,

AUDAT TYPE VBAK-AUDAT,

VBTYP TYPE VBAK-VBTYP,

AUART TYPE VBAK-AUART,

END OF ST_VBAK.

TYPES : BEGIN OF ST_VBAP,

VBELN TYPE VBAP-VBELN,

POSNR TYPE VBAP-POSNR,

MATNR TYPE VBAP-MATNR,

MATKL TYPE VBAP-MATKL,

ARKTX TYPE VBAP-ARKTX,

PSTYV TYPE VBAP-PSTYV,

END OF ST_VBAP.

TYPES : BEGIN OF ST_FINAL,

VBELN TYPE VBAK-VBELN,

POSNR TYPE VBAP-POSNR,

ERDAT TYPE VBAK-ERDAT,

AUDAT TYPE VBAK-AUDAT,

VBTYP TYPE VBAK-VBTYP,

AUART TYPE VBAK-AUART,

MATNR TYPE VBAP-MATNR,

MATKL TYPE VBAP-MATKL,

ARKTX TYPE VBAP-ARKTX,

PSTYV TYPE VBAP-PSTYV,

END OF ST_FINAL.

SELECT-OPTIONS : S_VBAK FOR VBAK-VBELN.

CLASS SALES1 DEFINITION.

PUBLIC SECTION.

METHODS : GET_DATA,

POPULATE_DATA,

DISPLAY_DATA.

DATA : IT_VBAK TYPE STANDARD TABLE OF ST_VBAK,

IT_VBAP TYPE STANDARD TABLE OF ST_VBAP,

IT_FINAL TYPE STANDARD TABLE OF ST_FINAL,

WA_VBAK LIKE LINE OF IT_VBAK,

WA_VBAP LIKE LINE OF IT_VBAP,

WA_FINAL LIKE LINE OF IT_FINAL.

ENDCLASS.

CLASS SALES1 IMPLEMENTATION.

METHOD GET_DATA.

SELECT VBELN ERDAT AUDAT VBTYP AUART FROM VBAK INTO

TABLE IT_VBAK WHERE VBELN in S_VBAK.

IF NOT IT_VBAK[] IS INITIAL.

SELECT VBELN POSNR MATNR MATKL ARKTX PSTYV FROM VBAP

INTO TABLE IT_VBAP

FOR ALL ENTRIES IN IT_VBAK

WHERE VBELN = IT_VBAK-VBELN.

ENDIF.

ENDMETHOD.

METHOD POPULATE_DATA.

LOOP AT IT_VBAK INTO WA_VBAK.

READ TABLE IT_VBAP INTO WA_VBAP WITH KEY VBELN = WA_VBAK-VBELN.

IF SY-SUBRC = 0.

WA_FINAL-VBELN = WA_VBAK-VBELN.

WA_FINAL-POSNR = WA_VBAP-POSNR.

WA_FINAL-ERDAT = WA_VBAK-ERDAT.

WA_FINAL-AUDAT = WA_VBAK-AUDAT.

WA_FINAL-VBTYP = WA_VBAK-VBTYP.

WA_FINAL-AUART = WA_VBAK-AUART.

WA_FINAL-MATNR = WA_VBAP-MATNR.

WA_FINAL-MATKL = WA_VBAP-MATKL.

WA_FINAL-ARKTX = WA_VBAP-ARKTX.

WA_FINAL-PSTYV = WA_VBAP-PSTYV.

APPEND WA_FINAL TO IT_FINAL.

ENDIF.

ENDLOOP.

ENDMETHOD.

METHOD DISPLAY_DATA.

LOOP AT IT_FINAL INTO WA_FINAL.

WRITE 😕 WA_FINAL-VBELN ,

WA_FINAL-POSNR ,

WA_FINAL-ERDAT,

WA_FINAL-AUDAT ,

WA_FINAL-VBTYP ,

WA_FINAL-AUART ,

WA_FINAL-MATNR ,

WA_FINAL-MATKL ,

WA_FINAL-ARKTX ,

WA_FINAL-PSTYV .

ENDLOOP.

ENDMETHOD .

ENDCLASS.

START-OF-SELECTION.

DATA : OBJ TYPE REF TO SALES1.

CREATE OBJECT OBJ.

CALL METHOD OBJ->GET_DATA.

CALL METHOD OBJ->POPULATE_DATA.

CALL METHOD OBJ->DISPLAY_DATA.

Regards,

Bhaskar

4 REPLIES 4
Read only

GauthamV
Active Contributor
0 Likes
551

hi,

If you SEARCH in SCN by oops programming in abap you will get tons of replys.

dont ask for sending documents for personal id's or your thread will be locked or deleted.

Read only

Former Member
0 Likes
551

This message was moderated.

Read only

Former Member
0 Likes
551
Read only

Former Member
0 Likes
552

Hi,

Here i am giving the one simple oops program. You can understand it very easy.

REPORT Z15117_GET_MARA.

TABLES : VBAK,VBAP.

TYPES : BEGIN OF ST_VBAK,

VBELN TYPE VBAK-VBELN,

ERDAT TYPE VBAK-ERDAT,

AUDAT TYPE VBAK-AUDAT,

VBTYP TYPE VBAK-VBTYP,

AUART TYPE VBAK-AUART,

END OF ST_VBAK.

TYPES : BEGIN OF ST_VBAP,

VBELN TYPE VBAP-VBELN,

POSNR TYPE VBAP-POSNR,

MATNR TYPE VBAP-MATNR,

MATKL TYPE VBAP-MATKL,

ARKTX TYPE VBAP-ARKTX,

PSTYV TYPE VBAP-PSTYV,

END OF ST_VBAP.

TYPES : BEGIN OF ST_FINAL,

VBELN TYPE VBAK-VBELN,

POSNR TYPE VBAP-POSNR,

ERDAT TYPE VBAK-ERDAT,

AUDAT TYPE VBAK-AUDAT,

VBTYP TYPE VBAK-VBTYP,

AUART TYPE VBAK-AUART,

MATNR TYPE VBAP-MATNR,

MATKL TYPE VBAP-MATKL,

ARKTX TYPE VBAP-ARKTX,

PSTYV TYPE VBAP-PSTYV,

END OF ST_FINAL.

SELECT-OPTIONS : S_VBAK FOR VBAK-VBELN.

CLASS SALES1 DEFINITION.

PUBLIC SECTION.

METHODS : GET_DATA,

POPULATE_DATA,

DISPLAY_DATA.

DATA : IT_VBAK TYPE STANDARD TABLE OF ST_VBAK,

IT_VBAP TYPE STANDARD TABLE OF ST_VBAP,

IT_FINAL TYPE STANDARD TABLE OF ST_FINAL,

WA_VBAK LIKE LINE OF IT_VBAK,

WA_VBAP LIKE LINE OF IT_VBAP,

WA_FINAL LIKE LINE OF IT_FINAL.

ENDCLASS.

CLASS SALES1 IMPLEMENTATION.

METHOD GET_DATA.

SELECT VBELN ERDAT AUDAT VBTYP AUART FROM VBAK INTO

TABLE IT_VBAK WHERE VBELN in S_VBAK.

IF NOT IT_VBAK[] IS INITIAL.

SELECT VBELN POSNR MATNR MATKL ARKTX PSTYV FROM VBAP

INTO TABLE IT_VBAP

FOR ALL ENTRIES IN IT_VBAK

WHERE VBELN = IT_VBAK-VBELN.

ENDIF.

ENDMETHOD.

METHOD POPULATE_DATA.

LOOP AT IT_VBAK INTO WA_VBAK.

READ TABLE IT_VBAP INTO WA_VBAP WITH KEY VBELN = WA_VBAK-VBELN.

IF SY-SUBRC = 0.

WA_FINAL-VBELN = WA_VBAK-VBELN.

WA_FINAL-POSNR = WA_VBAP-POSNR.

WA_FINAL-ERDAT = WA_VBAK-ERDAT.

WA_FINAL-AUDAT = WA_VBAK-AUDAT.

WA_FINAL-VBTYP = WA_VBAK-VBTYP.

WA_FINAL-AUART = WA_VBAK-AUART.

WA_FINAL-MATNR = WA_VBAP-MATNR.

WA_FINAL-MATKL = WA_VBAP-MATKL.

WA_FINAL-ARKTX = WA_VBAP-ARKTX.

WA_FINAL-PSTYV = WA_VBAP-PSTYV.

APPEND WA_FINAL TO IT_FINAL.

ENDIF.

ENDLOOP.

ENDMETHOD.

METHOD DISPLAY_DATA.

LOOP AT IT_FINAL INTO WA_FINAL.

WRITE 😕 WA_FINAL-VBELN ,

WA_FINAL-POSNR ,

WA_FINAL-ERDAT,

WA_FINAL-AUDAT ,

WA_FINAL-VBTYP ,

WA_FINAL-AUART ,

WA_FINAL-MATNR ,

WA_FINAL-MATKL ,

WA_FINAL-ARKTX ,

WA_FINAL-PSTYV .

ENDLOOP.

ENDMETHOD .

ENDCLASS.

START-OF-SELECTION.

DATA : OBJ TYPE REF TO SALES1.

CREATE OBJECT OBJ.

CALL METHOD OBJ->GET_DATA.

CALL METHOD OBJ->POPULATE_DATA.

CALL METHOD OBJ->DISPLAY_DATA.

Regards,

Bhaskar