Solved

Oracle Message 'Do you want to save your changes?'

Posted on 2003-11-13
5
3,227 Views
Last Modified: 2011-04-14
I am using Forms 4.5

I made a minor change to a program unit on a form which validates that the serial number entered on Block A is within a specific range. (I had to change the numbers of the range that is all) The When-Validate-Item trigger on the serial number field calls this program unit.

Once the form has been compiled, on a previous block (block B) the following situation arises:
When the user tries to navigate out of the block B to a previous one, block C, an Oracle message appears asking the user if he/she wants to save the changes made, when NO changes were made, all the user did was navigate to the block and attempt to navigate out of it almost immediately.

When this error was reported, I rolled back to a previous fmb version, redid the changes, and tested. Now the message did not appear. What is happening? ANyone has had an experience as this?

Also,why does this message appear even when no changes have been made to the records, no changes at all. All the user does is navigate to the block in question and attempts to navigate to the previous block.
0
Comment
Question by:hsury
5 Comments
 
LVL 47

Expert Comment

by:schwertner
ID: 9747522
If you use different blocks a possible solution is to define the items as "display" items (if you really do not update them).
If you you call a different form then call it with "nosession" option.
0
 
LVL 15

Expert Comment

by:andrewst
ID: 9787181
Please post your trigger code.
0
 

Author Comment

by:hsury
ID: 9832848
Further investigation into the problem came up with some interesting points. Here is what was happening but why is the question:
Oracle, for some reason, detected the block status as changed when data was retrieved and displayed in a multi record block on that form.(This was not the block the change was made to). The following message was displayed: “Do you want to save the changes you have made?”. If the user hit the Yes button, a second message was displayed: “FRM-40400:Transaction complete.  _  [number] of records applied and saved.” even though there had been no changes made.  
Has any one had a similar experience? The block status was confirmed to be “CHANGED” instead of “QUERY”.

The changed form was discarded and the fix redone. This time, the block status remained at “QUERY”, no message was displayed and the form behaved as expected.
Any ideas on what could have happened in the first instance?
0
 
LVL 22

Accepted Solution

by:
Helena Marková earned 250 total points
ID: 9835257
Isn't there a trigger with some initialization of items there ? Also Post-Query trigger ...

This is from an "Initialization" topic in the on-line help:
Note: If a trigger assigns a value to an item in a null record, the record is no longer null. Form Builder never assigns an initial value to any item in the record. For example, a PRE-FORM trigger fires while the form contains only null records. If it assigns a value to an item, it must ensure that all other items of the record receive appropriate initial values.
0
 
LVL 47

Expert Comment

by:schwertner
ID: 9837489
Looking at:
which validates that the serial number entered on Block A is within a specific range. (I had to change the numbers of the range that is all)

Please, carefully check this code or post it here. may be you put in that item  a value 9may be the old original value), or assign a value.
0

Featured Post

PRTG Network Monitor: Intuitive Network Monitoring

Network Monitoring is essential to ensure that computer systems and network devices are running. Use PRTG to monitor LANs, servers, websites, applications and devices, bandwidth, virtual environments, remote systems, IoT, and many more. PRTG is easy to set up & use.

Join & Write a Comment

Note: this article covers simple compression. Oracle introduced in version 11g release 2 a new feature called Advanced Compression which is not covered here. General principle of Oracle compression Oracle compression is a way of reducing the d…
How to Unravel a Tricky Query Introduction If you browse through the Oracle zones or any of the other database-related zones you'll come across some complicated solutions and sometimes you'll just have to wonder how anyone came up with them.  …
This video explains at a high level about the four available data types in Oracle and how dates can be manipulated by the user to get data into and out of the database.
This video shows how to set up a shell script to accept a positional parameter when called, pass that to a SQL script, accept the output from the statement back and then manipulate it in the Shell.

759 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

21 Experts available now in Live!

Get 1:1 Help Now