클래스ALV 경험이 없는터라...
ALV 에 데이터가 뿌려져있고 모두 닫혀있는상태에서
제가 만든버튼을 누르면
ex) 1~10 까지 10개의 필드가 있으면 2번 5번 7번8번 필드만 열리고 수정할수있고
다시같은버튼을누르면 모두 닫히게 하려고 합니다..
조언부탁드립니다^^
행복한하루 되세요~!!
댓글 4
-
CoolGuy
2008.08.27 23:07
-
박근형
2008.08.27 23:52
수정가능하게 하려면 Style Table에 CL_GUI_ALV_GRID=>MC_STYLE_ENABLED를 넣으시고
수정불가능하게 하려면 Style Table에 CL_GUI_ALV_GRID=>MC_STYLE_DISABLED를 넣으시면 됩니다.
-
CoolGuy
2008.08.28 00:13
처음값이 MC_STYLE_ENABLED 인가요...
아님 모든필드에 제가입맛에맛게 저둘중하나를 넣어줘야하나요??
다닫혀있는상태에서 속성에서 열고싶은 필드만 MC_STYLE_ENABLED 이걸넣어주면되나요?
조금 자세한 설명부탁드려요!!
-
아밥시작4일
2008.08.28 02:56
쭈녕씨 이소스 참고해보세요 설명은 못드리겠고
DATA: ls_celltab TYPE lvc_s_styl,
l_mode TYPE raw4.
DATA: lt_fcat TYPE slis_t_fieldcat_alv,
ls_fcat TYPE slis_fieldcat_alv.
CASE p_flag.
WHEN 'X'.
l_mode = cl_gui_alv_grid=>mc_style_enabled.
WHEN OTHERS.
l_mode = cl_gui_alv_grid=>mc_style_disabled.
ENDCASE.
CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'
EXPORTING
i_program_name = 'ZFIWR001'
i_internal_tabname = 'GT_TAB'
i_inclname = 'ZFIWR001'
CHANGING
ct_fieldcat = lt_fcat.
LOOP AT lt_fcat INTO ls_fcat.
CASE ls_fcat-fieldname.
WHEN 'ZWI_ID' OR 'BUKRS' OR 'GJAHR' OR 'BELNR' OR
'PERNR' OR 'ZDATE' OR 'ZTIME' OR 'ZSTAT' OR
'BKTXT' OR 'WI_ID'.
ls_celltab-fieldname = ls_fcat-fieldname.
ls_celltab-style = cl_gui_alv_grid=>mc_style_disabled.
INSERT ls_celltab INTO TABLE pt_celltab.
ENDCASE.
CLEAR: ls_celltab.
ENDLOOP.
ls_celltab-fieldname = 'CHECKBOX'.
ls_celltab-style = l_mode.
INSERT ls_celltab INTO TABLE pt_celltab.
참 비슷한건데요 첨 조회로 데이터를 뿌려놓으면 닫혀있는상태에서 추가+ 버튼을 누르면
밑에 한칸이 생성돼는데요.
생성시역시 다열리는게 아니고 2번 5번 7번 8번 이런식으로 몇몇필드만 열리게 하려고합니다
안열리는건 고정이구요!!
조언 부탁드려요