Invocar un smartforms

CONSTANTS: c_x                         VALUE ‘X’,
           c_repid    
TYPE sy-repid    VALUE sy-repid.

DATA: nombre_modulo_funcion TYPE rs38l_fnam,
      g_output_options 
TYPE ssfcompop,  » Output Options for Smartform
      g_control_options 
TYPE ssfctrlop,
      lv_ldest 
TYPE rspopname.  

DATA: wa_tablah TYPE zst,
      wa_tablad 
TYPE zst,
      it_tablad 
TYPE ztt.

» se declare en diccionario de abap (se11) como tipo de datos. 

 *———————————————————————
*———————————————————————

FORM invocar_smartform.

* Inicializar el formulario.
  
CALL FUNCTION ‘SSF_FUNCTION_MODULE_NAME’
    
EXPORTING
      formname           = 
‘ZSM’    «nombre del smartforms
      direct_call        = 
‘X’
    
IMPORTING
      fm_name            = nombre_modulo_funcion
    
EXCEPTIONS
      no_form            = 
1
      no_function_module = 
2
      
OTHERS             3.

* Si hubo errores, desplegar mensaje y terminar, si se continua se produce un error de run time.
  
IF sy-subrc <> 0.
    
MESSAGE ID sy-msgid
    
TYPE sy-msgty
    
NUMBER sy-msgno
    
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
  ENDIF.

*——————————————————————
«»Control Options
  g_control_options-preview   = 
‘X’.
  g_control_options-no_open = 
‘ ‘.
  g_control_options-no_close = 
‘ ‘.
  g_control_options-no_dialog = 
‘ ‘.
  g_control_options-device    = 
‘PRINTER’.
*  g_control_options-getotf   = ‘X’.

«»Output Options
  lv_ldest = 
‘LCL’. «definicion de impresoras

  «ACTIVA SELECCION DE IMPRESORA
  
«—————————————————-
  g_output_options-tddest     = lv_ldest.
«Impresora

» Nota: si omites esta linea no aparecera la ventana de seleccion de impresora

  «—————————————————-

  g_output_options-tdimmed    = ‘X’«Inmediata
*  g_output_options-tdcover    = ».
*  g_output_options-tdcopies   = 1.
*  g_output_options-TDNOPRINT = ‘X’. » Boton Imprimir
*  g_output_options-tdnoprev  = ‘X’. » Boton Previsualizar
*  g_output_options-tdtitle   = sy-title.
*  g_output_options-tdnewid   = ‘X’. «Nueva orden de spool
*  g_output_options-tddelete  = ‘X’. «Borrar tras salida
*——————————————————————

* Enviar datos al formulario e imprimirlo.
  
CALL FUNCTION nombre_modulo_funcion
    
EXPORTING
      control_parameters = g_control_options
      output_options     = g_output_options
      user_settings      = 
‘ ‘
      gt_costosengh000   = wa_tablah
      gt_costosengd000   = it_tablad
    
EXCEPTIONS
      formatting_error   = 
1
      internal_error     = 
2
      send_error         = 
3
      user_canceled      = 
4
      
OTHERS             5.

* Si se produce un error, reportarlo.
  
IF sy-subrc <> 0.
    
MESSAGE ID sy-msgid
    
TYPE sy-msgty
    
NUMBER sy-msgno
    
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
  ENDIF.

ENDFORM.                    «invocar_smartform

 

*———————————————————————
*———————————————————————

 

si observas en la función que invoca el smartform mando los valores de la tabla interna it_tabla y la estructura wa_tabla en la parte EXPORTING y en el smartforms se declara en la parte IMPORTING   ( gt_costosengh000 y gt_costosengd000 )

«No olvides dejar tus cometarios incluye también sugerencias, con tu ayuda podre mejorar esta pagina web»

Publicado en SmartForms | Deja un comentario

Cómo modificar Comandos de edición en formularios Smartforms

     
 

Para modificar la manera como se visualiza resultados en nuestros smartforms

la manera de modificarlos es selecciona un «texto» y en la pestaña «propiedades generales» da click en el botón

«Editar txt»

     
 

     
 

Seleccione el menú Pasar a – Cambiar editor

     
 

     
 

Aquí es donde podrás modificar los textos con los comandos para darle presentaciones deseadas

Nota: se pueden usar más de un comando a la vez como (SE0) que quita el signo y además los decimales

     
 

Al terminar solo oprime botón «Back» Y grabar

          
 

TABLA DE COMANDOS

ACCION ORIGINAL COMANDO RESULTADO
Justificar a la derecha: Smart &campo(15R)& Smart
Compresión de texto (espacio entre caracteres): 10 0 0 0 0 0 &campo(C)& 1000000
Mostrar decimales: Ejemplo: 1000 Length 10      &campo(.2)& 1,000.00
No mostrar valores nulos: 0.00 &campo(I)&     
No mostrar ceros a la izquierda: 001 &campo(Z)& 1
No mostrar signo: 100.00- &campo(S)& 100.00
No mostrar separador: 1,000.00 &campo(T)& 1000.00
Llenar con caracteres:      &campo(F0)&
&campo(F*)&
00100.00
**100.00
Números flotantes: Ejemplo: 123456.78 TYPE fltp +1.23456780000000E+05 &campo(E6)&
&campo(E)&
+123456.780000000
+0.12345678000000E+06

«No olvides dejar tus cometarios incluye también sugerencias, con tu ayuda podre mejorar esta pagina web»

Publicado en SmartForms | 3 comentarios