Consultor Eletrônico



Kbase P5916: Error 425 and 725 can occur when compiling and/or running co
Autor   Progress Software Corporation - Progress
Acesso   Público
Publicação   15/12/2003
Status: Verified

SYMPTOM(s):

Table <table> is in database <db name> and <db name> (425)

Unknown or ambiguous table <table>. (725)

Error 425 and 725 can occurs when compiling/running code against Progress database

Client can be connected to multiple Progress databases that have the same table name defined

Error 425 and 725 can occur when compiling/running code against a schema holder database

Client can be connected to a single schema holder that contains multiple schema images with the same object names

Client can be connected to multiple schema holders that contains a schema image with the same object names

Logical database name is not referenced when compiling

CAUSE:

This issue can occur when working with a Progress db and/or a dataserver schema holder.

The following errors (425/725) can occur when working with multiple schema images and/or multiple Progress databases that contain the same object names during the compile.

1. How this error can occur against Progress db

Example A, client connected to multiple Progress database that have the same table names

DB1.customer
DB2.customer

2. How this error can occur against schema holder

Example A, client connected to a single schema holder that contains multiple schema images of the same object name
Example B, client connected to multiple schema holders that contain a single schema image of the same object name

schimage1.customer
schimage2.customer

3. The following code is run against Progress and schema holder
FOR EACH customer.
DISPLAY name.
END.

3. Expected error occurs during the compile against Progress and/or schema holder. This is expected because how does the compiler know which "customer" table you are referencing? Which database and/or which schema image is being referenced during the compile?

FIX:

In order to complete the compile, you must qualify table name with logical name of the database.

Against Progress db:
FOR EACH DB2.customer.
DISPLAY name.
END.

Against schema holder
FOR EACH schimage2.customer.
DISPLAY name.
END