08-22-2011 1:32 PM
HI all,
I am converting smartform to pdf format.
but i get the error 0 bytes transported, code page 0000.
can anyone help me plz
08-22-2011 1:34 PM
08-22-2011 2:03 PM
hI..
data: i_otf LIKE itcoo OCCURS 100 WITH HEADER LINE,
i_pdf LIKE tline OCCURS 100 WITH HEADER LINE.
data: op_option type SSFCTRLOP,
job_output type SSFCRESCL.
*
*DATA : w_FILE_NAME type string,
w_File_path type string,
w_FULL_PATH type string,
W_bin_filesize TYPE i. " Binary File Size
*
op_option-getotf = 'X'.
CALL FUNCTION 'SSF_FUNCTION_MODULE_NAME'
EXPORTING
formname = 'ZHRM_BANK_LETTER'
VARIANT = ' '
DIRECT_CALL = ' '
IMPORTING
fm_name = f_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.
"ME
SORT itab BY srno.
*sort itab by pernr.
RANGES : c_abkrs FOR pa0001-abkrs.
c_abkrs-sign = 'I'.
c_abkrs-option = 'EQ'.
c_abkrs-low = p_abkrs-low.
c_abkrs-high = p_abkrs-high.
APPEND c_abkrs.
CALL FUNCTION f_name "'/1BCDWB/SF00000005'
EXPORTING
ARCHIVE_INDEX =
ARCHIVE_INDEX_TAB =
ARCHIVE_PARAMETERS =
CONTROL_PARAMETERS = OP_OPTION "***CHANGED
MAIL_APPL_OBJ =
MAIL_RECIPIENT =
MAIL_SENDER =
OUTPUT_OPTIONS =
USER_SETTINGS = 'X' "***CHANGED
p_abrp = p_pabrp
p_pabrj = p_pabrj
p_abkrs = c_abkrs-low
IMPORTING
DOCUMENT_OUTPUT_INFO = JOB_OUTPUT "***CHANGED
JOB_OUTPUT_INFO =
JOB_OUTPUT_OPTIONS =
TABLES
itab = itab
EXCEPTIONS
formatting_error = 1
internal_error = 2
send_error = 3
user_canceled = 4
OTHERS = 5
.
IF sy-subrc <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
*****CHANGED ON
CALL FUNCTION 'CONVERT_OTF'
EXPORTING
FORMAT = 'PDF'
MAX_LINEWIDTH = 132
ARCHIVE_INDEX = ' '
COPYNUMBER = 0
ASCII_BIDI_VIS2LOG = ' '
PDF_DELETE_OTFTAB = ' '
IMPORTING
BIN_FILESIZE = w_binfile_size
BIN_FILE =
TABLES
otf = job_output-otfdata
lines = I_PDF
EXCEPTIONS
ERR_MAX_LINEWIDTH = 1
ERR_FORMAT = 2
ERR_CONV_NOT_POSSIBLE = 3
ERR_BAD_OTF = 4
OTHERS = 5 .
IF sy-subrc <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
CALL FUNCTION 'GUI_DOWNLOAD'
EXPORTING
BIN_FILESIZE = w_binfile_size
filename = 'c:\test_pdf_sf.pdf'
FILETYPE = 'BIN'
tables
data_tab = i_pdf
*FIELDNAMES =
.
IF sy-subrc <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
08-22-2011 2:10 PM
Hi
You've place an asterisk just in front of the IMPORTING statament while calling function of smartform
* IMPORTING "<----- Delete the asterisk
DOCUMENT_OUTPUT_INFO = JOB_OUTPUT "***CHANGED
* JOB_OUTPUT_INFO =
* JOB_OUTPUT_OPTIONS =
Max
08-22-2011 2:41 PM
hi...
I SOLVED THAT ...
GOT THE DLOAD SCREEN. AFTER PRESSING PRINT PREVIEW
IT THROUGHS AN ERROR 'FILE IS NOT AVAILABLE'.
CALL METHOD cl_gui_frontend_services=>file_save_dialog
EXPORTING
WINDOW_TITLE =
DEFAULT_EXTENSION =
DEFAULT_FILE_NAME =
FILE_FILTER =
INITIAL_DIRECTORY =
WITH_ENCODING =
PROMPT_ON_OVERWRITE = 'X'
CHANGING
filename = w_FILE_NAME
path = w_FILE_PATH
fullpath = w_FULL_PATH
USER_ACTION =
FILE_ENCODING =
EXCEPTIONS
CNTL_ERROR = 1
ERROR_NO_GUI = 2
NOT_SUPPORTED_BY_GUI = 3
others = 4
.
IF sy-subrc <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
CALL FUNCTION 'GUI_DOWNLOAD'
EXPORTING
BIN_FILESIZE = w_binfile_size
filename = w_FILE_PATH "'DESKTOP:\BANK.LETTER.PDF'
FILETYPE = 'BIN'
tables
data_tab = i_pdf
*FIELDNAMES =
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
.
IF sy-subrc <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
08-22-2011 2:50 PM
Hi
You have to use the full path
CALL FUNCTION 'GUI_DOWNLOAD'
EXPORTING
BIN_FILESIZE = w_binfile_size
*filename = w_FILE_PATH "'DESKTOP:\BANK.LETTER.PDF'"<--------
filename = w_FULL_PATH "'DESKTOP:\BANK.LETTER.PDF'"
Max
08-22-2011 2:56 PM
Hi max,
Thank you so much for your quick replay.
the problem got solved
Thnaks & Regards,
Jogesh.