Re: commit in SQL*Forms (problems)

From: Troy Tinnes <Q10641_at_paccvm.corp.mot.com>
Date: 7 Apr 1994 09:12:31 HKT
Message-ID: <1994Apr7.014235.14443_at_schbbs.mot.com>


Check all the blocks of your form and make sure you do not have a base table defined (ie. not just the block where you are issuing a commit). When you pull up the DEFINE BLOCK window there should be nothing in the TABLE NAME field otherwise, the form will attempt to update or insert into this table even if the commit comes from another block.

If you need a base table in one of the blocks, and are trying to do something like: creating 2 blocks, 1 is a control/anonymous block (no base table) and the other is just a query block based on what was entered in the control block, then you have 1 of two choices to rid yourself of the 'NO CHANGES TO COMMIT' statement. 1. Ask yourself why you need to use the COMMIT key in the first place

   to do the operation you require.
2. If you're really stuck on using the COMMIT key then take out the

   COMMIT statement from the KEY-COMMIT trigger within the block the    COMMIT is being issued.

If all else fails, put some error messages in the PRE-INSERT and PRE-UPDATE triggers of all the blocks you have on the form and try some backward troubleshooting.

Hope this helps,

Troy Tinnes                E-Mail: tinnes_at_cig.nml.mot.com



------------------------- Original Article -------------------------

When using a commit in a PL/SQL block in Forms that does not have a basetable defined I get an error "NO CHANGES TO COMMIT" although the record does commit. the manual says that a commit in an anonymous block or a forms-level procedure is interpreted as a FORM-COMMIT. My form is attempting to update different tables depending on the data entered on the form.

??? How do I "get-around" this.

(Using Forms30 and Oracle 6)

Thanks,

Mike Winterer Received on Thu Jan 01 1970 - 00:59:59 CET

Original text of this message