리포트 프로그램에서 다음과 같이 출력을 하여야 하는데
테두리를 어떻게 만들어야 하는지 모르겠습니다.
답변 부탁드릴께요~
그리고 한가지만 더 질문할께요^^
라디오 박스를 만들었는데요
제가 만든 라디오 박스는
이름 0
나이 0
이런식으로 되있는데
사진처럼
0 이름 0 나이
이런 식으로 만드려며 어떻게 해야 되나요??
답변 부탁 드립니다.
댓글 5
-
거부기
2008.11.11 01:42
-
아상
2008.11.11 01:47
대답하려고 자료 찾고 로그인 하는 사이에 거부기 님이 답변달아주시네요^^
대답도 비슷해서 글질만 하고 갑니다.
comment에 5(10)이나 20(10) 대신에 그냥 괄호안에 숫자만 써주셔도 돌아가요
알아서 밀리는거래요 앞에께 범위 침범해서 에러뜨는거보다는 그냥 안쓰는게 낫다고 합니다.
-
bizarre
2008.11.11 01:51
테두리도 write 문으로 처리하심됩니다
예제를 준다면 헤더부분이랑 아이템 부분 나눠서 그리시면 조금 깔금하고 쉬울거에요
*&---------------------------------------------------------------------*
*& Form WRITE_HEADER
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* --> p1 text
* <-- p2 text
*----------------------------------------------------------------------*
FORM write_header .
DATA: name1 LIKE it_01-name1.
* LOOP AT it_01.
* name1 = it_01-name1.
* ENDLOOP.
SELECT SINGLE name1 INTO name1
FROM lfa1
WHERE lifnr = p_lifnr.
WRITE: 01(148) sy-title CENTERED.
WRITE:/ ' 구매처 : ',
13(10) p_lifnr,
30(20) name1,
116(8) '출력일',
125(1) ':',
127(148) sy-datum LEFT-JUSTIFIED.
WRITE:/ ' 오더번호 : ',
13(10) s_ebeln-low,
23(3) ' ~ ',
26(10) s_ebeln-high,
116(8) '출력자',
125(1) ':',
127(148) sy-uname LEFT-JUSTIFIED.
WRITE:/ ' 납품일 : ',
13(10) s_eindt-low,
23(3) ' ~ ',
26(10) s_eindt-high,
116(8) '페이지',
125(1) ':',
127(148) sy-pagno LEFT-JUSTIFIED.
FORMAT COLOR COL_HEADING INTENSIFIED OFF.
ULINE (148).
WRITE:/ '|',
03(11) '오더번호',
14(11) '품목번호',
25(10) '자재번호',
35(1) '|',
36(33) '자재내역',
69(10) '구매그룹',
79(14) '오더수량' CENTERED,
94(5) '단위',
99(14) '단가' CENTERED,
113(6) '단위',
119(14) '금액' CENTERED,
133(6) '단위',
139(9) '생성자',
148(1) '|'.
ULINE (148).
ENDFORM. " WRITE_HEADER
*&---------------------------------------------------------------------*
*& Form WRITE_DATA
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* --> p1 text
* <-- p2 text
*----------------------------------------------------------------------*
FORM write_data .
DATA: sum1 LIKE ekpo-netpr,
sum2 LIKE ekpo-netwr.
DATA: cnt TYPE i.
CLEAR: l_ebeln, sum1, sum2, cnt.
FORMAT COLOR COL_BACKGROUND INTENSIFIED OFF.
LOOP AT it_01.
IF it_01-ebeln <> l_ebeln.
l_ebeln = it_01-ebeln.
ENDIF.
AT END OF ebeln.
SUM.
WRITE : '|'.
WRITE : 03(10) l_ebeln,
80(15) '구매문서 합계',
97(12) it_01-netpr CURRENCY 'KRW', "it_01-waers,
113(4) 'KRW',
117(15) it_01-netwr CURRENCY 'KRW', "it_01-waers,
133(6) 'KRW',
148(1) '|'.
HIDE it_01-ebeln.
ULINE (148).
ENDAT.
ENDLOOP.
ENDFORM. " WRITE_DATA
*-- AT LINE-SELECTION
AT LINE-SELECTION.
IF k_buffer = 1.
k_buffer = 2.
CLEAR: l_ebeln, b_ebeln.
READ TABLE it_01 INTO b_ebeln
WITH KEY it_01-ebeln.
NEW-PAGE.
PERFORM write_header.
FORMAT COLOR COL_BACKGROUND INTENSIFIED OFF.
LOOP AT it_01.
IF it_01-ebeln = b_ebeln.
IF it_01-ebeln <> l_ebeln.
l_ebeln = it_01-ebeln.
WRITE:/ '|',
03(11) it_01-ebeln CENTERED.
ELSE.
WRITE:/ '|',
03(11) '' CENTERED.
ENDIF.
WRITE:
25(10) it_01-matnr CENTERED,
35(1) '|',
36(33) it_01-maktx LEFT-JUSTIFIED,
69(10) it_01-ekgrp CENTERED,
79(14) it_01-menge RIGHT-JUSTIFIED,
94(5) it_01-meins CENTERED,
99(10) it_01-netpr CURRENCY it_01-waers,
113(6) it_01-waers,
116(14) it_01-netwr CURRENCY it_01-waers,
133(6) it_01-waers,
139(9) it_01-ernam CENTERED,
148(1) '|'.
ENDIF.
ENDLOOP.
ULINE.
ELSE.
k_buffer = 1.
PERFORM write_header.
PERFORM write_data.
ENDIF.
ENDFORM.
write 부분 참조만 하심될듯...
-
스땐
2008.11.11 03:01
핫.. 저도 참고해야 겠어요 감사
-
튀밥
2008.11.11 05:20
성의 있는 답변 감사 드립니다.^^
SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE text-001.
SELECTION-SCREEN BEGIN OF LINE.
PARAMETERS a RADIOBUTTON GROUP gro1.
SELECTION-SCREEN COMMENT 5(10) text-002.
PARAMETERS b RADIOBUTTON GROUP gro1.
SELECTION-SCREEN COMMENT 20(10) text-003.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN END OF BLOCK b1.
이렇게 하시면 SELECTION-SCREEN은 될것 같네요.
SELECTION-SCREEN F1(도움말)눌러보시면 LAYOUT 자세하게 나와있어요. 한번 살펴보시길..
라인출력은 WRITE문을 못쓰신다는건지 아니면 단순히 저 모양을 만들지 못하시는건지 잘 이해가 안가네요..^^