해외 사이트에서 답을 얻었습니다.
스풀 Open 하고 여기에 해당 Smart Form을 Loop 돌면서 담고-
이를 스풀 Close 시켜서- 인쇄 및 미리보기를 하는 기능을 구현하면 됩니다.
Smart Form의 내부 Loop 문을 이용하여 처리가 가능하지만,
저처럼 복잡한 구성의 내용이라면- 스풀을 이용하는 방법이 쉽게 처리될 수 있을듯 합니다.
처리했던 내용의 소스를 아래에 공유합니다.
------------------------------------------------
DATA: LS_INPUT TYPE SSFCOMPIN.
* 인쇄옵션
IF P_MODE = 'PRIN'. "인쇄
LS_INPUT-TDPREVIEW = ' '.
ELSEIF P_MODE = 'PRIV'. "미리보기
LS_INPUT-TDPREVIEW = 'X'.
ENDIF.
LS_INPUT-DIALOG = ' '. "인쇄창 띄우지 않기(SAP의 인쇄창)
LS_INPUT-TDIMMED = 'X'. "즉시인쇄
LS_INPUT-TDDELETE = 'X'. "인쇄후 삭제
*
CALL FUNCTION 'SSFCOMP_OPEN' "스풀 open
EXPORTING
INPUT = LS_INPUT
EXCEPTIONS
ERROR = 1
OTHERS = 2 .
* Smart Form 콜하기
LOOP AT GT_HEAD WHERE MARK = 'X'.
PERFORM CALL_SMARTFORMS USING 'PRIN'.
ENDLOOP.
*
CALL FUNCTION 'SSFCOMP_CLOSE'. "스풀 close
------------------------------------------------------
감사합니다.
>
>
>안녕하세요.
>
>
>청구서 Form을 만들었는데요.... Smartform 내부적으로 테이블이나 Loop를 사용하지 않고 만들었습니다.
>좀 복잡해서- 서브윈도로 다 만들었거던요 @_@;;
>
>그런데 이걸 이용해서 여러건을 인쇄할려고 하는데- 가능할까요??
>
>
>[참조 소스]
>loop at item.
> perform make_data.
>
> call function 'smartforms'.
>endloop.
>
>
>머 대충이런식의 프로그램으로 Smartforms 을 호출하는데요.
>Control 이나 Option 쪽에서 가능한지 알고 싶습니다!
>
>인쇄창은 한번만 보여주고- 여러건 인쇄 입니다. ^^;
>
>감사합니다.
>
>