Skip to Content
0
Former Member
May 02, 2007 at 03:30 PM

Problem using RFC to call an adobe form to create pdf file........

554 Views

Hi,

I have an RFC that calls an adobe form to display the pdf output back in a bsp page...the RFC fails at the call to the adobe form (next call after after getting the form name) ...while debugging it looks like within this call it is trying to call fpcomp_job_open and failing on the call check_job_open ...

The code in my RFC looks like this....

DATA:

gs_outputparams TYPE sfpoutputparams,

fn_name TYPE rs38l_fnam,

fp_docparams TYPE sfpdocparams,

fp_formoutput TYPE fpformoutput,

frm_result TYPE sfpjoboutput,

lv_form TYPE fpname.

DATA: l_pdf_xstring TYPE xstring,

l_pdf_len TYPE i.

lv_form = 'ZHR_ASSESSMENT_FORM'.

  • Start formrocessing - OPEN spool job to send to printer

gs_outputparams-getpdf = 'X'.

call function 'FP_JOB_OPEN'

changing

ie_outputparams = gs_outputparams

exceptions

others = 1.

IF sy-subrc <> 0.

*// RAISE FP Open Error.

exit.

ENDIF.

  • Get name of the generated function module for the form

CALL FUNCTION 'FP_FUNCTION_MODULE_NAME'

EXPORTING

i_name = lv_form

IMPORTING

e_funcname = fn_name.

IF sy-subrc <> 0.

*// RAISE FP Get Form Module Name Error.

exit.

ENDIF.

  • Call the Adobe Form

CALL FUNCTION fn_name

EXPORTING

/1bcdwb/docparams = fp_docparams

gv_appraisal_id = gv_appraisal_id

IMPORTING

/1bcdwb/formoutput = fp_formoutput

EXCEPTIONS

usage_error = 1

system_error = 2

internal_error = 3

others = 4.

IF sy-subrc <> 0.

*// RAISE Call Form Module Error.

perform f_build_message using 'E'

'ZEXT'

012

changing return.

exit.

ENDIF.

  • End from processing - Close spool job

CALL FUNCTION 'FP_JOB_CLOSE'

IMPORTING

e_result = frm_result

EXCEPTIONS

usage_error = 1

system_error = 2

internal_error = 3

OTHERS = 4.

IF sy-subrc <> 0.

*// RAISE FP Close Error.

exit.

ENDIF.

form = fp_formoutput-pdf.

Thanks,

Venkatesh