Application Development and Automation 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: 
Read only

OTF data not obtained while converting smartform into pdf

Former Member
0 Likes
769

Hi,

When I am tyring to convert a smartform into pdf, Iam not able to capture OTF data.

Please find the code below.

   CALL FUNCTION ldf_fm_name


        EXPORTING
         CONTROL_PARAMETERS         = lds_control_param
         OUTPUT_OPTIONS             = lds_composer_param
         USER_SETTINGS              = ' '
          gds_bill_invoice           = lds_bil_invoice
          gdt_matdesc                = gdt_matdesc
          gds_header                 = gds_final
       IMPORTING
*         DOCUMENT_OUTPUT_INFO       =
         JOB_OUTPUT_INFO            = gds_otfdata

*         JOB_OUTPUT_OPTIONS         =
       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.


DATA  ldf_spoolid            TYPE tsp01-rqident.
CLEAR: gdt_otf,
        ldf_spoolid.
*    Assigning the OTFDATA to OTF Structure table
*    if  gdt_otf[] is  INITIAL.

  gdt_otf[] = gds_otfdata-spoolids[].
  READ TABLE gdt_otf INTO gds_otf INDEX 1.
  ldf_spoolid = gds_otf-tdprintpar.

Gds_otfdata is appearing empty.

Can anyone help me regarding this

1 ACCEPTED SOLUTION
Read only

Former Member
0 Likes
718

HI,

Check this code. Might be it will solve ur problem.

DATA: it_otf      TYPE STANDARD TABLE OF itcoo,
it_docs    
TYPE STANDARD TABLE OF docs,
it_lines   
TYPE STANDARD TABLE OF tline.
* Declaration of local variables.
DATA:
st_job_output_info      
TYPE ssfcrescl,
st_document_output_info 
TYPE ssfcrespd,
st_job_output_options   
TYPE ssfcresop,
st_output_options       
TYPE ssfcompop,
st_control_parameters   
TYPE ssfctrlop,
v_len_in                
TYPE so_obj_len,
v_language              
TYPE sflangu VALUE 'E',
v_e_devtype             
TYPE rspoptype,
v_bin_filesize          
TYPE i,
v_name                  
TYPE string,
v_name1                  
TYPE string,
v_name2                  
TYPE string,
v_path                  
TYPE string,
v_fullpath              
TYPE string,
v_filter                
TYPE string,
v_uact                  
TYPE i,
v_guiobj                
TYPE REF TO cl_gui_frontend_services,
v_filename              
TYPE string,
v_fm_name               
TYPE rs38l_fnam.
CONSTANTS c_formname           TYPE tdsfname VALUE 'YSD_EXCISE1_IN_LAY'."'YSD_JOB_IN_LAY'.

  CALL FUNCTION v_fm
EXPORTING
control_parameters = st_control_parameters
output_options     = st_output_options
*      user_settings      = 'X'
     "Add on 24.05.2012.
IMPORTING
     document_output_info  = st_document_output_info
job_output_info       = st_job_output_info
job_output_options    = st_job_output_options

TABLES
inv_it          =
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.

CALL FUNCTION 'CONVERT_OTF_2_PDF'
IMPORTING
bin_filesize   = v_bin_filesize
TABLES
otf            = st_job_output_info-otfdata
doctab_archive = it_docs
lines          = it_lines
EXCEPTIONS
err_conv_not_possible  =
1
err_otf_mc_noendmarker =
2
OTHERS                            = 3.
*MOVE : WA_exc-VBELN TO VAR.
move :it_j_1iexchdr-EXNUM to Var.
CONCATENATE v_path VAR '.PDF' INTO V_NAME1.

  CALL FUNCTION 'GUI_DOWNLOAD'
EXPORTING
bin_filesize     = v_bin_filesize
filename         =  V_NAME1
"v_filename
filetype         =
'BIN'
TABLES
data_tab         = it_lines
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.

Regards,

Ravi

3 REPLIES 3
Read only

Former Member
0 Likes
718

Did you pass lds_control_params-getotf = 'X'.?

Thanks,
Shambu

Read only

Former Member
0 Likes
719

HI,

Check this code. Might be it will solve ur problem.

DATA: it_otf      TYPE STANDARD TABLE OF itcoo,
it_docs    
TYPE STANDARD TABLE OF docs,
it_lines   
TYPE STANDARD TABLE OF tline.
* Declaration of local variables.
DATA:
st_job_output_info      
TYPE ssfcrescl,
st_document_output_info 
TYPE ssfcrespd,
st_job_output_options   
TYPE ssfcresop,
st_output_options       
TYPE ssfcompop,
st_control_parameters   
TYPE ssfctrlop,
v_len_in                
TYPE so_obj_len,
v_language              
TYPE sflangu VALUE 'E',
v_e_devtype             
TYPE rspoptype,
v_bin_filesize          
TYPE i,
v_name                  
TYPE string,
v_name1                  
TYPE string,
v_name2                  
TYPE string,
v_path                  
TYPE string,
v_fullpath              
TYPE string,
v_filter                
TYPE string,
v_uact                  
TYPE i,
v_guiobj                
TYPE REF TO cl_gui_frontend_services,
v_filename              
TYPE string,
v_fm_name               
TYPE rs38l_fnam.
CONSTANTS c_formname           TYPE tdsfname VALUE 'YSD_EXCISE1_IN_LAY'."'YSD_JOB_IN_LAY'.

  CALL FUNCTION v_fm
EXPORTING
control_parameters = st_control_parameters
output_options     = st_output_options
*      user_settings      = 'X'
     "Add on 24.05.2012.
IMPORTING
     document_output_info  = st_document_output_info
job_output_info       = st_job_output_info
job_output_options    = st_job_output_options

TABLES
inv_it          =
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.

CALL FUNCTION 'CONVERT_OTF_2_PDF'
IMPORTING
bin_filesize   = v_bin_filesize
TABLES
otf            = st_job_output_info-otfdata
doctab_archive = it_docs
lines          = it_lines
EXCEPTIONS
err_conv_not_possible  =
1
err_otf_mc_noendmarker =
2
OTHERS                            = 3.
*MOVE : WA_exc-VBELN TO VAR.
move :it_j_1iexchdr-EXNUM to Var.
CONCATENATE v_path VAR '.PDF' INTO V_NAME1.

  CALL FUNCTION 'GUI_DOWNLOAD'
EXPORTING
bin_filesize     = v_bin_filesize
filename         =  V_NAME1
"v_filename
filetype         =
'BIN'
TABLES
data_tab         = it_lines
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.

Regards,

Ravi

Read only

0 Likes
718

Thanks Ravi