!--a11y-->
SET_BREAKPOINT 
現在のコンテキストのスクリプト内でブレークポイントを設定します。スクリプトが実行されると指定された行で停止して、スクリプトをデバッグモードに切り替えます。
現在のコンテキストのスクリプト名。
ブレークポイントが設定される行番号。スクリプトで行番号が利用可能でないか実行できない場合、ブレークポイントは一番近い行に移動されます。

report DEMO_JAVA_SCRIPT_SET_BREAK.
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,"; '
'string += "
this"; '
'string += "
is";
'
'string += " JavaScript!"; '
'string; '
into SOURCE separated by
CL_ABAP_CHAR_UTILITIES=>CR_LF.
call method
JS_PROCESSOR->COMPILE
exporting
SCRIPT_NAME = 'HELLO_WORLD.JS'
SCRIPT =
SOURCE.
do 10 times.
call method
JS_PROCESSOR->SET_BREAKPOINT
exporting
SCRIPT_NAME = 'HELLO_WORLD.JS'
LINE_NUMBER = SY-INDEX.
JS_PROCESSOR->EXECUTE(
exporting
SCRIPT_NAME = 'HELLO_WORLD.JS').
if
JS_PROCESSOR->LAST_CONDITION_CODE =
CL_JAVA_SCRIPT=>CC_BREAKPOINT.
GET_VALUE = JS_PROCESSOR->GET( NAME =
'string').
write: JS_PROCESSOR->BREAKPOINT_LINE_NUMBER,
JS_PROCESSOR->BREAKPOINT_SCRIPT_NAME,
GET_VALUE.
skip.
endif.
JS_PROCESSOR->CLEAR_SCRIPT_BREAKPOINTS(
exporting
SCRIPT_NAME = 'HELLO_WORLD.JS').
enddo.
DO ループでは、コンパイルされたスクリプトHELLO_WORLD.JS の SET_BREAKPOINT によって、ブレークポイントがさまざまな行に相次いで設定され、次にふたたび CLEAR_SCRIPT_BREAKPOINTS によって削除されます。スクリプトは、プロセスで実行されます。インスタンス属性 LAST_CONDITION_CODE は、ブレークポイントに到達したかどうかを決定して、属性 BREAKPOINT_SCRIPT_NAME と BREAKPOINT_LINE_NUMBER を出力し、同時に GET メソッドによって変数文字列の現在値を出力します。行番号の合計より大きい行番号に設定されるブレークポイントは、すべてスクリプトの最後の実行可能行に設定されます。