Re: Works under SQL*Plus but not SQL*Forms procedure. ;-(

From: Michael A. Rife <MRife_at_admin.usf.edu>
Date: 1998/02/23
Message-ID: <6cs97l$ctc$1_at_news.usf.edu>#1/1


The reason you are getting the "No changes to commit" is because you have not changed any forms database fields/items in the form. You have updated the database directly, but have not changed the values of any forms fields/items. Therefore from the form's perspective, there really are no changes to be committed.

You can address this problem in one of two ways.

  1. You can actually change the value of a database item in the form right before the commit by: :block_name.field_name := block_name.field_name; NOTE: this will force a commit of that change. May not be appropriate for your application.
  2. Or you can just put in a message to say that the transaction(s) has/have been committed to the database. Then set the messagge level to 10 before committing and setting it back to 0 after the commit.

In article <6chf6b$38h_at_knot.queensu.ca>, 3srf_at_qlink.queensu.FOOBAR.ca says...
>
>[From: header modified to thwart e-mail spam. See .sig for details]
>
>Hello:
>
>I'm developing an SQL*Forms 3.0 application that allows the user to
>modify some information about employee groups. When the form is
>executed, any information that has been entered in the groups table
>is then applied to the employee table for all employees in the
>appropriate employee groups.
>
>The code that updates the table is called from a procedure, which is
>in turn called by a key trigger. This code works perfectly when run
>from SQL*Plus, but when run within the SQL*Forms procedure, nothing
>happens!! (I get, "No changes to commit" on the message line).
Received on Mon Feb 23 1998 - 00:00:00 CET

Original text of this message