Item validation process(DML) flow question
630131Jun 2 2008 — edited Dec 22 2008I have created an item validation on a form. The form assigns the pk thru a value passed from the user on the from.
The validation is based on the value in expression1 being in expression 2.
Expression one is P44_AMOUNT. Express 2 is 1:2:3:4:5:6:7:8:9:0. For condition I have expression one not null.
What happens is you click create for a new row. HOwever if you enter a wrong value along with the error message it instead of having a button that says create it says: apply changes. The form then appears to treat the request as an update instead of as a new record. SO instead of assigning the new pk value it is attempting to do an update based on the pk value. However obviously the pk value doesn't exist yet.
I get this error:
ORA-20505: Error in DML: p_rowid=913, p_alt_rowid=MSDS_ID, p_rowid2=000060-10-9, p_alt_rowid2=CAS. ORA-01403: no data found
It appears to me that when a new insert is done you get a create button, when an update is to be done you get apply changes button. How do you tell apex to treat this as an insert when the validation fails.
I have looked at the oracle documentation HOw to build and deploy an issue tracking application. Its examples of entering a validation did not help.
It works fine expect when the validation fails due to a non-number being entered it
displays the error message and when you attempt to resubmit by clicking