인사관련해서 간단하게 report 프로그램을 만들고 있는데 도통 감이 안잡혀 문의좀 드릴려고 하는데요..
logical database : pnp
REPORT zed MESSAGE-ID zedm001.
TYPE-POOLS : slis.
TABLES : pernr.
infotypes : 0000, 0001, 0002, 9100 ,0006.
INITIALIZATION.
pnpstat1-sign = 'I'.
pnpstat1-option = 'NE'.
pnpstat1-low = '0'.
APPEND pnpstat1.
START-OF-SELECTION.
GET PERNR.
이제껏 select문으로 테이블 만들고 바로 가지고 왔는데 LDB는 어떤식으로 가지고 와서 alv로 리스트 조회 할수있을지 감이 안잡힙니다.. 간단한 예제 부탁드립니다.
댓글 6
-
아밥어렵네요
2010.09.30 03:08
-
abap왕초보
2010.09.30 06:38
답변 달아주셔서 너무 감사한데 이해가 잘 안가네요 ㅠㅠ
-
아빱초보
2010.09.30 17:53
정확하게 어떤 부분이 이해가 안가시는지요?...윗분 뎃글처럼 하시면 무난하다고 생각되어집니다~~ㅎ
-
abap왕초보
2010.09.30 18:12
흠 저는
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
I_STRUCTURE_NAME =
TABLES
T_OUTTAB =
여기다가 적용해서 데이터를 조회하려고 하거든요...기타 옵션 아무것도 안주고....
-
아빱초보
2010.09.30 19:46
아밥어렵네요님께서 뎃글 달아주신거 보시면 'APPEND 화면에 뿌려줄 인터널 테이블' 에서 화면에 뿌려줄 인터널 테이블을 하나 만드시고 t_output = 화면에 뿌려줄 인터널 테이블 을 넣으시면 나올껍니다...
데이터는 get pernr에 사번별로 loop 되어 지니까요.. 화면에 뿌려질 인터널 테이블에 append 하셔서 담고 그 담은 인터널 테이블을 뿌리시면 됩니다~~ㅎ
-
삼색볼펜
2010.10.13 19:03
쉽게 말하자면 get pernr..을 사용하시면 전 사원에 대해서 루프를 돌겠다는 의미정도로 생각하시면 되고요..
어차피 펑션을 사용해서 alv로 출력하실거라면 출력용 인터널 테이블을 t_outtab에 매치시켜주시고...
실제 보여주실 데이타를 출력용 인터널 테이블에 가져오시기만 하면 될거 같습니다.
LDB라고해서 특별히 많이 다르진 않습니다.
그리고 실제 LDB를 사용하시면 속도가 조금 늦습니다.
익숙치 않으시면 그냥 테이블에서 직접 데이타를 select하셔도 됩니다.
GET PERNR -> LOOP AT 역할
rp-provide-from-last p0000 ' ' p_date p_date.
IF pnp-sw-found = 1.
ENDIF.
rp-provide-from-last p0001 ' ' p_date p_date.
IF pnp-sw-found = 1.
ENDIF.
~~~
APPEND 화면에 뿌려줄 인터널 테이블
END-OF-SELECTION -> ENDLOOP. 역할
CALL SCREEN 스크린 번호
*****
END-OF-SELECTION 을 만나면 GET PERNR 으로 가서
다음 사번을 가져와서 다시 END-OF-SELECTION 만날때까지 프로세서 진행됩니다.