cancel
Showing results for 
Search instead for 
Did you mean: 

Convert OTF to PDF

Former Member
0 Kudos

Hi,

I would like to transform a Smartform to PDF using the Convert_OTF function module. How can I declare a binary string variable for the BIN_FILE parameter of the function module?

Thanks,

Stephen

Accepted Solutions (0)

Answers (3)

Answers (3)

former_member196280
Active Contributor
0 Kudos

Go through this link...it will give you the exact idea.

<a href="https://www.sdn.sap.comhttp://www.sdn.sap.comhttp://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/49e15474-0e01-0010-9cba-e62df8244556">sample</a>

Regards,

SaiRam

Former Member
0 Kudos

Hi,

I went through the link you gave me, but didn't find the solution for my problem.

Please give me the "key" to find the solution.

Thanks,

Istvan

Former Member
0 Kudos
Former Member
0 Kudos

Hi

welcome to SDN forum

see the sample code for it

check with this material

here is the sample program to convert the smartform into pdf format

Here is the sample code.

DATA: i_otf TYPE itcoo OCCURS 0 WITH HEADER LINE,

i_tline TYPE TABLE OF tline WITH HEADER LINE,

  • Work Area declarations

w_ctrlop TYPE ssfctrlop,

w_compop TYPE ssfcompop,

w_return TYPE ssfcrescl,

  • Variables declarations

v_form_name TYPE rs38l_fnam,

v_len_in LIKE sood-objlen,

v_len_out LIKE sood-objlen,

v_len_outn TYPE i.

Step 1:

call function 'SSF_FUNCTION_MODULE_NAME'

exporting

formname = 'ZZZ_TEST2'

importing

fm_name = v_form_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.

w_ctrlop-getotf = 'X'.

w_ctrlop-no_dialog = 'X'.

w_compop-tdnoprev = 'X'.

Step 2:

CALL FUNCTION v_form_name

EXPORTING

control_parameters = w_ctrlop

output_options = w_compop

user_settings = 'X'

IMPORTING

job_output_info = w_return

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.

Step 3:

i_otf[] = w_return-otfdata[].

Step 4:

CALL FUNCTION 'CONVERT_OTF'

EXPORTING

format = 'PDF'

max_linewidth = 132

IMPORTING

bin_filesize = v_len_in

TABLES

otf = i_otf

lines = i_tline

EXCEPTIONS

err_max_linewidth = 1

err_format = 2

err_conv_not_possible = 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.

Regards

Anji

Former Member
0 Kudos

Hi,

It works great, but in the generated pdf file the &#337; and &#369; characters doesn't appear correctly (there is a box only). I have tried to change the codepage to Central European (ISO 8859-2) in the codepage parameter of WS_download, unfortunately it doesn't change anything.

Do you have any ideas?

Thanks,

Istvan