테이블컨트롤을 공부하고 있는데 버튼을 누르면 라인이 삭제되어야 하는데
WHEN 'DELETE'.
IF flag = 'X'.
LOOP AT itab.
IF itab-mark = 'X'.
index = sy-tabix.
DELETE itab INDEX index.
ENDIF.
ENDLOOP.
ENDIF.
제머리론 이렇게 밖에 안나오는데 역시나 안되더라구요
delete버튼을 누르면 라인이 삭제되어야 하는데 일단 플래그가 엑스란말은 플래그가 엑스일땐 수정모드라는뜻이구요
수정모드일때 아이텝에 마크가 엑스 즉 한줄 선택 이면 그라인을 읽어서 아이템에서 그라인을 지워라 제나름대로 해봤는데 안되더라구요 고수님들의 수정부탁드립니다 좀 급한데 ㅠㅠ 부탁드릴께요 아침부터 공부는 안되고 졸립기만 하네요 다들 힘드시겠지만 오늘도 고생하십시요
댓글 6
-
activeman
2008.05.07 19:23
-
할일없는무급개발자
2008.05.07 20:23
WHEN 'DELETE'.
IF flag = 'X'.
READ TABLE ITAB WITH KEY MARK = 'X'.
IF SY-SUBRC = 0.
DELETE ITAB WHERE MARK = 'X'.
ELSE.
MESSAGE S000 WITH '삭제할 라인을 선택하세요.'.
ENDIF.
ENDIF.
저는 이런식으로해요..
ITAB 에 데이터만 삭제할경우이고 디비에 있는값을 삭제하려면 로직이 조금더 들어가야겠죠,..
-
할일없는무급개발자
2008.05.07 20:26
그리고 연습중이라고 하시니 조회모드 일 때 아이콘 자체를 없에거나 비활성화 시키는걸 연습도 하시는게 좋을듯하네요..
현업들이 이런걸 더 좋아 하던대용..
-
밥먹고아밥해요
2008.05.08 17:57
선배님들의 조언감사드립니다 오늘 아이콘없애는것과 비활성 해봐야겠어요
그리고 엑티브님 위저드가 먼가요 전 이제 입문을 해서 그게 먼지 잘모르겠어요 ^^;
설명좀 부탁드릴께요
-
activeman
2008.05.12 05:28
스크린페인터에 보시면 테이블 컨트롤을 생성하는 버튼이 두개 있을겁니다.
거기에 보시면 일반적으로 테이블컨트롤 생성하는게 있구요..테이블컨트롤 위저드라는 버튼이 있습니다..
위저드를 이용하면 속성들만 차례대로 지정해 주면 테이블 컨트롤이 생성이 되고 간단하게 실행할 수 있는 소스가 자동으로
생성이 됩니다.
이것을 이용하면 테이블 컨트롤이 쉽게 생성이 되고 라인 추가 ,삭제, 스크롤, 페이지업,다운등의 버튼도 추가되고 소스도
자동으로 생성이 됩니다..
한번 실습해 보세요..
즐밥하세요..
-
밥먹고아밥해요
2008.05.13 22:38
답변주신 분들 모두 감사드립니다 휴일뒤에 출근 힘드실텐데 모두들 즐거운 하루 되시길 바랄께요
WHEN 'DELETE'.
IF flag = 'X'.
LOOP AT itab where mark = 'X'.
DELETE itab.
ENDLOOP.
ENDIF.
이렇게 하시면 될것 같습니다..
그리고 테이블 컨트롤 만드실때 위저드를 사용하세요..
그럼..삭제 추가 되는 로직이 자동으로 생성이 됩니다..
즐밥하세요..