Consultor Eletrônico



Kbase P174399: proDataSet with PAIRS LIST in ATTACH-DATA-SOURCE returns error 8826 from FILL operation when FIELDS
Autor   Progress Software Corporation - Progress
Acesso   Público
Publicação   14/10/2010
Status: Unverified

SYMPTOM(s):

proDataSet with PAIRS LIST in ATTACH-DATA-SOURCE returns error 8826 from FILL operation when FIELDS list is specified in DATA-SOURCE query

FILL got error 8826 creating record <buffer-name>. (11878)

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

FACT(s) (Environment):

FIELDS list was specified in the Record Phrase of the DEFINE QUERY or QUERY-PREPARE
PAIRS LIST Mapping fields were specified in the ATTACH-DATA-SOURCE method which caused the proDataSet to require more fields than were specified in the FIELDS list (or no list was given, requiring all matching temp-table fields to be required).
All Supported Operating Systems
OpenEdge 10.x

CAUSE:

The FIELDS option of the Record Phrase should not be used in conjunction with FILL operations on a proDataSet because it may prevent the AVM from retrieving all fields necessary for the proDataSet table, including the data-relation fields.

This option was provided to the language specifically for DataServer access. When using this option in a QUERY against a PROGRESS database, accompanied by a PAIRS LIST in the ATTACH-DATA-SOURCE method, and the pairs list includes fields that are not in the FIELDS list of the query, this will return an error. Or if there is no pairs list, and the dataset table has more fields than the FIELDS list, an error will occur.

FIX:

Do not use the FIELDS option in a QUERY attached to a DATA-SOURCE. The ATTACH-DATA-SOURCE method includes an option to allow developers to specify a fields list in the [Include Fields] optional parameter if it is desirable to only populate temp-table records with a specific list of fields. The FIELDS option, combined with the Include Fields in the ATTACH can avoid extra network traffic for a dataserver case.