Consultor Eletrônico



Kbase P125890: Error 3782 occurs when field in BY clause is located in a linked table with Oracle DataServer
Autor   Progress Software Corporation - Progress
Acesso   Público
Publicação   4/8/2011
Status: Unverified

SYMPTOM(s):

Error 3782 occurs when executing a query against Oracle DataServer

Field <field-num> from <file-name> record (recid <RECID>) was missing from FIELDS phrase. (3782)

After errors (1 per records returned), the expected results are displayed

Field used in BY clause of the query is determined via a Function

FIELDS option is not used in the DEFINE QUERY statement, for example:

FUNCTION getBy RETURNS CHARACTER ( ) :
RETURN STRING(emp.empno).
END FUNCTION.

...

OPEN QUERY q-user
FOR EACH dept NO-LOCK,
FIRST emp WHERE emp.deptno = dept.deptno NO-LOCK
BY getBy()
.

Similiar code works when executed against a Progress database

FACT(s) (Environment):

Progress 9.1x
OpenEdge 10.0x
OpenEdge 10.1A
OpenEdge 10.1B
Oracle DataServer
Oracle

CAUSE:

Bug# OE00151489

FIX:

Upgrade to 10.1B03 or later

FIX:

Use the FIELDS option in the DEFINE QUERY statement to specify which database fields should be included in the query