안녕하세요~
질문이 두가지가 있습니다.
번호 | 필드이름 | 필드이름 | 체크박스1 | 체크박스2 | 필드이름 | 더블클릭 |
1 | DATA | DATA | □ | □ | DATA | DATA1 |
2 | DATA | DATA | □ | □ | DATA | DATA2 |
ALV 결과에 체크 박스를 넣어줘야합니다.
체크박스1 과 체크박스2에 들어가는 체크값은 데이터로 받아와서 체크 된것만 체크박스에 체크가 되게 뿌려줘야 하는데
우선은 체크박스 자체도 만들어지지 않습니다.
데이터선언하는 부분에 MARK선언하고 필드캣에 만들고 레이아웃부분에 선언도 했는데 만들어지지 않습니다.
그리고 두번째 질문은.
더블클릭을 해서 콜 트랜잭션을 하여 해당 트랜잭션을 실행하는것인데
회사코드와 자산번호가 필요합니다.
디버깅을 타보니 회사코드 자산번호 모두 인터널테이블에 값이 있는데도 불구하고
회사코드를 가지고 오지 못합니다.
소스------------------------------------------------------
IF P_SELFIELD-FIELDNAME = 'ANLN1'.
SET PARAMETER ID 'AN1' FIELD P_SELFIELD-VALUE.
SET PARAMETER ID 'BUK' FIELD GT_TAB-BUKRS.
------------------------------------------------------------
아시는분 답변 부탁드립니다^^
ALV 결과에 체크 박스를 넣어줄려면 필드카탈로그를 만들때 해당 필드를
체크박스형태로 해야 합니다.
FIELDCAT-FIELDNAME = '필드명'
FIELDCAT-CHECKBOX = 'X'
그리고 해당필드 값이 'X' 또는 SPACE 로 들어가 있다면 그대로 데이터를
뿌려주면 되지만 1/0, Y/N 등으로 값이 들어가 있다면 자료를 뿌려주기 전에
해당 인터널 테이블을 LOOP 돌면서 'X' 또는 SPACE 로 값을 수정해 줘야 겠죠.
데이터선언하는 부분에 MARK선언하는 것은 행 선택과 관련해서
제일왼쪽 부분을 체크박스 또는 블록표시 모양으로 보여 주는 것입니다.
체크박스는 REUSE_ALV_LIST_DISPLAY 인 경우 표시됩니다.
*** 두번째 답변 ***
더블클릭시 해당 인덱스를 가지고 인터널 테이블 자료를 읽어서
SET PARAMETER ~ 처리를 해야 합니다.
READ TABLE GT_TAB INDEX P_SELFIELD-TABINDEX.