Home » Developer & Programmer » Forms » frm-40404 and frm-40403
frm-40404 and frm-40403 [message #156177] Mon, 23 January 2006 06:51 Go to next message
sharan_it
Messages: 140
Registered: July 2005
Location: Chennai
Senior Member
I have form with three blocks.

This form is called from other form and using global variables passed from there,this form executes.

First block having non-database item,which populates ields when new form is loaded. i wrote this data population in when-create-record triger in form level.

Then,the second block is multi record block and third block is single blocked. If any record exists for these blocks block2 and block3 i should be diaplay records when the form loaded itself.I wrote this in when-new-record-instance of form by go_block and execute_query if record exists.

The poblem is
--------------

1) Its asking dialog box ‘Do you want to apply the changes you have made’ when the now form is loaded.

If I give Ok on that its giving FRM-40404 : Database appkly complete/a records apllied(but its not saving entered records)

2) If I insert a record and and press OK button to save its giving FRM-40403: A calling form has unapplied changes. Save cannot be allowed

And also shows dialog box ‘Do you want to apply the changes you have made’

3) If I delete record by pressing <F10> its giving FRM-40403: A calling form has unapplied changes. Save cannot be allowed

Pls give suggesstion...Any design error?
Re: frm-40404 and frm-40403 [message #156229 is a reply to message #156177] Mon, 23 January 2006 16:30 Go to previous messageGo to next message
djmartin
Messages: 10181
Registered: March 2005
Location: Surges Bay TAS Australia
Senior Member
Account Moderator
Your form has three related blocks. ALWAYS connect them using the 'relations' feature of forms. If you have non-database items that pertain to each row ALWAYS use the Post-Query trigger to populate them.

I STRONGLY suggest you start a new version of your form FROM SCRATCH. Use the wizards to create the block and to build the relations between the blocks. Check its behaviour BEFORE you start making any code changes.

David
Re: frm-40404 and frm-40403 [message #156246 is a reply to message #156177] Tue, 24 January 2006 00:47 Go to previous messageGo to next message
sharan_it
Messages: 140
Registered: July 2005
Location: Chennai
Senior Member
Now am getting only FRM-40403: A calling form has unapplied changes. Save cannot be allowed

First block have only display items.
and i second and third block have a relation.

I wrote coding for assigning global variables and populating data of first block having display items in when-create-record.

U said to write in post-query.can we write in pre-form also?

which is better suggest...

This form(form2) is called when i go form1 and click form2 from the menu.

Someone suggested to check the status of first form(form1) and do post. But am not knowing in which trigger i have to write and what i have to write...

pls suggest..

Re: frm-40404 and frm-40403 [message #156247 is a reply to message #156177] Tue, 24 January 2006 00:48 Go to previous messageGo to next message
sharan_it
Messages: 140
Registered: July 2005
Location: Chennai
Senior Member
am getting FRM-40403: A calling form has unapplied changes. Save cannot be allowed, when i insert new records and press ok to save or edit existing and press ok to save or press F10 to delete record..
Re: frm-40404 and frm-40403 [message #156258 is a reply to message #156247] Tue, 24 January 2006 02:58 Go to previous messageGo to next message
Maaher
Messages: 7065
Registered: December 2001
Senior Member
Basically, it comes down to this: your calling form has uncommitted changes, which prevents you to commit the changes in the called form. So your options are:
- save (commit) the changes before calling another form
- don't commit the changes in the called form, but rather POST them to the database.

MHE
Re: frm-40404 and frm-40403 [message #156268 is a reply to message #156177] Tue, 24 January 2006 05:04 Go to previous messageGo to next message
sharan_it
Messages: 140
Registered: July 2005
Location: Chennai
Senior Member
calling form done by other person,i cant do anything in that.

How to do post of data..coding pls..

Am navigating through menu(call_form is witten in menu).
Can i check form_status to check form_sucess and do post.
somebody told suggestion i dont know how to do,..can u tell how to code this..
Re: frm-40404 and frm-40403 [message #156339 is a reply to message #156268] Tue, 24 January 2006 16:01 Go to previous message
djmartin
Messages: 10181
Registered: March 2005
Location: Surges Bay TAS Australia
Senior Member
Account Moderator
If your form is being invoked by an Open_Form command then consider using a session_mode of 'SESSION' (read documentation for a fuller explanation).
Quote:

session_mode:
NO_SESSION (The default.) - Specifies that the opened form should share the same database session as the current form. POST and COMMIT operations in any form will cause posting, validation, and commit processing to occur for all forms running in the same session.
SESSION - Specifies that a new, separate database session should be created for the opened form.
Don't use Pre-Form to populate post-query block values. I use When-New-Form-Instance to handle the local storage of parameter values and pre-query to handle the use of these stored values in the block in question.
Pre-form is for:
Quote:

Legal Commands - SELECT statements, unrestricted built-ins
Enter Query Mode - no
Usage Notes - Use a Pre-Form trigger to perform the following tasks:
- assign unique primary key from sequence
- restrict access to a form
- initialize global variables

David
Previous Topic: OTN
Next Topic: [URGENT] navigation from canvas to canvas
Goto Forum:
  


Current Time: Fri Sep 20 05:25:57 CDT 2024