안녕하세요... 요세 자주 질문을 올리네요.. 항상 성의 있는 답변 감사 드리구요
두가지 질문이 있어 이렇게 글을 올립니다.
1. 펑션에 관한 질문입니다.
만약에 2008년 2월로 예를 들자면,
2월 첫째 주 (2월 1일은 금요일 입니다. 2일은 토욜일 3일 은 일요일) = 3일
2월 두째 주 (2월 4일 ~ 2월 10일) = 7일
2월 세째 주 (2월 11일 ~ 2월 17일) = 7일
2월 네째 주 (2월 18일 ~ 2월 24일) = 7일
2월 다섯째 주 (2월 25일 ~ 2월 29일) = 5일
맨 끝에 보시면 빨간색일자를 가지고 오는 펑션이 있는지 알고 싶습니다.
2. 프로그램을 작성하여, 정해진 엑셀 포멧에 맞게 그값을 넣어주고, 인쇄를 눌렀을때
그 포멧에 맞게 출력 하는 프로그램을 작성 하여야 합니다. 관련하여, 작성된 소스나,
노하우를 좀 부탁 드리겠습니다.
항상 감사 드립니다. 수고하십시요.
1. CALL FUNCTION 'FIMA_DAYS_AND_MONTHS_AND_YEARS'
EXPORTING
i_date_from = p_zdldat-low
i_date_to = p_zdldat-high
IMPORTING
e_days = p_days.
2. 정해진 엑셀 포멧에 값을 넣어 주는 방법은 아래소스를 참고 하십시요.
정해진 엑셀 포멧에 값을 넣어 주는 방법도 직접 abap에서 각셀에 넣어
주시는 방법이 있고(양식이 간단할 경우) 데이터만 엑셀시트에 넘겨주고 vba를 이용해서 엑셀
에서 프로그램 해주는 방법이 있습니다.
참고하십시요
READ TABLE IT_TAB WITH KEY MARK = 'X'.
BOOKS = 'Sheet1'.
CREATE OBJECT EXCEL 'EXCEL.APPLICATION'. "EXCEL을 사용한다
SET PROPERTY OF EXCEL 'VISIBLE' = 1. "화면에 보여준다
CALL METHOD OF EXCEL 'WORKBOOKS' = BOOKS. "SHEET 선택
CALL METHOD OF BOOKS 'OPEN' "화일을 OPEN한다
EXPORTING #1 = 'C:일자별불량율(결함별).xls'.
DESCRIBE TABLE IT_GRAPH LINES ROW.
PERFORM FILL_CELL USING 1 20 ROW.
PERFORM FILL_CELL USING 1 21 IT_TAB-MAKTX.
PERFORM FILL_CELL USING 1 22 IT_TAB-KURZTEXT.
ROW = 1.
LOOP AT IT_GRAPH.
PERFORM FILL_CELL USING ROW 1 IT_GRAPH-ZJOBDT.
PERFORM FILL_CELL USING ROW 2 IT_GRAPH-BDPCT.
ROW = ROW + 1.
ENDLOOP.
FREE OBJECT EXCEL.
FORM FILL_CELL USING I J VAL.
CALL METHOD OF EXCEL 'CELLS' = CELL EXPORTING #1 = I #2 = J.
SET PROPERTY OF CELL 'VALUE' = VAL.
ENDFORM. " FILL_CELL