2. ALV 속성.

Download Report

Transcript 2. ALV 속성.

About
ALV (Abap List Viewer)
1.
ALV란?.
1.
2.
3.
2.
ALV 속성.
1.
2.
3.
3.
Class / Function Group.
Field Catalog.
Layout Structure.
ALV Sample.
1.
2.
4.
ALV 개요.
ALV 목적.
USE.
Programming 기법.
Example Program.
ALV 기대효과.
1. ALV 란?
ALV 란?
1-1. ALV 개요.
ALV는 Abap List Viewer의 약자로써 SAP 에서 사용자의 편의성을 제공하기 위하여 Standard Function으로
만들어서 제공하며 여러가지 기능을 포함하고 있어서 사용자가 쓰기에 적합하도록 되어 있다.
Abap List Viewer에서 제공하는 기능.
a) Navigating Within the List.
m) Optimizing the Column Width.
b) Choosing Detail.
n) Freezing to Columns and Unfreezing Columns.
c) Sorting in Ascending/Descending Order.
o) Choosing Display Variants.
d) ABC Analysis.
p) Defining the Current Display Variant.
e) Selecting and Deselecting Rows.
q) Saving Display Variants.
f) Row indicator
r) Management of Display Variants.
g) Setting and Deleting Filters.
s) Displaying The Basic List.
h) Displaying and Deleting Sums.
u) Finding Terms.
I) Creating Subtotals.
v) Printing Lists.
j) Choosing Summation Levels.
w) Sending Lists as Documents
k) Defining the Breakdown of the Summation Levels. x) SpreadSheets.
l) Displaying the List Status.
y) Word Processing.
z) Local File.
1. ALV 란?
1-2. ALV 목적.
기존의 Abap의 단순한 레포트에서 탈피하여 Function으로
제공하는 Standard를 적용함으로써 여러 기능들에 대한
불필요한 코딩을 줄이고 일의 효율성을 높힌다.
또한 단 시간 내에 Technical한 프로그램을 완료함으로써
고객의 신뢰를 얻는다.
ALV 란?
1. ALV 란?
1-3. Use.
Abap List Viewer는 아래와 같이 Report를 Controlling 하는데 주로 쓰인다.
a) Reports from cost centers and business processes.
b) Actual line from reports from cost centers and business processes.
c) Commitment line item reports.
d) Plan line item reports from cost centers, orders, business processes, cost objects.
e) Budget reports.
f) Cycle reports.
g) Order selection (CO-PC).
h) Flexible itemization (CO-PC).
이외의 모든 Report에 쓰일수 있으며 강력한 Function기능과 변형의 가능으로 거의 모든 레포트가
ALV로 바뀌고 있는 추세이며 ALV(Classic) -> ALV Grid Control로 바뀌는 추세이다.
ALV 란?
2. ALV 속성.
ALV 속성
2-1. Class / Function Group
Class : SLIS.
Group.
Function Group
Description.
ALTR
: ALV Tree Control : Services Modules
KKBL
: Internal Use
KKRT
: Hierarchy Display via field Catalog
SALV
: Abap List Viewer
SFCC
: Internal ALV Function enhancements
SKBE
: Extract Management
SKBH
: Internal Service Modules ALV
SKBS
: Display Variants list tool management
SLVC
: ALV Control service module
SLVC_CONSISTENCY_CHECK
: ALV Call consistency check
SLVC_DIALOG
: ALV Control : Dialog elements
SLVC_FULLSCREEN
: ALV Grid control full screen
SLVC_ITEM_SELECTION
: Selection Using grid control
SLVC_SERVICES
: Services
SPCA
: Call PC application in list processing
SSN1
: Scan ABAP Source code
2. ALV 속성.
ALV 속성
2-2. Field Catalog.
종류.
Field Name.
Comp. Type.
Length.
LVC_FNAME.
CHAR(30)
Description / Value Range.
Reference to the
FIELEDNAME
Output Table
Field name of output table(required).
Reference to the Data
REF_FIELD
Dictionary
SPACE, name of a field in the Data Dictionary that corresponds to a field in the output table.
REF_TABLE
LVC_RFNAME
LVC_RTNAME
CHAR(30)
CHAR(30)
SPACE, name of a structure or table from the Data Dictionary that corresponds to a field
in the output table.
Value Display With
DECMFIELD
Currency/Quantity Unit
SPACE, field name of output table
EDIT_MASK
LVC_DFNAME
LVC_EDTMSK
SPACE, conv (conversion exit).
ex) ==ALPHA
CHAR(30)
CHAR(60)
2. ALV 속성.
종류.
ALV 속성
Field Name.
Comp. Type.
Length.
LVC_CHECKB.
CHAR(1)
LVC_COLPOS
INT4(10)
Description / Value Range.
Output Options
CHECKBOX
Of column
SPACE, ‘X’
COL_POS
Field에 대한 Column Positions.
DO_SUM
LVC_DOSUM
CHAR(1)
Field에 대한 SUM을 계산한다.
EMPHASIZE
LVC_EMPHASIZE
CHAR(04)
Field에 대한 COLOR을 지정. SPACE or ‘X’ or ‘Cxyz’ (X:1~9, y,z : ‘0’ = off ‘1’ = on)
X : color number , Y : intensified display on/off , Z : inverse display on/off.
HOTSPOT
LVC_HOTSPOT
CHAR(1)
LVC_KEY
CHAR(1)
SPACE, ‘X’
KEY
SPACE, ‘X’. (Field가 키가 되는 부분임을 설정한다)
LOWERCASE
LOWERCASE
Field의 Upper / lower 를 설정한다.
CHAR(1)
2. ALV 속성.
종류.
ALV 속성
Field Name.
Comp. Type.
Length.
LVC_NOOUT.
CHAR(1)
Description / Value Range.
NO_OUT
SPACE, ‘X’ 초기에 Display에 관한 설정.
NO_SUM
LVC_NOSIGN
CHAR(1)
SPACE,’X’ 필드에 대한 SUM을 할 것 인지에 관한 설정.
OUTPUTLEN
LVC_OUTLEN
NUMC(06)
0, n 필드의 출력넓이를 설정한다.
TECH
LVC_TECH
CHAR(1)
SPACE, ‘X’ 설정할 경우 필드는 보여지지 않는다.
Formatting Column
CURRENCY
Contents
SPACE, 금액 필드일 경우 통화코드를 셋팅.
CFIELDNAME
CHAR(05)
CHAR(30)
SPACE, 금액 필드일 경우 참조통화 필드를 셋팅.
CTABNAME
SPACE, CFIELDNAME을 설정 했을 시 참조테이블을 셋팅
CHAR(30)
2. ALV 속성.
종류.
ALV 속성
Field Name.
Comp. Type.
Length.
LVC_EDTMSK.
CHAR(60)
Description / Value Range.
EDIT_MASK
SPACE, conv 출력필드에 대한 Conversion Exit를 설정할 시 쓰임.
EXPONENT
LVC_EXPONT
CHAR(3)
initial, integer ( Determines a fixed exponent for the field )
ICON
LVC_ICON
CHAR(1)
SPACE, ‘X’ 아이콘을 사용할 경우 체크를 해준다.
JUST
SPACE, ‘R’, ‘L’, ‘C’.
LVC_JUST
CHAR(1)
R = Right justified, L = Left justified, C = Center
필드의 내용을 오른쪽/왼쪽/중앙정렬을 결정한다.
LZERO
LVC_ZERO
CHAR(1)
SPACE, ‘X’ 체크 했을 시 zero값은 0이 display된다.(Type: NUMC)
NO_SIGN
LVC_NOSIGN
CHAR(1)
SPACE, ‘X’ 체크 했을 시 value가 sign 없이 출력된다.
NO_ZERO
LVC_NOZERO
CHAR(1)
SPACE, ‘X’ 체크 했을 시 value field가 initial이면 display되지 않는다.
2. ALV 속성.
종류.
ALV 속성
Field Name.
Comp. Type.
Length.
LVC_SYMBOL
CHAR(1)
Description / Value Range.
SYMBOL
SPACE, ‘X’ 필드를 symbol로 사용 시 셋팅한다.
Texts
SCRTEXT_L
SCRTEXT_L
CHAR(40)
Data Dictionary를 참조하여 필드의 long text를 가지고 온다.
SCRTEXT_M
SCRTEXT_M
CHAR(20)
Data Dictionary를 참조하여 필드의 medium text를 가지고 온다.
SCRTEXT_S
SCRTEXT_S
CHAR(10)
Data Dictionary를 참조하여 필드의 shot text를 가지고 온다.
REPTEXT_DDIC
DD03P-REPTEXT
CHAR(55)
Data Dictionary의 field heading을 가지고 온다.
DDICTXT
CHAR(1)
참조할 필드의 text를 결정한다 S:Shot , M:Midium , L:Long
2. ALV 속성.
종류.
ALV 속성
Field Name.
Comp. Type.
Length.
LVC_ROLL
CHAR(30)
Description / Value Range.
Parameters for fields
ROLLNAME
Without DDIC reference
Dictionary에서 제공하지 않는 출력필드에 대해 F1 Help를 만들시 참조 Data Element 기술.
Other Fields
REPREP
CHAR(1)
SPACE, ‘X’ 레포트 인터페이스가 될때 설정을 하면 필드의 값이 넘어간다.
SP_GROUP
LVC_SPGRP
CHAR(4)
SPACE, Four-digit group key. 여러 필드를 Group으로 설정
2. ALV 속성.
ALV 속성
2-3. Layout Structure.
종류.
Field Name.
Comp. Type.
Length.
Description / Value Range.
Color
ZEBRA
CHAR(1)
SPACE, ‘X’ Striped Pattern 을 보여준다.
NO_VLINE
CHAR(1)
SPACE, ‘X’ Columns separated by space
Totals Options
NO_TOTLINE
CHAR(1)
SPACE, ‘X’ 이 필드가 체크되면 Subtotal만 표시되고 전체total은 표시가 되지 않는다.
NUMC_TOTAL
CHAR(1)
SPACE, ‘X’ 이 필드가 체크되면 Total계산시 Data Type이 NUMC인것만 계산한다.
Interaction Control
KEYHOT
CHAR(1)
SPACE, ‘X’ 이 필드가 체크되면 모든 key field가 hotspot-sensitive된다.
3. ALV Sample.
ALV Sample
3-1. Programming 기법.
기본적인 프로그래밍은 Standard Function에서 요구하는 인터널 테이블에 대해서 알맞은 데이터를
넘김으로써 프로그램이 되어진다.
또한 User–Define 부분이 있어서 필요에 따라 Define함으로써 필요한 기능을 추가 할 수 있다.
Event를 정의 하여 인터널 테이블로 넘김으로써 필요한 Event시 User-Define한 부분을 실행 할 수 있다.
더욱더 자세한 것은 Example Program 에서 설명된다.
3. ALV Sample.
ALV Sample
3-2. Example Program.
System : 10.1.20.1 (대웅개발)
System Number : 02
Program ID
Description
YALV_01
가장 기본적인 ALV List
YALV_02
Check Box / Pf-status / User-command / Top-of-page
Refresh / Check Box inactive / Line color 변경
YALV_03
Subtotal / Variant / Drill Down
YALV_04
2개의 연관된 Internal Table을 Display
다른 Internal Table Append
YALV_05
Popup_select
YALV_06
Grid Control
3. ALV Sample.
1. YALV_01 출력화면
ALV Sample
3. ALV Sample.
ALV Sample
1. YALV_01 설명 - 사용된 함수
CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY'
EXPORTING
i_callback_program
= g_repid
<= 프로그램 이름
*
i_callback_pf_status_set = g_status
*
i_callback_user_command
= g_user_command
is_layout
= alv_layout
<= 뒷장 a 참조
it_fieldcat
= it_fieldcat
<= 뒷장 b 참조
*
it_special_groups
= gt_special_group_table
*
it_sort
= gt_sort_table
it_events
= alv_events
<= 뒷장 c 참조
= it_bkpf
<= 실제 화면에 보여줄 테이블
TABLES
t_outtab
EXCEPTIONS
program_error
= 1
OTHERS
= 2.
3. ALV Sample.
a.
ALV Sample
Alv_layout 설명.
출력되는 양식의 Display Options을 지정해주는 부분이다.
b.
정의:
Data: alv_layout
type slis_layout_alv.
값설정:
alv_layout-zebra = ‘X’.
“ Striped Pattern
it_fieldcat 설명.
넘기고자 하는 인터널 테이블의 속성을 지정하는 부분이다. 즉 필드의 이름과 Description, Type, 참조필드
등등을 설명한다.
정의:
Data: it_fieldcat type slis_t_fieldcat_alv.
값설정:
Data: lt_fieldcat type slis_fieldcat_alv.
clear lt_fieldcat.
lt_fieldcat-col_pos = 1.
<- 보여줄 순서
lt_fieldcat-fieldname = ‘필드명’.
lt_fieldcat-no_out
= ‘X’ , ‘ ‘
<- ‘X’설정시 No-display
……
append lt_fieldcat to it_fieldcat.
<- 필드에 해당하는 모든 값을 지정하여 it_fieldcat
에 저장한다.
3. ALV Sample.
c.
ALV Sample
Alv_event 설명.
Event를 처리하는 부분으로 Event명과 Form명을 써준다.
정의:
Data: alv_events
type
slis_event.
값설정:
Data: ls_event
type
slis_alv_Event.
ls_event-name
=
‘TOP_OF_PAGE’.
<- Event Name
ls_event-form
=
‘TOP-OF-PAGE’.
<- Event발생시 수행하는 Form
append ls_event
to alv_event.
ls_event-name
=
‘END_OF_LIST’.
<- Event Name
ls_event-form
=
‘END-OF-PAGE’.
<- Event발생시 수행하는 Form
append ls_event
to alv_event.
3. ALV Sample.
2. YALV_02 출력화면
ALV Sample
3. ALV Sample.
ALV Sample
1. YALV_02 설명 - 사용된 함수
CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY'
EXPORTING
i_callback_program
*
= g_repid
<= 프로그램 이름
i_callback_pf_status_set = g_status
<= 뒷장 a 참조
i_callback_user_command
= g_user_command
<= 뒷장 b 참조
is_layout
= alv_layout
<= 뒷장 c 참조
it_fieldcat
= it_fieldcat
<= 뒷장 d 참조
it_special_groups
= gt_special_group_table
<= 뒷장 e 참조
it_sort
= gt_sort_table
it_events
= alv_events
<= 뒷장 f 참조
= it_bkpf
<= 실제 화면에 보여줄 테이블
TABLES
t_outtab
EXCEPTIONS
program_error
= 1
OTHERS
= 2.
3. ALV Sample.
a.
ALV Sample
G_status 설명.
출력되는 양식의 PF-STATUS을 지정해주는 부분이다.
정의:
Data: g_status
type
slis_formname
value ‘STATUS’.
ALV에서는 PF-STATUS설정시 본 프로그램의 Form Status를 수행한다.
값설정:
FORM status USING extab type slis_t_extab.
set pf-status ‘STATUS’ excluding extab.
ENDFORM.
b
g_user_command 설명.
ALV에서 At User-Command / At Line-selection 를 수행할시 callback하여 본 프로그램에서 sy-ucomm에 따라
수행이 가능하게끔 지정하는 부분이다.
정의:
Data: g_user_command
type
slis_formname
value ‘USER_COMMAND’.
ALV에서 Event를 수행시 Callback하여 본 프로그램의 Form User_command를 수행.
값설정:
FORM user_Command using r_ucomm
like
sy-ucomm
rs_selfield type slis_selfield.
case r_ucomm.
when ‘&IC1’. …
endcase.
ENDFORM.
<= sy-ucomm
<= 선택된 필드의 내용
3. ALV Sample.
c.
ALV Sample
alv_layout 설명.
출력되는 양식의 Display Options을 지정해주는 부분이다.
정의:
Data: alv_layout
type slis_layout_alv.
값설정:
alv_layout-zebra = ‘X’.
“ Striped Pattern
alv_layout-box_fieldname
= 'BOX'.
“ Box가 표시되는 필드이름
alv_layout-box_tabname
= 'IT_BKPF'.
“ 필드이름을 포함하는 테이블
alv_layout-info_fieldname = 'LISTINFO'.
d.
“ infofield for listoutput
it_fieldcat 설명.
앞에서 설명이 되어졌고 프로그래머가 직접 값을 넣어 줄 수도 있고 Function ‘REUSE_ALV_FIELDCATALOG_MERGE’
를 이용하여 인터널 테이블이나 Structure를 넘기고 it_fieldcat을 받을수도 있다. 이 함수를 거치면
인터널 테이블 정보가 그대로 it_fieldcat에 변환되어 넘어온다.
CALL FUNCTION ‘REUSE_ALV_FIELDCATALOG_MERGE’
EXPORTING
I_program_name
=
g_repid
I_internal_name =
‘IT_BKPF’
ct_fieldcat
it_fieldcat.
CHANGING
=
3. ALV Sample.
e.
ALV Sample
gt_special_group_table 설명
Current Display Variant의 필드그룹을 지정하는 기능을 한다.
정의:
DATA: gt_special_group_table TYPE slis_t_sp_group_alv.
값설정:
DATA: gt_special_group_line
TYPE slis_sp_group_alv.
FREE gt_special_group_table.
CLEAR gt_special_group_line.
gt_special_group_line-sp_group
=
'A'.
<= it_fieldcat-sg_group = ‘A’.
gt_special_group_line-text
=
'A Group'.
<= TEXT
APPEND gt_special_group_line TO gt_special_group_table.
it_fieldcat을 정의시 sp_group = ‘A’로 지정된 필드를 Grouping을 한다. 이것은 화면에 아래와같이
보여진다.
A Group을 선택하면
It_fieldcat-sg_group = ‘A’로
정의된 필드만
Hidden Field에 보여진다.
3. ALV Sample.
f.
ALV Sample
Alv_event 설명
Event를 처리하는 부분으로 Event명과 Form명을 써준다
정의:
Data: alv_events
type
slis_event.
값설정:
Data: ls_event
type
slis_alv_Event.
ls_event-name
=
‘TOP_OF_PAGE’.
<- Event Name
ls_event-form
=
‘TOP-OF-PAGE’.
<- Event발생시 수행하는 Form
append ls_event
to alv_event.
FORM top-of-page.
format reset.
format intensified off.
write:/ text-002 centered.
ENDFORM.
" TOP-OF-PAGE
3. ALV Sample.
2. YALV_02 출력화면 ( Checkbox 체크후 저장버튼을 눌렀을시)
저장후 Checkbox Inactive
ALV Sample
3. ALV Sample.
•
ALV Sample
체크박스를 선택하여 PF-STATUS의 “저장”버튼을 누르면 CallBack하여 FORM User_command를 수행하게 된다.
체크박스가 선택되어 있으면 itab-box = ‘X’가 표기되어 있고 아래와 같이 수정후 Modify하면
itab-box = ‘1’
<= Checkbox가 Inactive
itab-box = ‘-’
<= Checkbox가 없어짐
itab-listinfo = ‘C01’.
<= 라인 칼라지정
C : Default , 1~9 : Color , 1 : intensified display on 0: intensified display off
rs_selfield-refresh = ‘X’.
<= 화면 Refresh
3. ALV Sample.
ALV Sample
3. YALV_03 입력화면
선택시
3. ALV Sample.
3. YALV_03 출력화면
ALV Sample
3. ALV Sample.
ALV Sample
1. YALV_03 설명 - 사용된 함수
CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY' .
<= YALV_01, YALV_02 Sample 참조.
단 여기서 추가된 부분은 Variant부분으로
…
…
…
i_save
= g_save
is_variant
= g_variant 을 추가해주면 아래와 같은 화면이 추가된다.
CALL FUNCTION 'REUSE_ALV_VARIANT_DEFAULT_GET'
<= Default Variant를 구한다.
CALL FUNCTION 'REUSE_ALV_VARIANT_F4'
<= F4 Help를 만든다.
CALL FUNCTION 'REUSE_ALV_VARIANT_EXISTENCE'
<= 해당 Variant가 존재하는지를 체크한다
3. ALV Sample.
4. YALV_04 출력화면
ALV Sample
3. ALV Sample.
ALV Sample
1. YALV_04 설명 - 사용된 함수
CALL FUNCTION 'REUSE_ALV_BLOCK_LIST_INIT'
<= 초기화시킴
EXPORTING
i_callback_program
= g_repid
i_callback_user_command
= g_user_command
<= Sy-repid
i_callback_pf_status_set = g_status.
CALL FUNCTION 'REUSE_ALV_BLOCK_LIST_HS_APPEND'
<= 두개의 인터널 테이블 Display
EXPORTING
is_layout
= alv_layout
it_fieldcat
= it_fieldcat1
is_keyinfo
= gt_keyinfo
<= 뒷장 a 참조
i_header_tabname
= 'IT_HEADER'
<= Header 가 되는 Internal Table
i_item_tabname
= 'IT_BODY'
<= Body 가 되는 Internal Table
it_events
= alv_events
TABLES
t_outtab_header
= it_header
<= Header internal Table
t_outtab_item
= it_body.
<= Body Internal Table
3. ALV Sample.
ALV Sample
CALL FUNCTION 'REUSE_ALV_BLOCK_LIST_APPEND'
EXPORTING
it_fieldcat = it_fieldcat
<= Field Catalog
is_layout
= alv_layout
i_tabname
= 'IT_BSEG'
it_events
= alv_events
it_sort
= gt_sort_table
<= Sort 순서
= it_bseg.
<= Display 하고자 하는 테이블
<= Append 하고자 하는 인터널 테이블
TABLES
t_outtab
CALL FUNCTION 'REUSE_ALV_BLOCK_LIST_DISPLAY'
<= 화면에 출력한다
EXPORTING
is_print = gt_print.
<= 뒷장 b 참조
3. ALV Sample.
a.
ALV Sample
gt_keyinfo 설명
두개의 인터널 테이블의 연관성을 정의한다.
정의:
DATA: gt_keyinfo
값설정:
gt_keyinfo-header01 = 'BELNR'.
gt_keyinfo-item01
TYPE slis_keyinfo_alv.
= 'BELNR'.
<= Header Table의 BELNR Field와
Body Table의 BELNR을 묶어서
Header Table의 BELNR을 기준으로 출력
b.
gt_print 설명
프린트 Option을 설정한다.
정의:
DATA: gt_print
TYPE slis_print_alv.
3. ALV Sample.
5. YALV_05 출력화면
ALV Sample
3. ALV Sample.
1.
ALV Sample
YALV_05 설명 - 사용된 함수
CALL FUNCTION 'REUSE_ALV_POPUP_TO_SELECT'
EXPORTING
I_TITLE
= 'Sample Test'
<= Popup화면 Title
I_ZEBRA
= 'X'
i_tabname
= 'IT_BSEG'
<= 사용할 인터널 테이블
IT_FIELDCAT
= it_fieldcat
<= Field Catalog
= ls_sel
<= 선택되어진 라인정보
= it_bseg
<= 출력되어질 인터널 테이블
IMPORTING
ES_SELFIELD
TABLES
t_outtab
*
EXCEPTIONS
*
PROGRAM_ERROR
= 1
*
OTHERS
= 2
3. ALV Sample.
6. YALV_06 출력화면
ALV Sample
3. ALV Sample.
1.
ALV Sample
YALV_06 설명 - 사용된 함수
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
*
i_callback_program
= g_repid
<= Sy-repid
i_callback_pf_status_set
= g_status
<= PF-STATUS
i_callback_user_command
= g_user_command
<= User_COMMAND
i_background_id
= 'ALV_BACKGROUND'
<= Back Ground ID
I_GRID_TITLE
= '상세내역'
is_layout
= alv_layout
<= Layout정의
it_fieldcat
= it_fieldcat
<= Field Catalog정의
it_sort
= gt_sort_table
<= Sort순서정의
i_save
= g_save
<= A, U:User-Specific
is_variant
= g_variant
<= Variant
it_events
= alv_events
<= Event 정의
= it_bseg.
<= 실제 보여줄 테이블
TABLES
t_outtab
3. ALV Sample.
ALV Sample
CALL FUNCTION 'REUSE_ALV_VARIANT_DEFAULT_GET'
<= Default Variant를 가져온다
EXPORTING
i_save
= g_save
CHANGING
cs_variant = gt_variant
EXCEPTIONS
not_found
= 2.
CALL FUNCTION 'REUSE_ALV_VARIANT_F4'‘
EXPORTING
is_variant
= g_variant
i_save
= g_save
it_default_fieldcat =
IMPORTING
e_exit
= g_exit
es_variant
= gt_variant
EXCEPTIONS
not_found = 2.
<= F4 Help를 만든다.
3. ALV Sample.
ALV Sample
CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
<= List body comment block output
EXPORTING
*
i_logo
= 'HTMLCNTL_TESTHTM2_SAPLOGO'
*
i_logo
= 'ENJOYSAP_LOGO'
*
i_logo
= 'PMMN_LOGO'
i_logo
= 'Z_YMS'
it_list_commentary = gt_list_top_of_page.
a.
<= Logo
<= 아래 a 참조
gt_list_top_of_page 설명
Grid Control의 Header에 들어갈 내용을 인터널 테이블로 만든다.
정의:
DATA: gt_list_top_of_page type slis_t_listheader.
값설정:
여기서 gt_list_top_of_page-typ : H : Header / S : Selection / A : Action을 의미한다
Header 부분
Selection 부분
Action 부분
3. ALV Sample.
ALV Sample
값을 넣어줄때
* Header 정의
CLEAR lt_line.
lt_line-typ
=
'H'.
<= Header
lt_line-info
=
text-002.
<= 전표리스트
APPEND lt_line
TO it_top_of_page.
* Selection 정의
CLEAR lt_line.
lt_line-typ
=
'S'.
<= Selection
lt_line-key
=
text-003.
<= 회사코드
lt_line-info
=
p_bukrs.
APPEND lt_line
TO it_top_of_page.
lt_line-key
=
text-005.
lt_line-info
=
lt_text.
APPEND lt_line
TO it_top_of_page.
<= 전기기간
* Action 정의
CLEAR lt_line.
lt_line-typ
=
'A'.
lt_line-info
=
'Detail List'.
APPEND lt_line
TO it_top_of_page.
<= Action
4. ALV 기대효과.
ALV의 기대되는 효과.
a) 단 시간에 효율적인 레포트를 작성함으로써 일의 효율성을 높힌다.
b) 하나의 레포트가 여러가지 기능을 제공함으로써 불 필요한 Add-on 프로그램을 줄일수 있다.
c) 고객의 신뢰를 구축하고 다른 동종업계와 차별화를 이룬다.
ALV 기대효과