안녕하세요.
이번에 스마트폼 자동 출력 프로그램을 BDC 로직으로 구현하였는데,
이 프로그램을 실행하면 자동으로 출력되나,
백잡으로 걸어 출력하면 스풀로만 쌓이네요.
매일 아침 자동으로 출력까지 되게끔 할려면 어떤 설정을 해야 할까요?
경험 많으신 고수님의 도움 요청 드립니다.
댓글 8
-
sapabap
2019.01.25 23:21
-
로이
2019.01.31 01:18
답변 정말 감사드립니다.
스풀출력하는 펑션도 백잡으로는 출력은 안되네요.
스풀을 pdf 변환 후 메일 보내는걸 성공했는데요.
문제는 해당 열이 한글 영문 같이 있으니 한글이 깨져 보이네요.
이부분 혹시 아시나요?
-
sapabap
2019.01.31 16:33
안녕하세요.
t-code:spad에서 output device에 들어가셔서 Device Attriibutes의 device type을 한글이 지원되는 type으로 변경하셔야 합니다.
-
oracleuser
2019.01.31 17:37
일반적으로 KPSAPWIN을 선택 하시면 됩니다.
-
로이
2019.01.31 20:18
위의 방법을 해봐도 아래처럼 깨지네요.
ô ù ü ¥ ¥ ô ù ü ¥ ¥ ******************** … œ à X ˜ ˜
스마트폼 PDF 다운로드시 한글 깨짐 현상 어떻게 해결하나요?
우선 이게 성공해야 스풀 전송도 문제가 없을 듯 합니다.
-
로이
2019.01.31 20:56
스풀에서는
scm 납입추가 집계 이렇게 보이는데
CALL FUNCTION 'CONVERT_OTFSPOOLJOB_2_PDF'
EXPORTING
src_spoolid = spoolno
no_dialog = ' '
DST_DEVICE = 'ZHZP'
* PDF_DESTINATION =
IMPORTING
pdf_bytecount = numbytes
pdf_spoolid = pdfspoolid
* OTF_PAGECOUNT =
btc_jobname = jobname
btc_jobcount = jobcount
TABLES
pdf = pdf
EXCEPTIONS
err_no_otf_spooljob = 1
err_no_spooljob = 2
err_no_permission = 3
err_conv_not_possible = 4
err_bad_dstdevice = 5
user_cancelled = 6
err_spoolerror = 7
err_temseerror = 8
err_btcjob_open_failed = 9
err_btcjob_submit_failed = 10
err_btcjob_close_failed = 11.
CASE sy-subrc.
WHEN 0.
PERFORM bd_textbox_msg(rstxpdft) USING 80
'Funktion CONVERT_OTFSPOOLJOB_2_PDF erfolgreich'(001).
WHEN 1.
PERFORM bd_textbox_err(rstxpdft) USING 80
'Kein OTF- und kein ABAP-Spoolauftrag'(002).
EXIT.
WHEN 2.
PERFORM bd_textbox_err(rstxpdft) USING 80
'Spoolauftrag existiert nicht'(003).
EXIT.
WHEN 3.
PERFORM bd_textbox_err(rstxpdft) USING 80
'Keine Berechtigung zum Lesen Spoolauftrag'(004).
EXIT.
WHEN OTHERS.
PERFORM bd_textbox_err(rstxpdft) USING 80
'Fehler bei Funktion CONVERT_OTFSPOOLJOB_2_PDF'(005).
EXIT.
ENDCASE.이 펑션 호출하여 pdf 파일 만들면
SCM ???????? 錡 이렇게 보입니다.
-
sapabap
2019.02.01 02:21
output device를 변경해가면서 테스트를 해봐야 하구요.
RSTXPDFT4 프로그램을 실행해서, 스풀을 pdf로 한번 변경해보세요.
-
로이
2019.02.12 02:48
네. 해당 프로그램으로 돌려봐도 깨져서 나오네요.
1 [BC]OLD스풀삭제
2 SCM ???????? 錡
이처럼 2번째 행에서만 깨지나오네요.
안녕하세요~~
스마트폼 호출하는 함수 실행 하구요.
CALL FUNCTION func_name
EXPORTING
control_parameters = ssfctrlop
output_options = ssfcompop
user_settings = usr_set "' '
* p_nogrp = p_nogrp
* g_page_no = g_page_no
* i_aufnr = t_s041-aufnr
htab = w_hctab
loc_date = gv_date
loc_time = gv_time
IMPORTING
job_output_options = ssfcresop
job_output_info = ssfcrescl
TABLES
htab1 = hctab
itab = ictab
EXCEPTIONS
formatting_error = 1
internal_error = 2
send_error = 3
user_canceled = 4
OTHERS = 5.
return_code = sy-subrc.
DATA: l_spoid TYPE rspoid.
DATA : spool_id_c(20).
CLEAR l_spoid.
IF spool_set = 'X'.
READ TABLE ssfcrescl-spoolids INTO l_spoid INDEX 1.
스마트폼 출력하는 함수 호출해서 spool 번호 가지고오구요.
스풀을 프린트하는 다음함수 실행 하면 되겠네요.
CALL FUNCTION 'RSPO_OUTPUT_SPOOL_REQUEST'
EXPORTING
spool_request_id = spool_id
EXCEPTIONS
archive_dest_invalid = 1
archive_dest_not_found = 2
archive_dest_no_right = 3
cannot_archive = 4
change_archdest_no_right = 5
change_copies_no_right = 6
change_dest_no_right = 7
change_devtype_no_right = 8
change_prio_no_right = 9
change_telenum_no_right = 10
change_title_no_right = 11
dest_invalid = 12
dest_not_found = 13
dest_no_right = 14
internal_problem = 15
invalid_fax_attribute = 16
invalid_parameters = 17
non_owner_no_right = 18
no_layout = 19
no_spool_request = 20
out_again_no_right = 21
spooler_problem = 22
OTHERS = 23.