고수님들 도와주세요
리스트의 header 부분은 top-of-page에 기록하면 리스트 스크롤을 내려도 항상 보이자나요
화면의 마지막 부분은 일정 양식을 항상 보이기 하기 위해서는 end-of-page가 있듯이
밑의 양식의 리스트가 있는데요 리스트의 길이가 길어서 스크롤을 옆으로 하면 당연히 앞의 필드들이 안보이게 됩니다.
그런데 옆으로 스크롤을 하더라도 저 일자 부분의 필드는 항상 고정해서 화면에 나타내고 싶거든요
마치 left-of-page이런 것은 없나요?
그리고 리스트를 출력해보니 너무 촘촘히 나와서 행의 폭을 늘리러고하는데 write문으로 이루어져 있어요
무슨 옵션 같은건 없나요?
----------------------------------------------------------------------
| 일자 | | | | | <- header
----------------------------------------------------------------------
| a | | | | | <- body
----------------------------------------------------------------------
| a | | | | |
----------------------------------------------------------------------
| a | | | | |
----------------------------------------------------------------------
| a | | | | |
----------------------------------------------------------------------
| a | | | | |
----------------------------------------------------------------------
| a | 이 행의 폭을 늘리고 싶습니다. 엔터 말고요 폭 자체를 조절하는건 없나요?
----------------------------------------------------------------------
댓글 6
-
아밥퍼
2009.02.10 22:07
-
아카드05
2009.02.10 22:09
일자 필드가 길이가 10이라고 하면,
set left scroll-boundary column 10.
이런식으로 하시면 지정된 길이 10 만큼은 스크롤 시 고정됩니다.
엔터 없이 행의 높이를 조절하는 방법은 잘 모르겠습니다^^;
-
아바퍼
2009.02.10 23:51
답변 너무 감사합니다.
그런데 문제는 list부분을 제외한 list 위 아래 부분도 같이 fix된다는게 문제네요.
어쩌죠
-
아카드05
2009.02.11 00:30
위 아래 텍스트 부분까지 고정열이 적용된다는 말씀이시죠?
저희쪽 같은 경우는 그냥 고정열 적용하면 헤더 위의 글자들까지 다 적용된다는 식으로 얘기하면 현업이 너그럽게 이해하던데요..ㅎㅎ;;
ALV에서는 간단히 해결 가능할텐데요..
일반 레포트 화면에서 리스트의 고정열과 리스트 위에 따로 표시하는 텍스트의 고정열을 따로 가져가는 방법은....
다른분께서 알고계시다면 답변을...^^;
-
아바퍼
2009.02.11 01:46
이유를 알았습니다. 그런데 또 문제가.. 흑흑
REPORT ZTESTTEST NO STANDARD PAGE HEADING
LINE-COUNT 3 LINE-SIZE 300.
START-OF-SELECTION.
DO 3 TIMES.
WRITE: / sy-vline NO-GAP, 'SY-INDEX:'NO-GAP, sy-vline NO-GAP.
DO 20 TIMES.
WRITE: sy-index, sy-vline NO-GAP.
ENDDO.
ENDDO.
DO 3 TIMES.
WRITE: / sy-vline NO-GAP, 'SY-INDEX:'NO-GAP, sy-vline NO-GAP.
DO 20 TIMES.
WRITE: sy-index, sy-vline NO-GAP.
ENDDO.
ENDDO.
SET LEFT SCROLL-BOUNDARY COLUMN 20.
DO 3 TIMES.
WRITE: / sy-vline NO-GAP,'SY-INDEX:', sy-vline NO-GAP.
DO 20 TIMES.
WRITE: sy-index, sy-vline NO-GAP.
ENDDO.
ENDDO.
write : / 'dodododododo'.
위와 같은경우에는 LINE-COUNT가 3으로 설정되어 한 페이지를 COUNT를 3으로 설정하게 되는거죠.
그래서 한 화면처럼 보이지만 3개의 화면이 한 화면에 뿌려 지게 되는것입니다.
SET LEFT SCROLL-BOUNDARY COLUMN 20. 는 한 페이지에 해당되는 것 같습니다.
문제는 여기서 저기 처럼 LINE-COUNT를 고정해버린다면 지금 같은 경우에는 N번을 설정해서 LOOP을 돌리지만
인터널테이블 2개를 뿌릴시 각각 인터널 테이블을 예상하여 LINE-COUNT에 넣을수도 없고 예상한다고 치더라도 두개의 인터널 테이블
카운트가 같으리라는 보장이 없으므로 LINE-COUNT를 고정시켜 사용한다는것은 말도 안되는것 같습니다.
어떻하죠?
-
kkamui
2009.02.11 02:55
첫번째 출력물의 DO와 두번째 출력물의 DO와 라인 카운트가 같다는 말씀이신지? ^^;;
* 1번 출력
DO 4 TIMES. <- 라인카우트와 같음
WRITE: / sy-vline NO-GAP, 'SY-INDEX:'NO-GAP, sy-vline NO-GAP.
DO 20 TIMES.
WRITE: sy-index COLOR 1, sy-vline NO-GAP.
* SET LEFT SCROLL-BOUNDARY
IF sy-index EQ 3.
SET LEFT SCROLL-BOUNDARY .
ENDIF.
ENDDO.
ENDDO.
* 2번 출력
DO 4 TIMES. <- 라인카우트와 같음
WRITE: / sy-vline NO-GAP, 'SY-INDEX:'NO-GAP, sy-vline NO-GAP.
DO 20 TIMES.
WRITE: sy-index COLOR 7, sy-vline NO-GAP.
* SET LEFT SCROLL-BOUNDARY
IF sy-index EQ 4.
SET LEFT SCROLL-BOUNDARY .
ENDIF.
ENDDO.
ENDDO.
SET LEFT SCROLL-BOUNDARY ~
엑셀에서 사용하는 틀고정 기능입니다.
좌측으로 이동시 컬럼단위 또는 사이즈를 준만큼 고정이 됩니다.
자세한 내용은 scroll 에 커서를 두고 F1 눌러서 내용참고하시면 됩니다.
loop at itab.
write : / itab-???,
itab-???.
endloop.
이렇게 하셨다면
loop at itab.
write : /, itab-???,
itab-???.
endloop.
이렇게 해 보세요.