테이블 컨트롤로 입력 프로그램을 만들고 있는데 첨 시작하다 보니 자꾸 막히네요.
질문 1. 입력한 값이 엔터를 쳐도 사라지지 않게 할 방법이 없나요?
테스트하려고 테이터를 입력하는데 엔터를 치면 사라져요.
질문 2. 오른쪽 스크롤 막대를 나타내는 방법은 멀까요?
책을 보니 DESCRIBE TABLE itab LINES flights-lines.을 사용하라고 되어있지만 이 경우는 DB의 데이터를
가져오는 경우에 사용하는 것 같고... 저는 순수 입력만 하는 거라 초기 데이터가 없거든요.
라인을 100정도 주려고 할 경우는 어찌해야 할까요?
댓글 3
-
운차이
2008.11.24 21:53
-
기본도없는초보
2008.11.25 05:35
1. 엔터치셨을때 모디파이구문이나 어펜드 구문이 있는지 확인하시고 없으면 해주셔야 합니다.
2. DESCRIBE TABLE itab LINES flights-lines 여기서 flight이것이 테이블컨트롤 이름인가요 ?
만약 테이블 컨트롤 이름이라면 위의구문이 하는역할은 인터널 테이블의 라인수와 테이블 컨트롤라인수를 같게 마춰주는겁니다.
만약 라인을 더 많이 열어주고 싶다면 테이블컨트롤라인에 + 100 하심 됩니다.
-
행복을 파는 외계인
2008.11.25 19:29
운차이님 기본도없는초보님 답변 감사드립니다.
이해는 되는데 질문부터가 잘못된 것 같습니다.
일반 리포트는 데이터를 선언해서 파라미터와 인터널테이블의 필드값을 1:1로 비교하거나 넣어줄 수 있는데 테이블 컨트롤은 어떻게 해야하는지 부터 알아봐야겠네요.
답1. 값을 입력하고 엔터를 치면 기본적으로 PAI를 타고 PBO를 타게 됩니다.
그런데 PAI부분에서 DATA MODIFY를 해주지 않으면 PBO를 탈때 DATA가 사라집니다.
위같은 경우는 새로운 LINE를 추가시키는 경우이므로 DATA APPEND를 시켜야 합니다.
답2. TABLE CONTROL의 LINES필드에 값을 넘겨주는 로직이 있는걸로 봐서
DATA가 재대로 APPEND되면 오른쪽 스크롤바가 활성화 될걸로 보입니다.
INTERNAL TABLE 에 DATA가 없다면 위 화면처럼 오른쪽 스코롤바가 생기지 않습니다.