Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Expert help required (forms4.5)

221 views
Skip to first unread message

Jonathan Trifts

unread,
Feb 4, 1998, 3:00:00 AM2/4/98
to

<If replying directly, remember to remove the NOSPAM from the email
domain>

Dear Expert(s):

We are experiencing some intermittent errors on two of our Oracle Forms
modules which seem to be caused by calls to procedures in the Oracle
Forms HINT library. The two cases seem to be related, so I have grouped
them together, but they are occurring on two different form modules.

Form A:

When the form initially opens, these error messages appear, at least 50%
of the time:

FRM-41045: Cannot find item: invalid ID (appears 3 times, and is
sometimes followed by:)
FRM-41058: No such property for Get-Item-Property (which may appear by
itself, or after the first messages)

These error messages are intermittent, apparently originating from
within the attached Oracle HINT library, from the procedure
HINT.ShowButtonHelpHandler, called from the form-level
When-Timer-Expired trigger, which seems to fire on a fairly random basis
in relation to when the form is initially called from the menu.

The problem can be "fixed" by commenting out the call to the HINT
procedure in the When-Timer-Expired trigger, which is the only place it
appears in the form. The drawback is that the bright yellow-coloured
"bubble" hint text which appears when the mouse remains on an object no
longer appears. With or without this fix, the business functionality of
the form works exactly the same.

I have tried the following to fix the form:
1) run the form in debug mode
2) inserted my own messages: messages seem to affect the time of the
initial appearance of the defect - an unreliable testing method
3) examined the code involved in form level triggers which fire before
the messages appear (i.e.. code called from the Pre-Form or
When-New-Form-Instance triggers). There were no apparent anomalies.
4) created a local copy of the procedures in the Oracle HINT library,
specifically, a copy of the HINT package and package spec. We won't
modify this library itself, as we cannot predict how it will affect the
other modules. I placed messages in it too, in the hope of finding the
cause of the error. This is high-level code, and the results of this
testing were inconclusive, as I don't precisely know what I should be
looking for.

Form B:

This defect is also intermittent, and seems to stem from an unhandled
exception which is being raised by the form-level When-Mouse-Enter
trigger. The form opens in ENTER-QUERY mode. We EXECUTE-QUERY on any
record in the topmost block, and wait a few seconds for all of the
several master-detail relations to do their work and populate the other
blocks on the form. Upon placing the cursor over a button in the last
block on the screen, which calls a popup block for data entry, the
message FRM-40735 When-Mouse-Enter trigger raised unhandled exception
Value-Error appears. After it has appeared once, the same message will
continue to appear whenever the mouse is moved.

Additional Information:
1) Moving the mouse before the form has finished populating all the
blocks and then navigating to the last record of the last block on the
form seems to precipitate the problem.
2) Although the application files are all kept on our LAN, the database
is at the client site, and our connection is often SLOW.
3) We are using Pentium 133 workstations, Windows NT 4.0, Oracle
Developer/2000 toolset (32-bit version - the version of Forms is
4.5.7.1.6) running against an Oracle7 Server 7.3.2.3.1 (with the
distributed, replication and parallel query options).

Any help or advice you can offer would be appreciated. Please let us
know if you need more info. Thanks.

Jonathan Trifts

Neville Sweet

unread,
Feb 5, 1998, 3:00:00 AM2/5/98
to

Hi Jonathan,

I don't have any expert advice for you, but something you could try:
The second When-Mouse-Enter problem might be avoided by wrapping an 'if'
test around your trigger text, ie.
IF :System.Mode = 'NORMAL'
THEN
your-trigger-code
END IF;
Thus the trigger fires harmlessly if the form is fetching data and the mode
is 'QUERY'.

The fact that the first problem is intermittent is curious. Maybe the
malfunction is dependent on the position of the mouse pointer as the form
goes through it's initialization.

I'm interested to hear of your progress.

Stacy Friedman

unread,
Feb 6, 1998, 3:00:00 AM2/6/98
to

Jonathan Trifts wrote:

> FRM-41045: Cannot find item: invalid ID (appears 3 times, and is
> sometimes followed by:)
> FRM-41058: No such property for Get-Item-Property (which may appear by
> itself, or after the first messages)
>
> These error messages are intermittent, apparently originating from
> within the attached Oracle HINT library, from the procedure
> HINT.ShowButtonHelpHandler, called from the form-level
> When-Timer-Expired trigger, which seems to fire on a fairly random basis

Evaluate the possible navigation states that your form could be in when
the timer fires, and then see if any of these don't make sense for the
call to the HINT lib. The two errors you're getting are usually
associated with being in the wrong block or item. FRM-41058 especially
is caused by assuming you're looking at item A when you're really
looking at item B -- if item B doesn't have the property that you're
interested in (which item A does), then you'll get this error. To fix
this, put in additional state checking in your timer code to make sure
that when it fires, the state of the form is what you expect it to be.

> Form B:
>
> This defect is also intermittent, and seems to stem from an unhandled
> exception which is being raised by the form-level When-Mouse-Enter
> trigger. The form opens in ENTER-QUERY mode. We EXECUTE-QUERY on any
> record in the topmost block, and wait a few seconds for all of the
> several master-detail relations to do their work and populate the other
> blocks on the form. Upon placing the cursor over a button in the last
> block on the screen, which calls a popup block for data entry, the
> message FRM-40735 When-Mouse-Enter trigger raised unhandled exception
> Value-Error appears. After it has appeared once, the same message will
> continue to appear whenever the mouse is moved.

Again, you need to make sure that the code in your When-Mouse-Enter
trigger isn't getting executed before it's supposed to. If you're
referencing a particular item in a block, but there's nothing there yet
from the query, you could get a value error. Put in additional code to
make sure you're not referencing empty items. Alternatively, you could
do away with the When-Mouse-Enter trigger and create a button for the
popup block -- and have this button be disabled until your query is
completed.

-Stacy

--------------------------------------------------
stacy *underscore* friedman *at* yahoo *dot* com
(or replace yahoo.dot.com with yahoo.com)
Spam bait: bi...@microsoft.com root@localhost

0 new messages