Fixed
Pinned fields
Click on the next to a field label to start pinning.
Details
Components
Assignee
Jim DeFabiaJim DeFabiaReporter
Vladimir MyullyariVladimir MyullyariPriority
MinorCompatibility
MinorFix versions
Pull Request URL
Details
Details
Components
Assignee
Jim DeFabia
Jim DeFabiaReporter
Vladimir Myullyari
Vladimir MyullyariPriority
Compatibility
Minor
Fix versions
Pull Request URL
Created January 18, 2018 at 8:38 PM
Updated June 8, 2023 at 3:52 PM
Resolved June 8, 2023 at 3:52 PM
Syntax check fails for the second index, although both index definitions look the same:
id_rec := RECORD string2 f1; string2 f2; END; full_rec := RECORD integer did; id_rec; END; ds := DATASET ('aaa_file', full_rec, THOR); key_aaa := INDEX (ds, {did}, {f1, f2}, 'aaa'); key_bbb := INDEX (ds, {did}, id_rec, 'bbb'); // this fails the syntax BUILDINDEX (key_aaa, 'aaa', update); BUILDINDEX (key_bbb, 'bbb', update);
Index definition as it appears in Language Reference:
attr := INDEX([ baserecset, ] keys, payload, indexfile [,...
Apparently BUILDINDEX cannot use payload, if it is defined as a stand-alone record; same it true for keys record structure as well. Curiously, INDEX definition itself is perfectly fine, error appears only when using BUILDINDEX.
There are certain important benefits in allowing the use of external records' definitions, so it'd be nice to have this ability. If not possible, then Language Reference must provide a clarification.