ABAP: Modificar contenido de variante

Con la función estándar de RS_CHANGE_CREATED_VARIANT modificaremos el contenido de la variante.

 

Parametros de entrada

  • CURR_REPORT: Nombre del report donde está la variante que queremos modificar
  • CURR_VARIANT: Nombre de la variante
  • VARI_DESC: Descripción de la variante
  • VARI_CONTENTS: Tabla interna con tel contenido de la variante

 

Función

DATA: lv_programa  TYPE RSVAR-REPORT,
      lv_variante  TYPE RSVAR-VARIANT,
      lw_vari_desc TYPE VARID,
      li_valtab    TYPE STANDARD TABLE OF RSPARAMS.

CALL FUNCTION 'RS_CHANGE_CREATED_VARIANT'
     EXPORTING
        CURR_REPORT               = lv_programa
        CURR_VARIANT              = lv_variante
        VARI_DESC                 = lw_vari_desc
     TABLES
        VARI_CONTENTS             = li_valtab                                  
     EXCEPTIONS
        ILLEGAL_REPORT_OR_VARIANT  = 1
        ILLEGAL_VARIANTNAME        = 2
        NOT_AUTHORIZED             = 3
        NOT_EXECUTED               = 4
        REPORT_NOT_EXISTENT        = 5
        REPORT_NOT_SUPPLIED        = 6
        VARIANT_DOESNT_EXIST       = 7
        VARIANT_LOCKED             = 8
        SELECTIONS_NO_MATCH        = 9
        OTHERS                     = 10.

 

Pasos a seguir

1. Obtener el conteido de la variante que queremos modificar con la función RS_VARIANT_CONTENTS, puedes como utilizar esta función aqui

2. Realizar las modificaciones requeridas en la tabla interna obtenida de la función anterior.

3. Ejecutar la función RS_CHANGE_CREATED_VARIANT indicandole el programa, variante y la tabla interna con el contenido modificado.

 

Para ver mas funciones de SAP pulse en el siguiente enlace: Listado de funciones

ABAP: Recuperar contenido de variante

Con la función estandar de SAP RS_VARIANT_CONTENTS obtendremos el contenido de la variante en una tabla interna, para obtenerla le pasaremos el nombre del programa y la variante que queremos obtener.

 

Parámetros de entrada

  • REPORT: Nombre del report donde existe la variante
  • VARIANT: Nombre de la variante
  • VALUTAB: Tabla interna con el contenido de la variante

 

Función

DATA: lv_programa TYPE RSVAR-REPORT,
      lv_variante TYPE RSVAR-VARIANT,
      li_valtab   TYPE STANDARD TABLE OF RSPARAMS.

CALL FUNCTION 'RS_VARIANT_CONTENTS'
         EXPORTING
            report              = lv_programa
            variant             = lv_variante
         TABLES
            valutab             = li_valtab
        EXCEPTIONS
           variant_non_existent = 1
           variant_obsolete     = 2
           OTHERS               = 3.
                       

 

Para ver mas funciones de SAP pulse en el siguiente enlace: Listado de funciones

ABAP: Borrar variantes de un Programa

Con la función estandar TXW_ALV_VARIANT_DELETE podremos eliminar las variantes de un programa, para ello le pasaremos el nombre del report donde queremos borrar la variante.

Parámetro de Entrada
  • I_REPORT: Nombre del report ABAP
Parámetro de Salida
  • SY-SUBRC = 0: Variantes borradas correctamente
  • SY-SUBRC <> 0: No se han borrado o no existe report/variantes.

Función

DATA: lv_report TYPE LTDX-REPORT.

CALL FUNCTION 'TXW_ALV_VARIANT_DELETE'
  EXPORTING
    I_REPORT    = lv_report
  EXCEPTIONS
    NO_DELETION = 1
    NO_ENTRY    = 2.

IF SY-SUBRC = 0.
ENDIF.

Para ver mas funciones de SAP pulse en el siguiente enlace: Listado de funciones