lunes, 24 de marzo de 2014

Visualizar formulario sin cuadro de diálogo (SAP - ABAP - SMARTFORMS)

      La siguiente parametrización permite la visualización previa de un formulario sin cuadro de diálogo:

ls_control_param-no_dialog  abap_on.  " SIN VENTANA DIALOGO
ls_control_param-preview    abap_on.  " CON VISUALIZAC.PREVIA
ls_control_param-device     'PRINTER'.
ls_output_options-tddest    'LCL'.    " DISPOSITIVO DE SALIDA
ls_output_options-tdnoprint abap_off" IMPRIMIR
ls_output_options-tdarmod   '1'.      " SOLO IMPRIMIR 

      
CALL FUNCTION lv_fm_name
        
EXPORTING
*         ARCHIVE_INDEX        =
*         ARCHIVE_INDEX_TAB    =
*         ARCHIVE_PARAMETERS   =

          control_parameters   
ls_control_parameters
*         MAIL_APPL_OBJ        =
*         MAIL_RECIPIENT       =
*         MAIL_SENDER          =

          output_options       
ls_output_options
          user_settings        
= abap_off
          is_xekko             
p_s_xekko
          is_xpekko            
p_s_xpekko
*        IMPORTING
*         DOCUMENT_OUTPUT_INFO =
*          job_output_info      = ls_job_output_info
*         JOB_OUTPUT_OPTIONS   =

        
TABLES
          it_xekpa             
p_t_xekpa[]
          it_xekpo             
p_t_xekpo[]
          it_xpekpo            
p_t_xpekpo[]
          it_xeket             
p_t_xeket[]
          it_xekkn             
p_t_xekkn[]
          it_xekek             
p_t_xekek[]

          it_xekeh             p_t_xekeh[]
          it_xtkomv            
p_t_xtkomv[]
          it_detocn            
p_t_detcon[]
          it_serv              
p_t_detser[]
        
EXCEPTIONS
          formatting_error     
1
          internal_error       
2
          send_error           
3
          user_canceled        
4
          
OTHERS               5.

Imprimir SMARTFORMS solo en SPOOL (SAP - ABAP - SMARTFORMS)

      Esta parametrización permite imprimir un formulario directamente al SPOOL sin opción a previsualización:

ls_composer_param-tdnoprev  abap_on.  " SIN VISUALIZ. PREVIA
ls_composer_param
-tdnoprint abap_off" NO IMPRIMIR
ls_composer_param
-tdnoarch  abap_off" NO ARCHIVAR
ls_composer_param
-tddest    'LOCAL'.  " DISPOSITIVO DE SALIDA
ls_composer_param
-tdimmed   abap_off" SIN SALIDA INMEDIATA
ls_composer_param
-tddelete  abap_off" NO BORRAR TRAS SALIDA
ls_composer_param
-tdnewid   abap_on.  " NUEVA ORDEN SPOOL
ls_composer_param
-tdfinal   abap_on.  " CERRAR ORDEN DE SPOOL
ls_composer_param
-tdarmod   '1'.      " SOLO IMPRIMIR
ls_composer_param
-tdcopies  '001'.    " CANTIDAD DE COPIAS

ls_control_param
-no_dialog  abap_on.  " SIN VENTANA DIALOGO
ls_control_param
-preview    abap_off" SIN VISUALIZ. PREVIA
ls_control_param
-device     'PRINTER'.DISPOSITIVO


      
CALL FUNCTION lv_fname
        
EXPORTING
*         archive_index      = toa_dara
*         archive_parameters = arc_params

          control_parameters 
ls_control_param
          output_options     
ls_composer_param
          user_settings      
abap_off
          p_gjahr            
p_gjahr
        
TABLES
          gt_cabecera        
gt_head[]
          gt_detalle         
gt_detail[]
        
EXCEPTIONS
          formatting_error   
1
          internal_error     
2
          send_error         
3
          user_canceled      
4
          
OTHERS             5.

      
IF sy-subrc <> 0.
        
MESSAGE e006(zcfcl_fi_0003).
      
ENDIF.