ABAP - Schlüsselwortdokumentation →  ABAP - Dictionary →  Eingebaute Funktionen des ABAP Dictionary →  SQL-Funktionen →  SQL-Funktionen für Zeichenketten → 

SQL-Funktion UPPER

Das Beispiel demonstriert die SQL-Funktion UPPER in Open SQL und ABAP CDS.

Quelltext

REPORT demo_sql_upper.

CLASS demo DEFINITION.
  PUBLIC SECTION.
    CLASS-METHODS main.
ENDCLASS.

CLASS demo IMPLEMENTATION.
  METHOD main.
    DATA:
      query TYPE string VALUE `ERROR`,
      rows  TYPE i      VALUE 100.
    cl_demo_input=>add_field( CHANGING field = query ).
    cl_demo_input=>request(   CHANGING field = rows ).
    query = `%` && to_upper( query ) && `%`.
    rows  = COND #( WHEN rows <= 0 THEN 100 ELSE rows ).

    "UPPER in CDS view
    SELECT arbgb, msgnr, text
           FROM demo_cds_upper
           WHERE sprsl = 'E' AND
                 upper_text LIKE @query
           ORDER BY arbgb, msgnr, text
           INTO TABLE @DATA(result1)
           UP TO @rows ROWS.

    "UPPER in Open SQL
    SELECT arbgb, msgnr, text
           FROM t100
           WHERE sprsl = 'E' AND
                 upper( text ) LIKE @query
           ORDER BY arbgb, msgnr, text
           INTO TABLE @DATA(result2)
           UP TO @rows ROWS.

    ASSERT result1 = result2.

    cl_demo_output=>display( result1 ).
  ENDMETHOD.
ENDCLASS.

START-OF-SELECTION.
  demo=>main( ).

Beschreibung

Eine SELECT-Anweisung greift auf folgende CDS-View zu, welche die SQL-Funktion UPPER verwendet:

@AbapCatalog.sqlViewName: 'DEMOCDSUPPER'
@AccessControl.authorizationCheck: #NOT_REQUIRED
define view Demo_Cds_Upper
  as select from
    t100
    {
      sprsl,
      arbgb,
      msgnr,
      text,
      upper(text) as upper_text
    }
  

Eine andere SELECT-Anweisung verwendet die SQL-Funktion UPPER direkt beim Zugriff auf die gleiche Datenquelle T100.

Da in der DDL der ABAP CDS derzeit noch keine SQL-Funktionen auf der linken Seite von LIKE verwendet werden können, gibt die View ein Hilfsfeld zurück, das in Open SQL ausgewertet wird. Die Ergebnisse sind gleich. Die Beispiele verwirklichen eine von der Groß-/Kleinschreibung unabhängige Suche.