2008 Aug 05 6:51 AM
Hi Guru's,
I am new to Object oriented programming. I need to work on OOP's using ALV anyone provide me the guidence and also the material.
Thanks in Advance.
Hi Guru's,
I am new to Object oriented programming. I need to work on OOP's using ALV anyone provide me the guidence and also the material.
Thanks in Advance.
2008 Aug 05 6:54 AM
Hi!
Check the wiki section of SDN. You'll get lots of material on ABAP OBJECTS, ALVs.
You can check my sample code. Here I have created an ALV using ABAP OBJECT concept. Before executing this program create a screen
REPORT z_alv1.
DATA:
w_carrid TYPE sflight-carrid,
w_connid TYPE sflight-connid.
DATA:
r_cont TYPE REF TO cl_gui_custom_container,
r_grid TYPE REF TO cl_gui_alv_grid.
DATA:
t_fieldcat TYPE lvc_t_fcat,
fs_fieldcat LIKE LINE OF t_fieldcat.
TYPES:
BEGIN OF types_flight,
carrid TYPE sflight-carrid,
connid TYPE sflight-connid,
fldate TYPE sflight-fldate,
price TYPE sflight-price,
currency TYPE sflight-currency,
END OF types_flight.
DATA:
fs_flight TYPE types_flight,
t_flight LIKE
TABLE OF
fs_flight.
SELECT-OPTIONS:
s_carrid FOR w_carrid,
s_connid FOR w_connid.
START-OF-SELECTION.
PERFORM get_data.
CALL SCREEN '0100'.
*&---------------------------------------------------------------------
*
*& Form get_data
*&---------------------------------------------------------------------
*
* text
*----------------------------------------------------------------------
*
* --> p1 text
* <-- p2 text
*----------------------------------------------------------------------
*
FORM get_data .
SELECT carrid
connid
fldate
price
currency
FROM sflight
INTO TABLE t_flight
WHERE carrid IN s_carrid
AND connid IN s_connid.
ENDFORM. " get_data
*&---------------------------------------------------------------------
*
*& Module STATUS_0100 OUTPUT
*&---------------------------------------------------------------------
*
* text
*----------------------------------------------------------------------
*
MODULE status_0100 OUTPUT.
SET PF-STATUS 'STATUS1'.
SET TITLEBAR 'TITLE1'.
ENDMODULE. " STATUS_0100 OUTPUT
*&---------------------------------------------------------------------
*
*& Module USER_COMMAND_0100 INPUT
*&---------------------------------------------------------------------
*
* text
*----------------------------------------------------------------------
*
MODULE user_command_0100 INPUT.
CASE sy-ucomm.
WHEN 'BACK'.
LEAVE TO SCREEN '0'.
ENDCASE.
ENDMODULE. " USER_COMMAND_0100 INPUT
*&---------------------------------------------------------------------
*
*& Module alv_grid OUTPUT
*&---------------------------------------------------------------------
*
* text
*----------------------------------------------------------------------
*
MODULE alv_grid OUTPUT.
CREATE OBJECT r_cont
EXPORTING
container_name = 'CONTAINER_1'
EXCEPTIONS
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.
CREATE OBJECT r_grid
EXPORTING
i_parent = r_cont
EXCEPTIONS
OTHERS = 5
.
IF sy-subrc NE 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
PERFORM build_fieldcat.
CALL METHOD r_grid->set_table_for_first_display
CHANGING
it_outtab = t_flight
it_fieldcatalog = t_fieldcat
* IT_SORT =
* IT_FILTER =
EXCEPTIONS
OTHERS = 4
.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
ENDMODULE. " alv_grid OUTPUT
*&---------------------------------------------------------------------
*
*& Form build_fieldcat
*&---------------------------------------------------------------------
*
* text
*----------------------------------------------------------------------
*
* --> p1 text
* <-- p2 text
*----------------------------------------------------------------------
*
FORM build_fieldcat .
fs_fieldcat-fieldname = 'CARRID'.
fs_fieldcat-tabname = 'T_FLIGHT'.
fs_fieldcat-scrtext_m = 'Airline Carrier ID'.
APPEND fs_fieldcat TO t_fieldcat.
CLEAR fs_fieldcat.
fs_fieldcat-fieldname = 'CONNID'.
fs_fieldcat-tabname = 'T_FLIGHT'.
fs_fieldcat-lzero = ''.
fs_fieldcat-scrtext_m = 'Flight Conn ID'.
APPEND fs_fieldcat TO t_fieldcat.
CLEAR fs_fieldcat.
fs_fieldcat-fieldname = 'FLDATE'.
fs_fieldcat-tabname = 'T_FLIGHT'.
fs_fieldcat-scrtext_m = 'Flight Date'.
APPEND fs_fieldcat TO t_fieldcat.
CLEAR fs_fieldcat.
fs_fieldcat-fieldname = 'PRICE'.
fs_fieldcat-tabname = 'T_FLIGHT'.
fs_fieldcat-scrtext_m = 'Price'.
APPEND fs_fieldcat TO t_fieldcat.
CLEAR fs_fieldcat.
fs_fieldcat-fieldname = 'CURRENCY'.
fs_fieldcat-tabname = 'T_FLIGHT'.
fs_fieldcat-scrtext_m = 'Currency'.
APPEND fs_fieldcat TO t_fieldcat.
ENDFORM. " build_fieldcat
Regards
Abhijeet
2008 Aug 05 7:23 AM
hi,
Please Refer to the link.
http://www.sap-partner.hu/ABAP_HELP_INFO/An%20Easy%20Reference%20for%20ALV%20Grid%20Control.pdf
Regards
Sumit agarwal
2008 Aug 05 7:24 AM
Hi,
The main advantages of OOABAP is :
1. Ensapulation - data hiding .
2. Polymorphism - changing the method process in different classes.
3. Inheritance - adding the functionality of one class(super Class) to another. (subclass).
REPORT ZCLASS_FIRST.
----
CLASS c_counter DEFINITION
----
*
----
CLASS C_COUNTER DEFINITION.
PUBLIC SECTION.
*instance method declaration
METHODS: SET_COUNTER IMPORTING VALUE(SET_VALUE) TYPE I,
GET_COUNTER EXPORTING VALUE(GET_VALUE) TYPE I.
*static method declaration
CLASS-METHODS : INCREMENT_COUNTER.
PRIVATE SECTION.
*static variable declaration
CLASS-DATA COUNT TYPE I.
ENDCLASS. "c_counter DEFINITION
----
CLASS c_counter IMPLEMENTATION
----
*
----
CLASS C_COUNTER IMPLEMENTATION.
*instance method implement
METHOD SET_COUNTER.
COUNT = SET_VALUE.
ENDMETHOD. "set_counter
*static method implement
METHOD INCREMENT_COUNTER.
ADD 1 TO COUNT.
ENDMETHOD. "increment_counter
*instance method implement
METHOD GET_COUNTER.
GET_VALUE = COUNT .
ENDMETHOD. "get_counter
ENDCLASS. "c_counter IMPLEMENTATION
*actual program start
START-OF-SELECTION.
creating an referance variable
DATA : C_COUNT_REF TYPE REF TO C_COUNTER.
creating an object based on referance variable.
CREATE OBJECT C_COUNT_REF.
*data declaration
DATA : TEMP1 TYPE I VALUE 100,
TEMP2 TYPE I .
*instance method calling
CALL METHOD C_COUNT_REF->SET_COUNTER
EXPORTING
SET_VALUE = TEMP1.
WRITE : TEMP1.
*static method calling
DO 10 TIMES.
CALL METHOD c_counter=>INCREMENT_COUNTER.
ENDDO.
*instance method calling
CALL METHOD C_COUNT_REF->GET_COUNTER
IMPORTING
GET_VALUE = TEMP2.
WRITE 😕 'Total value is:',TEMP2.
Goo through this Example U can get some basic idea of OOABAP...
I hope help full
Raghunath.S
2008 Aug 05 7:27 AM
refer to the link below for Object Oriented ALV:
http://sap.niraj.tripod.com/id64.html
With luck,
Pritam.
2008 Aug 05 7:30 AM
Hi,
Check the link(From page 1291)
http://help.sap.com/printdocu/core/Print46c/en/data/pdf/BCABA/BCABA.pdf
Also check this links as well.
http://help.sap.com/saphelp_nw2004s/helpdata/en/ce/b518b6513611d194a50000e8353423/frameset.htm
http://www.sapgenie.com/abap/OO/
http://www.futureobjects.de/content/intro_oo_e.html
http://www.sap-img.com/abap/business-add-in-you-need-to-understand-abap-oo-interface-concept.htm
2008 Aug 05 7:31 AM
Praveen,
Just refer:
[Please|https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/b6cae890-0201-0010-ef8b-f970a9c41d47]
[Try to use|https://www.sdn.sap.com/irj/sdn/weblogs?blog=/pub/wlg/1606] [original link is broken] [original link is broken] [original link is broken];
2008 Aug 05 7:44 AM
Hi,
Refer to these links
abap oops material
1) http://help.sap.com/printdocu/core/Print46c/en/data/pdf/BCABA/BCABA.pdf -- Page no: 1291
2) http://esnips.com/doc/5c65b0dd-eddf-4512-8e32-ecd26735f0f2/prefinalppt.ppt
3) http://esnips.com/doc/2c76dc57-e74a-4539-a20e-29383317e804/OO-abap.pdf
4) http://esnips.com/doc/0ef39d4b-586a-4637-abbb-e4f69d2d9307/SAP-CONTROLS-WORKSHOP.pdf
5) http://esnips.com/doc/92be4457-1b6e-4061-92e5-8e4b3a6e3239/Object-Oriented-ABAP.ppt
6) http://esnips.com/doc/448e8302-68b1-4046-9fef-8fa8808caee0/abap-objects-by-helen.pdf
7) http://esnips.com/doc/39fdc647-1aed-4b40-a476-4d3042b6ec28/class_builder.ppt
😎 http://www.amazon.com/gp/explorer/0201750805/2/ref=pd_lpo_ase/102-9378020-8749710?ie=UTF8
1) http://www.erpgenie.com/sap/abap/OO/index.htm
2) http://help.sap.com/saphelp_nw04/helpdata/en/ce/b518b6513611d194a50000e8353423/frameset.htm
2008 Aug 05 1:26 PM
| User | Count |
|---|---|
| 3 | |
| 2 | |
| 2 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 |