20 мая 2022

Проверка sy-subrc после SELECT и READ TABLE

Если SELECT SINGLE или READ TABLE не найдет записи, то содержимое целевой структуры/поля останется без изменения.

Если SELECT ... INTO TABLE не найдет записей, то целевая таблица очистится.

  data(lv_name1) = value lfa1-name1( ).
  lv_name1 = 'Name 1'.

  select single name1 from lfa1 into @lv_name1 where lifnr = '1111111111'.

  " Если sy-subrc <> 0, то lv_name1 будет равно 'Name 1'
  data: lt_lfa1 type standard table of lfa1 with default key.
  lt_lfa1 = value #( ( lifnr = '1111111111' name1 = 'Name 1' ) ).

  data(ls_lfa1) = value lfa1( name1 = 'Name name 1' ).
  read table lt_lfa1 into ls_lfa1 with key lifnr = '2222222222'.

  " Если sy-subrc <> 0, то ls_lfa1-name1 будет равно 'Name name 1'
  data: lt_lfa1 type standard table of lfa1 with default key.
  lt_lfa1 = value #( ( lifnr = '1111111111' name1 = 'Name 1' ) ).
  
  select * from lfa1 into table @lt_lfa1 where lifnr = '2222222222'.
  
  " Если sy-subrc <> 0, то таблица lt_lfa1 будет пустой

Комментариев нет:

Отправить комментарий