Eine Standard Variante festlegen die beim starten des Programmes automatisch aufgerufen wird

Sie können mit dem FUBA RS_SUPPORT_SELECTIONS automatisch eine Variante ziehen, die gleich beim starten des Reports automatisch angezeigt wird.

"Daten Deklaration um die Variante automatisch zu ziehen.
DATAgf_variante TYPE  rsvar-variant VALUE 'REGOTZ'.

INITIALIZATION.

* Die Variante REGOTZ wird nun automatisch gezogen
  
CALL FUNCTION 'RS_SUPPORT_SELECTIONS'
    
EXPORTING
      
report               sy-repid
      variant              
gf_variante
    
EXCEPTIONS
      variant_not_existent 
1
      variant_obsolete     
2
      
OTHERS               3.

  
IF sy-subrc <> 0.
*   Variante & ist nicht vorhanden
    
MESSAGE i016(pnWITH
     
'Die Variante' gf_variante 'ist nicht vorhanden'.
  
ELSE.
    
MESSAGE i016(pnWITH
     
'Die Variante' gf_variante 'wird automatisch gezogen'.
  
ENDIF.

 

 

  CALL FUNCTION 'RS_SUPPORT_SELECTIONS'
    EXPORTING
      report               sy-repid
      variant              conv rsvar-variantsy-uname )
    EXCEPTIONS
      variant_not_existent 1
      variant_obsolete     2
      OTHERS               3.

 

Wie kann ich Varianten von einem Report in einen anderen Report kopieren

Kopieren von Varianten von Prog. A nach Prog. B.

Ihr könnt dafür das folgende Programm Z_VARIANT_KOPIEREN verwenden oder direkt den FuBa 'RS_COPY_SELECTION_SETS' verwenden.

 

Beim „Reparieren“ von Varianten vom selben Report bei Änderungen auf dem Selektionsbildschirm ist dieses Programm sehr nützlich:

*&---------------------------------------------------------------------*
*& Report  z_variante_kopieren                                               *
*&                                                                     *
*&---------------------------------------------------------------------*
*&                                                                     *
*&                                                                     *
*&---------------------------------------------------------------------*
*
* Ziel     : Kopieren von Varianten:
*            Ausgangsprogramm ===> Zielprogramm
*
* Es können alle Varianten die zu einem Programm gespeichert sind, zu
* einem zweiten Programm übertragen werden.
*
* Das Programm wird zentral ausgeführt.
*
* Vorbelegung in der Maske:
*
* - Startprogramm  = Z_REGOTZ
* - Zielprogramm   = Z_MICHEL
*
* Man kann auch direkt den FuBa 'RS_COPY_SELECTION_SETS' verwenden
* Ist sehr praktisch beim „Reparieren“ von Varianten vom selben Report
* bei Änderungen auf dem Selektionsbildschirm:
*
*&---------------------------------------------------------------------*

REPORT  z_variante_kopieren.

*======================================================================*
* SELECTION-SCREEN
*======================================================================*
SELECTION-SCREEN BEGIN OF BLOCK sel_blk WITH FRAME TITLE sel_blk.
PARAMETERSp_source LIKE rsvar-report DEFAULT ''.
PARAMETERSp_target LIKE rsvar-report DEFAULT ''.
SELECTION-SCREEN END OF BLOCK sel_blk.

INITIALIZATION.

  sel_blk  
'Selection'.

*======================================================================*
* Verarbeitung                                                         *
*======================================================================*
START
-OF-SELECTION.

  
CALL FUNCTION 'RS_COPY_SELECTION_SETS'
    
EXPORTING
      source_report        
p_source
      target_report        
p_target
*   DEVC                 =
*   CHANGE_ENAME         = 'X'
   
EXCEPTIONS
     variant_locked       
1
     
OTHERS               2.

  
IF sy-subrc <> 0.
    
MESSAGE i016(pnWITH
     
'Fehler beim übertragen der Varianten'.
  
ELSE.
    
MESSAGE i016(pnWITH
     
'Varianten wurden erfolgreich übertragen'.
  
ENDIF.

*=======================================================================
* Ende Verarbeitung
*=======================================================================
END-OF-SELECTION.

        search this website

Regotz Michel