Anfang des Inhaltsbereichs

Funktionsdokumentation GET  Dokument im Navigationsbaum lokalisieren

Funktion

Liest eine globale Variable des JavaScript-Kontexts aus. Die globale Variable kann vorher entweder mit der Methode SET oder durch die Ausführung eines Skripts des Kontexts angelegt worden sein. Es kann nicht auf die Properties eines Objekts zugegriffen werden. Die globale Variable muß Property des Wurzelobjekts sein.

Importing Parameter

NAME (Typ STRING)

Name der auszulesenden Variablen.

Returning Parameter

VALUE (Typ STRING)

Wert der ausgelesenen Variablen.

Beispiel

Beispiel

report  DEMO_JAVA_SCRIPT_GET.

data GET_VALUE type STRING.

data JS_PROCESSOR type ref to CL_JAVA_SCRIPT.

data SOURCE type STRING.

concatenate
  ' function test_class( )                             '
  ' {this.value = "----> Class property <----"};       '
  ' var object = new test_class( );              '
  ' var field = object.value;            '
  into SOURCE separated by CL_ABAP_CHAR_UTILITIES=>CR_LF.

JS_PROCESSOR = CL_JAVA_SCRIPT=>CREATE( ).

JS_PROCESSOR->COMPILE( SCRIPT_NAME = 'TEST_GET.JS'
                       SCRIPT      = SOURCE ).

if JS_PROCESSOR->LAST_CONDITION_CODE <> 0.
  write: / 'Error in COMPILE',
           JS_PROCESSOR->LAST_ERROR_MESSAGE.
else.
  write / 'JavaScript was compiled'.
endif.

skip.

JS_PROCESSOR->EXECUTE(
              exporting SCRIPT_NAME = 'TEST_GET.JS' ).

if JS_PROCESSOR->LAST_CONDITION_CODE <> 0.
  write: / 'Error in EXECUTE',
           JS_PROCESSOR->LAST_ERROR_MESSAGE.
else.
  write / 'JavaScript was executed'.
endif.

skip.

GET_VALUE = JS_PROCESSOR->GET( NAME = 'object' ).

if JS_PROCESSOR->LAST_CONDITION_CODE <> 0.
  write: / 'Error in GET for object',
           JS_PROCESSOR->LAST_ERROR_MESSAGE.
else.
  write: / 'Result of GET for object:', GET_VALUE.
endif.

skip.

GET_VALUE = JS_PROCESSOR->GET( NAME = 'object.value' ).

if JS_PROCESSOR->LAST_CONDITION_CODE <> 0.
  write: / 'Error in GET for object.value',
           JS_PROCESSOR->LAST_ERROR_MESSAGE.
else.
  write: / 'Result of GET for object.value:', GET_VALUE.
endif.

skip.

GET_VALUE = JS_PROCESSOR->GET( NAME = 'field' ).

if JS_PROCESSOR->LAST_CONDITION_CODE <> 0.
  write: / 'Error in GET for field',
           JS_PROCESSOR->LAST_ERROR_MESSAGE.
else.
  write: / 'Result of GET for field:', GET_VALUE.
endif.

Im JavaScript TEST_GET.JS werden ein Objekt object und eine globale Variable field angelegt. Mit GET kann nur auf object als gesamtes Objekt und auf field zugegriffen werden. Ein Zugriff auf object.value ist nicht möglich und führt zu einer Fehlernachricht.