그림에서처럼 사업자번호를 input파라메터에 넣은후 엔터를 눌렀을때
해당라인의 상호명을 only output파라메터에 보여주는식으로 짜야합니다..
상호명의 경우 한글이라 스페이스 오타로 틀린값이 있을수있어서
숫자로된 사업자번호로 조회후 수정, 삭제, 입력을 하는식으로 수정을 해야 하는데..
저는 이걸 모듈풀이 아닌 레포트로 만들었습니다.
사업자번호 입력시 엔터를 안치고 바로 상호명이 only output에 보여지면 더욱좋고요..
어떤 방식으로 해야할지 조언좀 부탁드리겠습니다.
엔터값 인식하게 하는걸 몰라서 억지로 스크린 100 만들어서 거기에 보여주는 형식으로 하려했는데
그것도 잘안되네요;
댓글 5
-
삼주
2009.02.27 01:27
-
nanta
2009.02.27 01:47
AT SELECTION-SCREEN OUTPUT.
여따 입맞대로 코딩하세요...
상황따라
LOOP AT SCREEN.
...
MODIFY SCREEN.
ENDLOOP.
이런식으로 스크린값 제어하셔도 됍니다.
-
nanta
2009.02.27 02:04
그냥 갈려다.. SELECT 조건으로 첨에 검색하시는거 같은데... CHECK 라서 혹시나하는 맘에.. 라디오 버튼으로 하시는거 났지않을까 싶네요..
아래 소스는 그냥 잡기입니다.. 라이오 버튼 따라 필드 바꿔주는건데.. 혹시 필요할까 해서요..
SELECTION-SCREEN: BEGIN OF BLOCK A2 WITH FRAME TITLE TEXT-004.
PARAMETERS: R_AP RADIOBUTTON GROUP RAD1 USER-COMMAND UCOM DEFAULT 'X',
R_AR RADIOBUTTON GROUP RAD1.
SELECTION-SCREEN: END OF BLOCK A2.
SELECTION-SCREEN END OF BLOCK A1.
SELECTION-SCREEN BEGIN OF BLOCK B1 WITH FRAME TITLE TEXT-002.
SELECT-OPTIONS: O_BELNR FOR ZCTFI045-BELNR MODIF ID MO1.
SELECTION-SCREEN END OF BLOCK B1.
SELECTION-SCREEN BEGIN OF BLOCK B2 WITH FRAME TITLE TEXT-003.
SELECT-OPTIONS: O_TAXNO FOR ZCTFI043-TAXINVNO MODIF ID MO2.
SELECTION-SCREEN END OF BLOCK B2.
AT SELECTION-SCREEN OUTPUT.
IF R_AP = 'X'.
CLEAR O_TAXNO[].
ELSEIF R_AR = 'X'.
CLEAR O_BELNR[].
ENDIF.
LOOP AT SCREEN.
CASE SCREEN-GROUP1.
WHEN 'MO1'.
IF R_AP = 'X'.
SCREEN-ACTIVE = 0.
ELSE.
SCREEN-ACTIVE = 1.
ENDIF.
WHEN 'MO2'.
IF R_AP = 'X'.
SCREEN-ACTIVE = 1.
ELSE.
SCREEN-ACTIVE = 0.
ENDIF.
ENDCASE.
MODIFY SCREEN.
ENDLOOP. -
SAYA
2009.02.27 17:32
TABLES : scarr.
PARAMETERS: p_no(3),
p_name(10).
DATA: *p_no(3).
AT SELECTION-SCREEN OUTPUT.
LOOP AT SCREEN.
IF screen-name EQ 'P_NAME'.
screen-input = 0.
MODIFY SCREEN.
ENDIF.
ENDLOOP.
AT SELECTION-SCREEN.
IF p_no NE space.
IF p_no EQ *p_no.
EXIT.
ELSE.
*p_no = p_no.
CLEAR p_name.
ENDIF.
CLEAR scarr.
SELECT SINGLE *
FROM scarr
WHERE carrid EQ p_no.
p_name = scarr-carrname.
ELSE.
CLEAR: *p_no, p_name.
ENDIF
참고하세요.
-
카츠
2009.02.27 19:17
소스 적용해서 무사히 완료했습니다 감사합니다 ^^
엔터 안치고는 모르겠는데요.. 엔터치면 output 이벤트블럭에서 상호명 받아서 넣으면 되지 않나요?