Skip to Content
0
Former Member
Sep 22, 2006 at 03:07 AM

define my class

51 Views

I defined a class in my program.When I check the program it always has some problems.

Here is my program:

&----


*& Report ZTESTWZJ

*&

&----


*&

*&

&----


REPORT ztestwzj.

INCLUDE zmyinclude.

TYPES: BEGIN OF mytype,

carrid LIKE sflight-carrid,

connid LIKE sflight-connid,

fldate LIKE sflight-fldate,

price LIKE sflight-price,

END OF mytype.

DATA itab TYPE TABLE OF mytype.

DATA wa_itab LIKE LINE OF itab.

DATA ok_code TYPE sy-ucomm.

DATA mycontainer TYPE REF TO cl_gui_custom_container.

DATA myalv TYPE REF TO cl_gui_alv_grid.

DATA fieldcat TYPE lvc_t_fcat.

DATA wacat TYPE lvc_s_fcat.

DATA myevent TYPE REF TO myclass.

CREATE OBJECT myevent.

SELECT carrid connid fldate price

FROM sflight

INTO wa_itab.

APPEND wa_itab TO itab.

ENDSELECT.

CLEAR wacat.

wacat-fieldname = 'CARRID'.

wacat-ref_field = 'CARRID'.

wacat-ref_table = 'SFLIGHT'.

wacat-coltext = '航线承运人'.

APPEND wacat TO fieldcat.

CLEAR wacat.

wacat-fieldname = 'CONNID'.

wacat-ref_field = 'CONNID'.

wacat-ref_table = 'SFLIGHT'.

wacat-coltext = '航班连接'.

APPEND wacat TO fieldcat.

CLEAR wacat.

wacat-fieldname = 'FLDATE'.

wacat-ref_field = 'FLDATE'.

wacat-ref_table = 'SFLIGHT'.

wacat-coltext = '航班日期'.

APPEND wacat TO fieldcat.

CLEAR wacat.

wacat-fieldname = 'PRICE'.

wacat-ref_field = 'PRICE'.

wacat-ref_table = 'SFLIGHT'.

wacat-coltext = '航空运费'.

APPEND wacat TO fieldcat.

CALL SCREEN 0100.

&----


*& Module STATUS_0100 OUTPUT

&----


  • text

----


MODULE status_0100 OUTPUT.

SET PF-STATUS 'MYSTATUS'.

IF myalv IS INITIAL.

CREATE OBJECT mycontainer

EXPORTING container_name = 'CONTAINER1'.

CREATE OBJECT myalv

EXPORTING i_parent = mycontainer.

ENDIF.

CALL METHOD myalv->set_table_for_first_display

  • EXPORTING

  • I_BUFFER_ACTIVE =

  • I_BYPASSING_BUFFER =

  • I_CONSISTENCY_CHECK =

  • I_STRUCTURE_NAME =

  • IS_VARIANT =

  • I_SAVE =

  • I_DEFAULT = 'X'

  • IS_LAYOUT =

  • IS_PRINT =

  • IT_SPECIAL_GROUPS =

  • IT_TOOLBAR_EXCLUDING =

  • IT_HYPERLINK =

  • IT_ALV_GRAPHICS =

  • IT_EXCEPT_QINFO =

  • IR_SALV_ADAPTER =

CHANGING

it_outtab = itab

it_fieldcatalog = fieldcat

  • IT_SORT =

  • IT_FILTER =

  • EXCEPTIONS

  • INVALID_PARAMETER_COMBINATION = 1

  • PROGRAM_ERROR = 2

  • TOO_MANY_LINES = 3

  • 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.

SET HANDLER myevent->handle_top_page FOR myalv .

  • SET TITLEBAR 'xxx'.

ENDMODULE. " STATUS_0100 OUTPUT

&----


*& Module USER_COMMAND_0100 INPUT

&----


  • text

----


MODULE user_command_0100 INPUT.

CASE ok_code.

WHEN 'BACK'.

SET SCREEN 0.

ENDCASE.

ENDMODULE. " USER_COMMAND_0100 INPUT

my class is defined in the include file:

&----


*& &#21253;&#25324; ZMYINCLUDE

&----


CLASS myclass DEFINITION.

PUBLIC SECTION.

METHODS handle_top_page FOR EVENT print_top_of_page OF cl_gui_alv_grid .

ENDCLASS. "zmyclass DEFINITION

----


  • CLASS myclass IMPLEMENTATION

----


*

----


CLASS myclass IMPLEMENTATION.

METHOD handle_top_page.

WRITE:/ 'hahahaahahahahahahahahaahahahahaha'.

WRITE:/ 'hahahaahahahahahahahahaahahahahaha'.

WRITE:/ 'hahahaahahahahahahahahaahahahahaha'.

WRITE:/ 'hahahaahahahahahahahahaahahahahaha'.

WRITE:/ 'hahahaahahahahahahahahaahahahahaha'.

WRITE:/ 'hahahaahahahahahahahahaahahahahaha'.

WRITE:/ 'hahahaahahahahahahahahaahahahahaha'.

WRITE:/ 'hahahaahahahahahahahahaahahahahaha'.

ENDMETHOD. "handle_top_page

ENDCLASS. "myclass IMPLEMENTATION

when I click "check" button,it has an error"Statement is not accessible."

I don't know why...

Please help me, thanks