Application Development Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 

problem while downloading sform..

0 Kudos

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

6 REPLIES 6

Former Member
0 Kudos

Hi

If you post your code we can understand where the error is

Max

0 Kudos

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.

0 Kudos

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

0 Kudos

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.

0 Kudos

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

0 Kudos

Hi max,

Thank you so much for your quick replay.

the problem got solved

Thnaks & Regards,

Jogesh.