コンテンツフレーム起動

機能の文書化 STEP_OUT 文書を SAP ライブラリストラクチャに組み込む

機能

現在のコンテキストのデバッグモードにあるスクリプトのシングルステップ実行。STEP_OUT は現在の関数を終了させます。そのため ABAP デバッガのリターン (F7) と同一の効果があります。

リターンパラメータ

RESULT (Type STRING)

スクリプト内で実行された最後の命令の値。したがって STEP_OUT の結果は、最後の命令に到達した場合だけ得られます。

例

report DEMO_JAVA_SCRIPT_STEP_OUT.

data SOURCE type STRING.
data GET_VALUE type STRING.

data JS_PROCESSOR type ref to CL_JAVA_SCRIPT.

JS_PROCESSOR = CL_JAVA_SCRIPT=>CREATE( ).

concatenate
  'var string = "Hello World,";   '
  'function Set_String()          '
  '  { string += " this";         '
  '    string += " is";           '
  '    string += " JavaScript!";} '
  'Set_String();                  '
  'string;                        '
   into SOURCE separated by CL_ABAP_CHAR_UTILITIES=>CR_LF.

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

JS_PROCESSOR->SET_BREAKPOINT(
              exporting
                SCRIPT_NAME = 'HELLO_WORLD.JS'
                LINE_NUMBER = 1 ).

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

while JS_PROCESSOR->LAST_CONDITION_CODE =
                    CL_JAVA_SCRIPT=>CC_BREAKPOINT.

  GET_VALUE = JS_PROCESSOR->GET( NAME = 'string').
  write: / JS_PROCESSOR->BREAKPOINT_LINE_NUMBER, GET_VALUE.
  if JS_PROCESSOR->BREAKPOINT_LINE_NUMBER = 4.
    JS_PROCESSOR->STEP_OUT( ).
  else.
    JS_PROCESSOR->STEP_INTO( ).
  endif.
endwhile.

例は、STEP_INTO の例と同一の方法で動作しますが、ただしここでは Set_String 関数は、STEP_OUT を介して行 4 に到達すると終了します。

 

 

コンテンツフレーム終了