아래 소스에 뭐가 부족해서 subscreen에 데이터가 안나오나요?
소스중에 call screen 100으로 더블클릭해서
layout에 들어가서 subscreen를 만들고 이름을 area1로 하고 element list에서 area1과 ok_code가 있고
flow logic에도 작성했고요.
보시고 자세한 조언부탁합니다.
REPORT z_taw10_16_43.
CONSTANTS: actvt_display TYPE activ_auth VALUE '03',
actvt_change TYPE activ_auth VALUE '02'.
PARAMETERS pa_anum TYPE sbook-agencynum.
DATA: wa_booking TYPE sbook.
DATA: wa_sbook TYPE sbook.
DATA: ok_code TYPE sy-ucomm.
TABLES sbook.
START-OF-SELECTION.
SELECT carrid connid fldate bookid customid
FROM sbook
INTO CORRESPONDING FIELDS OF wa_booking
WHERE agencynum = pa_anum.
AUTHORITY-CHECK OBJECT 'S_CARRID'
ID 'CARRID' FIELD wa_booking-carrid
ID 'ACTVT' FIELD actvt_display.
IF sy-subrc = 0.
WRITE: / wa_booking-carrid COLOR COL_KEY,
wa_booking-connid COLOR COL_KEY,
wa_booking-fldate COLOR COL_KEY,
wa_booking-bookid COLOR COL_KEY.
HIDE: wa_booking-carrid,
wa_booking-connid,
wa_booking-fldate,
wa_booking-bookid.
ENDIF.
ENDSELECT.
AT LINE-SELECTION.
AUTHORITY-CHECK OBJECT 'S_CARRID'
ID 'CARRID' FIELD wa_booking-carrid
ID 'ACTVT' FIELD actvt_change.
IF sy-subrc = 0.
SELECT SINGLE *
FROM sbook
INTO wa_sbook
WHERE carrid = wa_booking-carrid
AND connid = wa_booking-connid
AND fldate = wa_booking-fldate
AND bookid = wa_booking-bookid.
IF sy-subrc = 0.
MOVE-CORRESPONDING wa_sbook TO sbook.
CALL SCREEN 100.
ENDIF.
ELSE.
MESSAGE ID 'BC400' TYPE 'S' NUMBER '047'
WITH wa_booking-carrid.
ENDIF.
CLEAR: wa_sbook, wa_booking.
*&---------------------------------------------------------------------*
*& Module clear_ok_code OUTPUT
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
MODULE clear_ok_code OUTPUT.
CLEAR ok_code.
ENDMODULE. " clear_ok_code OUTPUT
*&---------------------------------------------------------------------*
*& Module USER_COMMAND_0100 INPUT
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
MODULE user_command_0100 INPUT.
CASE ok_code.
WHEN 'BACK'.
LEAVE TO SCREEN 0.
WHEN 'SAVE'.
MOVE-CORRESPONDING sbook TO wa_sbook.
MESSAGE ID 'BC400' TYPE 'I' NUMBER '060'.
LEAVE TO SCREEN 0.
ENDCASE.
ENDMODULE. " USER_COMMAND_0100 INPUT
댓글 5
-
기쁨
2010.10.22 23:17
-
Tester
2010.10.23 00:57
서브스크린으로 넘어갔으면 서브스크린 소스를 올려 주셔야 확인 할 수 있을것 같네요 ^^
-
로미오
2010.10.23 06:08
screen type을 subscreen으로 하니 "delete the name OK_CODE of the OK_CODE field first"라고
에러메시지가 나와 현재는 normal 타입으로 했습니다.
flow logic 소스는
PROCESS BEFORE OUTPUT.
MODULE clear_ok_code.
PROCESS AFTER INPUT.
MODULE USER_COMMAND_0100.
현재 소스는 이것 뿐입니다.
-
기쁨
2010.10.23 06:50
스크린타입을 subscreen으로 하면 ok_code 설정할 수 없습니다.
1. 스크린 100 은 일반스크린으로 하고, (서브스크린, 모달스크린... 이런거 말구요.)
PBO에 status 설정해서 module 넣어주고, status 만드세요. (save, back 버튼 활성해서)
user_command_0100 보니까 save랑 back 기능 있던데요.
call screen ..
2. 서브스크린 200으로 하구요.
여기에 뭔가 표현해주고,,,,데이타를 뿌려주던가.. 하면 될것 같은데..
지금 집이라서 대충 몇자 적어요~
-
로미오
2010.10.25 08:43
감사합니다....................
스크린 소스는 어떻게 하셨는지 알려주세요~~ ^^;;