>간략히 설명하면 스마트폼 양식을 (OTF) PDF파일로서 로컬에 다운받고자 합니다.
>게시글을 참조하여 진행중인데, 다음과 같은 절차 중 return이 안되는 막힘을 겪고 있습니다.
>
>
>(1) CALL FUNCTION 'SSF_FUNCTION_MODULE_NAME'
EXPORTING
formname = 'ZXXXXXX' "스마트폼명
IMPORTING
fm_name = func_mod_name
EXCEPTIONS
no_form = 1
no_function_module = 2
OTHERS = 3.
> IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
>
>
>(2) output_options-tdimmed = 'X' .
output_options-tddelete = 'X' .
output_options-tdnewid = 'X' .
output_options-tdfinal = 'X' .
output_options-tdnoprev = 'X' .
>
control_parameters-no_dialog = 'X'.
control_parameters-preview = space.
control_parameters-no_open = 'X'.
control_parameters-no_close = 'X'.
control_parameters-getotf = 'X'.
>
>(3) CALL FUNCTION func_mod_name
> EXPORTING
control_parameters = control_parameters
output_options = output_options
gs_head = gt_hd
IMPORTING
job_output_info = job_output_info
* document_output_info = document_output_info
* job_output_options = job_output_options
TABLES
it_item = lt_lineitem
EXCEPTIONS
formatting_error = 1
internal_error = 2
send_error = 3
user_canceled = 4
OTHERS = 5.
> IF sy-subrc = 0.
ENDIF.
>
>
>
>그리고나서 아래와같이 OTF 인터널테이블 값을 받는 작업이 필요합니다.
>
>
>
> it_otf[] = job_output_info-otfdata[]. // BUT, 디버깅 하면 값을 못받습니다.
>
>(4) CALL FUNCTION 'CONVERT_OTF'
EXPORTING
FORMAT = 'PDF'
MAX_LINEWIDTH = 132
IMPORTING
BIN_FILESIZE = v_bin_filesize
TABLES
otf = it_otf
lines = it_lines
EXCEPTIONS
ERR_MAX_LINEWIDTH = 1
ERR_FORMAT = 2
ERR_CONV_NOT_POSSIBLE = 3
ERR_BAD_OTF = 4.
>
>(5) CALL FUNCTION 'GUI_DOWNLOAD'
EXPORTING
bin_filesize = v_bin_filesize
filename = v_filename
filetype = 'BIN'
TABLES
data_tab = it_lines
EXCEPTIONS
file_write_error = 1
no_batch = 2
gui_refuse_filetransfer = 3
invalid_type = 4
no_authority = 5
unknown_error = 6
header_not_allowed = 7
separator_not_allowed = 8
filesize_not_allowed = 9
header_too_long = 10
dp_error_create = 11
dp_error_send = 12
dp_error_write = 13
unknown_dp_error = 14
access_denied = 15
dp_out_of_memory = 16
disk_full = 17
dp_timeout = 18
file_not_found = 19
dataprovider_exception = 20
control_flush_error = 21
OTHERS = 22.
>
>
>1 --> 5 번의 순서로 진행됩니다.
>그런데 중간에
>smartforms의 OTF파일을 받아서
>CONVERT할 FUNCTION에
>otf = it_otf 를통해 할당해야하는데 job_output_info-otfdata[] 값을 못받습니다.
>그래서 conversion이구 뭐구 못하고있어요.
>
>
>좀 도와주세요 고수분들
>제가 뭔가 결정적으로 MISS한게 있는거 같은데;
>
*************************************************
(3) 번 끝나고 아래적용
CALL FUNCTION 'SSF_CLOSE'
IMPORTING
JOB_OUTPUT_INFO = JOB_OUTPUT_INFO
EXCEPTIONS
FORMATTING_ERROR = 1
INTERNAL_ERROR = 2
SEND_ERROR = 3
OTHERS = 4.
it_otf[] = job_output_info-otfdata[].
이렇게 해보세여 값을 가져올거에요 ^^
*************************************************