powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / Oracle APEX [игнор отключен] [закрыт для гостей] / Apex - ORA-20001 Error in DML, ORA-01403: no data found. Как победить?
6 сообщений из 6, страница 1 из 1
Apex - ORA-20001 Error in DML, ORA-01403: no data found. Как победить?
    #34858876
Cyber Craft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем привет.
Windows XP SP2, APEX 3.0.1.
В приложении создано две формы посредством Form on a table with Report. В таблице нет первичных ключей и каких-либо условий. Используется процесс Automatic Row Processing (DML). В форме DML Form создал validation, проверяющий одно поле на уникальность, которое срабатывает при сохранении и создании записи. Если сохранять похожую, то сообщает что такое-то поле должно быть уникальным. При создании новой записи, если сохранять непохожую, т.е. когда не срабатывает validation, то все сохраняется нормально и также нормально удаляется. Но если создавать запись, где срабатывает мой validation, затем меняю значение поля на новое и сохраняю, то возникает след. ошибка:

Код: plaintext
ORA- 20001 : Error in DML: p_rowid=mmm, p_alt_rowid=RAION_CODE, p_rowid2=, p_alt_rowid2=. ORA- 01403 : no data found

Выбираю существующую запись в списке Report и ничего не делая, сохраняю и почему-то срабатывает мой validation. Вот мой validation:
Код: plaintext
1.
2.
type: Not Exists
Validation Expression  1 : select  1  from dub_raion t where t.raion_code=:P8_RAION_CODE
Error Message: Поле "Код" должен быть уникальным.

Получается так, что после срабатывания validation уже ничего сделать нельзя: ни сохранить, ни удалить. Поиск по форуму привел к этому: http://www.sql.ru/forum/actualthread.aspx?tid=468753&hl=ora+20001+error+dml

Но там немного другая проблема. Поиск в других форумах не помогло, не догнал.

Что я делаю неправильно? Как могу исправить критическую проблему?

Заранее благодарен.
...
Рейтинг: 0 / 0
Apex - ORA-20001 Error in DML, ORA-01403: no data found. Как победить?
    #34858880
Cyber Craft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
В Source данные выбираю след. образом:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
select "RAION_CODE", 
"RAION_CODE"  "RAION_CODE_EDIT",
"RAION_NAME",
"OBLAST_CODE",
"CENTER",
"CITY",
"FILIAL"
from "#OWNER#"."DUB_RAION"

"RAION_CODE" - для показа рисунка для редактирования.
"RAION_CODE" "RAION_CODE_EDIT" - для показа значения поля, именно это поле используется для редактивания в DML Form.
...
Рейтинг: 0 / 0
Apex - ORA-20001 Error in DML, ORA-01403: no data found. Как победить?
    #34858888
Cyber Craft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
В форме есть также несколько validation на not null. И после их срабатывания появляется такая ошибка.
...
Рейтинг: 0 / 0
Apex - ORA-20001 Error in DML, ORA-01403: no data found. Как победить?
    #34859475
Alex from SPb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Cyber CraftВ форме есть также несколько validation на not null. И после их срабатывания появляется такая ошибка.Вы сами проверки создавали?
есть ли в билдере на стр.8 какие-либо записи в секции Validations,
именно там, а не в процессах.
и если создаете уникальные записи, то почему отказались от PK :(

- советую посмотреть внимательно Sample application 100, Page7 - Add/Modify Customers
  там есть и вычисления, и проверки, и ветвления, и условные и безусловные
  (apex2.2, в 3.0 м.б. другая страница)
- и документацию само собой 2 часа в день User's & Developer's Guide
...
Рейтинг: 0 / 0
Apex - ORA-20001 Error in DML, ORA-01403: no data found. Как победить?
    #34859732
Cyber Craft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Alex from SPb Cyber CraftВ форме есть также несколько validation на not null. И после их срабатывания появляется такая ошибка.Вы сами проверки создавали?

Проверки на NOT NULL APEX сама создала.
Проверку на уникальность я создавал.

авторесть ли в билдере на стр.8 какие-либо записи в секции Validations,
именно там, а не в процессах.

Да, есть.
Два для NOT NULL, которые APEX сама создала.
И два моих, проверяет на уникальность. Один срабатывает при CREATE, другой при Apply Changes.

автори если создаете уникальные записи, то почему отказались от PK :(

- советую посмотреть внимательно Sample application 100, Page7 - Add/Modify Customers
там есть и вычисления, и проверки, и ветвления, и условные и безусловные
(apex2.2, в 3.0 м.б. другая страница)
А отказавшись от PK для простенькой таблицы я много теряю?
Как раз по этому Sample Application все сверял, сделал все точь в точь как там. Не помогло.
...
Рейтинг: 0 / 0
Apex - ORA-20001 Error in DML, ORA-01403: no data found. Как победить?
    #34859742
Cyber Craft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
[quot Alex from SPbи если создаете уникальные записи, то почему отказались от PK :(
[/quot]
Сначала пробовал с PK, была такая же ошибка. Поле RAION_CODE служила в качестве PK.
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / Oracle APEX [игнор отключен] [закрыт для гостей] / Apex - ORA-20001 Error in DML, ORA-01403: no data found. Как победить?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]