Skip to Main Content

Deutsche

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

dipslay insert error with related table and statement in forms

3053701Feb 28 2019 — edited Apr 26 2019

when save the entries in forms but got FRM-40508: unable to insert record.

I want the error message display the failed insert statements so that I can narrow down to the related table (s) for troubleshooting.

Oracle suggests to check Display Error or Menu Option but our form application does not have them on it.

I may need to program the block trigger or something like that to capture the failed Insert statement.

any suggestion about the coding template and documentation is appreciated.

Comments

Need more details, including the Forms and DB versions you are using.
Are you using Forms blocks based on DB (i.e. "Data Blocks") or you are executing your own DML and populating (and altering) fields or both? And, how are you "committing" (COMMIT_FORM, or Save button or something else)? Be specific; if you are executing the "COMMIT" - are you using COMMIT or COMMIT_FORM?

MarcLaf

Using Oracle Forms 12c and Oracle DB 19. Yes, I'm using data blocks, based on tables from DB. User clicks a button to save and I'm doing a COMMIT_FORM.
Thanks,
Marc L

MarcLaf

Here's part of my Key-Commit code:
image.pngMarc L

Hmmm - If you are using a true "data block", there is often little reason to execute your own POST. Forms will do this automatically as soon as a the first change is made. This will result in a record lock. I'm not saying that doing a POST (or COMMIT_FORM) is a bad thing. I'm just saying that in a block managed by Forms, most of the "right" processing will happen automatically (a benefit of using Forms).
To your question, I have not tested, but suspect the behavior based on your description of what you are doing, is correct. Validation must occur upon POSTing, but also again when COMMITing. If you look at the Builder Help related to POST and COMMIT_FORM you will see that it supports this belief.
If you wanted to continue on this path, it might help to change the Validation Unit property (form level), as this might offer some relief. Of course doing this could also change the desired behavior of something else. Again, check the Builder Help for details on this property.

1 - 4

Post Details

Added on Feb 28 2019
2 comments
421 views