Cerca nel blog

mercoledì 20 gennaio 2016

ABAP - Creazione e utilizzo dei SET

Creazione e utilizzo dei SET

I SET sono delle strutture flessibili, dove vengono definiti valori o intervalli di valori.
Supponiamo di voler creare un insieme di valori delle classi cespiti, per fare ciò, richiamiamo la transazione GS01.
Inserire il nome da dare al SET, il nome tabella che contiene le dimensioni del SET, e selezioniamo il Tipo SET da usare.


Premere INVIO o il pulsante "Testata" evidenziato in BLU, per inserire il riferimento al campo della tabella che contiene la dimensione dei valori che stiamo creando, in questo esempio ANLKL, e premere invio.


Inseriamo i valori che vogliamo definire nel SET, premere INVIO e poi premere il pulsante SALVATAGGIO.


Inseriamo i valori che vogliamo definire nel SET, premere INVIO e poi premere il pulsante SALVATAGGIO.

Esempio Nr. 1 di come leggere il SET nel codice ABAP:
REPORT ztest_set.

RANGES: r_sdsta_ru_new FOR vlcvehicle-sdsta.
DATA: t_set_value TYPE STANDARD TABLE OF rgsb4 WITH HEADER LINE.

START-OF-SELECTION.

  CLEAR: t_set_value, r_sdsta_ru_new.
  REFRESH: t_set_value, r_sdsta_ru_new.

  CALL FUNCTION 'G_SET_GET_ALL_VALUES'
    EXPORTING
      client        = sy-mandt
      setnr         = 'ZCLASSE_CESPITE'     "set name
      table         = 'ANKA'
      class         = '0000'
      fieldname     = 'ANLKL'
    TABLES
      set_values    = t_set_value
    EXCEPTIONS
      set_not_found = 1
      OTHERS        = 2.

  LOOP AT t_set_value.
    r_sdsta_ru_new-low        = t_set_value-from.
    r_sdsta_ru_new-high       = t_set_value-to.
    r_sdsta_ru_new-sign       = 'I'.                     "Inclusion

    IF t_set_value-to  = space OR
       t_set_value-to  = t_set_value-from.
      r_sdsta_ru_new-option   = 'EQ'.                    "Equivalent
    ELSE.
      r_sdsta_ru_new-option   = 'BT'. "Between
    ENDIF.
    WRITE:/ 'DA:', t_set_value-from, '    A:',  t_set_value-to.
    APPEND r_sdsta_ru_new.
  ENDLOOP.

Esempio Nr. 2 di come leggere il SET nel codice ABAP:
REPORT ztest_set.

DATA: lv_valfrom TYPE setleaf-valfrom,
      lv_valto   TYPE setleaf-valto.

START-OF-SELECTION.

  CLEAR: lv_valfrom.

  SELECT valfrom valto INTO ( lv_valfrom, lv_valto )
        FROM setleaf
        WHERE setname  = 'ZCLASSE_CESPITE'.

    WRITE:/ 'DA:', lv_valfrom, '    A:',  lv_valto.

  ENDSELECT.


INSERIRE IL SET IN UNA TRANSPORT REQUEST:
Richiamare la transazione GS03 ed inserire il nome del SET da trasportare.

Dal Menu, scegliere Utilities->Trasportare->Ordine di Trasferimento
 

Selezionare la voce "SETS" e premere F8

Inserire il nome del SET da trasportare e premere F8.
 

Selezionare il SET e premere F8


Inserire la CR in cui trasportare il SET (Di Customizing).


RICERCARE DOVE VIENE USATO IL SET:
Richiamare la transazione GS03 ed inserire il nome del SET da ricercare.
Dal Menu, scegliere Utilities-> SET Usage


Nella schermata successiva premere F8
 
Vengono visualizzati tutti gli oggetti che utilizzano il SET.

TRANSAZIONI RELATIVE AI SET:
GS01 = Creazione SET.

Nessun commento:

Posta un commento