天天看點

SAP ABAP 互動報表 滑鼠手形 顔色字型

今天無聊的時候寫了個這個程式,嘿嘿!這兩天都忙瘋了,一個報表接一個報表的!弄死了,更郁悶的事,準備五一參加的MM教育訓練,現在地點卻在北京了!隻能參加上海的fi教育訓練了,不喜歡fi的教育訓練,不曉得那個幾天能學到什麼東西!

REPORT ZRL003.

TABLES: EKKO.

**---Initial table ekko

TYPES: BEGIN OF STR_EKKO,

EBELN LIKE EKKO-EBELN,

BUKRS LIKE EKKO-BUKRS,

EKGRP LIKE EKKO-EKGRP,

END OF STR_EKKO.

DATA: WA_EKKO TYPE STR_EKKO,

IT_EKKO TYPE TABLE OF STR_EKKO.

**---Initial table ekpo

TYPES: BEGIN OF STR_EKPO,

EBELN LIKE EKPO-EBELN,

NETPR LIKE EKPO-NETPR,

END OF STR_EKPO.

DATA: WA_EKPO TYPE STR_EKPO,

IT_EKPO TYPE TABLE OF STR_EKPO.

**---selection screen

SELECTION-SCREEN BEGIN OF BLOCK B1 WITH FRAME TITLE TEXT-001.

PARAMETERS:P_BUKRS LIKE EKKO-BUKRS OBLIGATORY DEFAULT '1000'.

SELECT-OPTIONS: S_EKGRP FOR EKKO-EKGRP.

SELECTION-SCREEN END OF BLOCK B1.

**---Start-of-selection

PERFORM GET_DATA.

**---End-of-selection

PERFORM DISPLAY_HEADER.

PERFORM DISPLAY_DATA.

**---at line-selection

AT LINE-SELECTION.

CHECK NOT WA_EKKO-EBELN IS INITIAL.

PERFORM SELECT_DATA.

PERFORM GET_MYDATA.

*&---------------------------------------------------------------------*

*& Form get_data

* Get data from database

*----------------------------------------------------------------------*

FORM GET_DATA .

SELECT EBELN BUKRS EKGRP

INTO CORRESPONDING FIELDS OF TABLE IT_EKKO

FROM EKKO

WHERE BUKRS = P_BUKRS

AND EKGRP IN S_EKGRP.

ENDFORM. " get_data

*& Form display_data

* Display data

FORM DISPLAY_DATA .

LOOP AT IT_EKKO INTO WA_EKKO.

**滑鼠變成手型

FORMAT HOTSPOT ON.

**格式化字型

FORMAT COLOR COL_KEY INTENSIFIED ON.

WRITE: AT /5 WA_EKKO-EBELN.

FORMAT RESET.

WRITE: AT 16 WA_EKKO-BUKRS,

21 WA_EKKO-EKGRP.

**Hide資料

HIDE: WA_EKKO-EBELN.

ENDLOOP.

ENDFORM. " display_data

*& Form display_header

* Display header

FORM DISPLAY_HEADER .

WRITE: AT /5 '采購憑證号',

16 '工廠',

21 '采購組'.

ENDFORM. " display_header

*& Form select_data

* Select Data from database

FORM SELECT_DATA .

SELECT EBELN NETPR

INTO CORRESPONDING FIELDS OF TABLE IT_EKPO

FROM EKPO

WHERE EBELN = WA_EKKO-EBELN.

ENDFORM. " select_data

*& Form get_mydata

* Display ekpo data

FORM GET_MYDATA .

***---Write header

AT 16 '采購憑證中的淨價格'.

LOOP AT IT_EKPO INTO WA_EKPO.

WRITE: AT /5 WA_EKPO-EBELN.

WRITE: AT 16 WA_EKPO-NETPR.

ENDFORM. " get_mydata