Добрый день! Уважаемые гуру! Имею следующий код программы:
Code:
    READ TABLE gt_ref_ltap_t WITH TABLE KEY vbeln = i_vbeln
                                            matnr = i_matnr
                                            pquit = i_pquit TRANSPORTING NO FIELDS.
    IF sy-subrc IS NOT INITIAL.
      SELECT vbeln matnr pquit vista vsola FROM ltap
        APPENDING CORRESPONDING FIELDS OF TABLE gt_ref_ltap_t
            WHERE vbeln = i_vbeln AND
                  matnr = i_matnr AND
                  pquit = i_pquit.
Я понимаю что в READ TABLE программа проверяет есть ли строка с уникальными значениями i_vbeln, i_matnr, i_pquit. И если нет, то соответственно  выполняется запрос в таблицу ltap. Но у меня при выполнении SELECT программа падает в дамп:
An entry was to be entered into the table
 "\PROGRAM=YRDE_WM_TOD\DATA=GT_REF_LTAP_T" (which should have
had a unique table key (UNIQUE KEY)).
However, there already existed a line with an identical key.
The insert-operation could have ocurred as a result of an INSERT- or
MOVE command, or in conjunction with a SELECT ... INTO.
The statement "INSERT INITIAL LINE ..." cannot be used to insert several
 initial lines into a table with a unique key.
В отладчике поиск по полям vbeln = i_vbeln , matnr = i_matnr, pquit = i_pquit в GT_REF_LTAP_T результатов не дает, т.е. строки с такими данными нет.
Подскажите, пжл, куда копать?