Consultor Eletrônico



Kbase P125380: ABL: Progress session crashes using a FIND statement with USING INPUT option
Autor   Progress Software Corporation - Progress
Acesso   Público
Publicação   8/9/2007
Status: Unverified

FACT(s) (Environment):

Windows
OpenEdge 10.1B
OpenEdge 10.1B01 32-bit Service Pack

SYMPTOM(s):

ABL: Progress session crashes using a FIND statement with USING INPUT option

The following two error messages are displayed in two separate error message boxes:
Progress Client has encountered a problem and needs to close. We are sorry for the inconvenience.
The instruction at "0x010fd2b8" referenced memory at "0x012c95b4". The memory could not be "read".

The crash is caused by any of the following statement variations:
FIND FIRST ehist USING
INPUT ehist.lnum AND
INPUT ehist.dpai
USE-INDEX ehist
NO-WAIT NO-ERROR.
or
FIND FIRST ehist USING
INPUT ehist.lnum AND
INPUT ehist.dpai
NO-WAIT NO-ERROR.
or
FIND FIRST ehist USING
INPUT ehist.lnum
NO-WAIT NO-ERROR.
Where the index "ehist" is an ABBREVIATED PRIMARY UNIQUE INDEX.

CAUSE:

Bug# OE00155887

FIX:

A workaround is to either remove the ABBREVIATED attribute of the INDEX used to SEARCH the table or use the WHERE clause and the SCREEN-VALUE attributes instead of the USING and INPUT options. For example:
FIND FIRST ehist WHERE
ehist.lnum = INTEGER(ehist.lnum:SCREEN-VALUE IN FRAME {&FRAME-NAME}) AND
ehist.dpai = DATE (ehist.dpai:SCREEN-VALUE IN FRAME {&FRAME-NAME})
USE-INDEX ehist
NO-WAIT NO-ERROR.