~
if ~ is initial.
message e000 with 'Incorrect Number!'.
endif.
에러메시지를 위의 내용처럼 처리하면 에러메시지 박스 체크버튼을 누르면
에러메시지 창이 close되고 커서는 보이지 않는데요.. 에러메시지 박스가 나오기 전의
입력 필드에 커서를 놓을수 없는지요..
댓글 7
-
사탕수수
2008.06.17 03:03
-
activeman
2008.06.17 03:21
에러메시지 전에 GET CURSOR 명령어가 와야 겠지요..
그리고 PBO 끝에 SET CURSOR 명령어가 와야 커서가 원하는 위치로 가게 됩니다.
에러메시지 이후에는 시스템에서 제어 하기 때문에 에러메시지 이후의 PAI로직은 수행하지 않고 바로 PBO로 넘어 가게 됩니다..
참고 하세요..
-
풍뎅이
2008.06.17 07:02
사탕수수님, activeman님 .. 답변 감사드립니다. 그런데
에러메시지 창을 닫으면 커서는 해당 입력필드로 가는데 입력필드란이 입력모드로 되지 않습니다.
해당 모드대화상자의 process before output.에
아래와 같이 처리하면 첨부터 비활성화가 되는데.. 에러메시지창 닫은 후 입력필드에 데이터를
다시 입력하게 하려면 어떻게 해야하는지요..
module c_screen_mode output.
loop at screen.
screen-input = 1.
modify screen.
endloop.
-
루자빗
2008.06.17 17:01
MESSAGE ~ DISPLAY LIKE 'E' 옵션으로
에러 메시지를 좀 다르게 띄우는 꼼수를 쓰시는게 좋을 듯 합니다.
-
풍뎅이
2008.06.17 18:23
MESSAGE ~ DISPLAY LIKE 'E' 옵션으로 사용을 안해봤는데요.. 자세한 설명 주시면 감사하겠습니다.. -
루자빗
2008.06.17 18:34
에러 메시지를 띄우면 프로그램이 중단되어 버리니까요...
메시지를 띄우되 에러메시지로 보이게만 처리해 주시면 메시지 출력후 입력창이 비활성화 되는건 피할 수 있지 않을까요...
예를 들어 MESSAGE s000(00) DISPLAY LIKE 'E'. 로 주시면 S 타입의 정상처리 메시지가 사용자가 보기엔 E 타입의 에러메시지로 보이게 됩니다.
-
풍뎅이
2008.06.17 20:26
답변 감사합니다.
"Set Cursor Field 입력필드명" 이걸 써보시는게 어떨까여 ?