ORA-01403: Данные не найдены при работе с IG Master-Detail в Oracle APEX

В Oracle APEX 5.1 у меня есть страница Interactive Grid Master-Detail. Следующая последовательность шагов (которые иногда предпринимают пользователи) создает необработанное исключение (ORA-01403: данные не найдены).

  1. Пользователь создает недопустимую запись в главном разделе и соответствующую запись в подробном разделе.
  2. Пользователь пытается сохранить (обработка строки) и получает сообщение об ошибке из-за недопустимой основной записи.
  3. Не удаляя недействительную основную запись, пользователь активирует фильтры, удаляющие недействительную основную запись.
  4. Пользователь вносит (действительные) дополнения/изменения в другие записи
  5. Пользователь пытается сохранить.
  6. Пользователь получает сообщение об ошибке (ORA-01403: данные не найдены).

Я считаю, что проблема заключается в том, что подробные записи для недействительной (теперь удаленной) основной записи все еще обрабатываются при сохранении пользователем. Однако у пользователя нет доступа к этим записям, и я не могу понять, как удалить их автоматически (насколько я могу судить, ошибка ORA 01403 возникает до и останавливает обработку и проверку страницы).

Будем признательны за любые предложения о том, как предотвратить это, обработать ошибку или дать пользователям возможность исправить эту ошибку.

Вот трассировка ошибки, если будет полезно:

  • error_backtrace: ORA-06512: at "APEX_050100.WWV_FLOW_INTERACTIVE_GRID", line 7640 ORA-06512: at "APEX_050100.WWV_FLOW_INTERACTIVE_GRID", line 7819 ORA-06512: at "APEX_050100.WWV_FLOW_INTERACTIVE_GRID", line 7850 ORA-06512: at "APEX_050100.WWV_FLOW_INTERACTIVE_GRID ", строка 8990 ORA-06512: в "APEX_050100.WWV_FLOW_REGION_NATIVE", строка 3101 ORA-06512: в "APEX_050100.WWV_FLOW_PLUGIN", строка 2146 ORA-06512: в "APEX_050100.WWV_FLOW_PLUGIN", строка 3061 ORA-PLUGIN: "5106 ORA-PLUGIN" .WWV_FLOW", строка 3190 ORA-06512: в "APEX_050100.WWV_FLOW", строка 5544

person Robmattles    schedule 13.03.2018    source источник
comment
Включите режим отладки и повторите шаги, которые вы описали. Как только вы нажмете NO-DATA-FOUND, просмотрите результаты отладки, вы сможете увидеть, какой SELECT отвечает за ошибку (или, по крайней мере, я на это надеюсь).   -  person Littlefoot    schedule 14.03.2018
comment
Проблемный оператор SELECT находится во встроенном коде Interactive Grid APEX (см. выше трассировку ошибки, полученную из результатов отладки). Я бы предпочел не пытаться изменить встроенный код (хотя, если у кого-то есть простое решение, которое включает его изменение, я бы его реализовал)   -  person Robmattles    schedule 15.03.2018
comment
Я бы тоже не стал изменять код Apex. Что касается стека ошибок... бесполезен, по крайней мере, с моей точки зрения. Я надеялся, что вы написали какой-нибудь оператор SELECT, который можно было бы изменить, чтобы избежать ошибки. Как сейчас, у меня нет других идей, извините.   -  person Littlefoot    schedule 15.03.2018
comment
В конце этой страницы вы можете найти некоторые распространенные ошибки в IG (на этой странице есть описание похожей ошибки...): github.com/mgoricki/orclapex-ig-cheat-sheet   -  person romeuBraga    schedule 15.03.2018