1 /* BEGIN INCLUDE FILE - dm_key_count_array.incl.pl1 */ 2 3 4 5 /****^ HISTORY COMMENTS: 6 1) change(87-01-15,Hergert), approve(87-04-01,MCR7632), 7 audit(87-02-09,Dupuis), install(87-04-02,MR12.1-1020): 8 Added the KEY_COUNT_OFFSET_IN_CHARACTERS. This is the offset from the 9 beginning of the structure to the element key_count_array.count in 10 characters. Using this it is possible to calculate the key_count_array_ptr 11 given the "addr (key_count_array.count (0))". 12 END HISTORY COMMENTS */ 13 14 15 /* DESCRIPTION: 16 17 The key_count_array holds counts of the number of unique key values 18 in an index. These values are used by the search optimization done by 19 MRDS. count(0) is the number of keys in the index. count(N) is the 20 number of keys in the index which have at least fields 1 through N 21 having the same value as another key in the index, i.e. count(N) 22 is the number of partial duplicates with number of partial 23 duplication fields equal to N. 24 25 */ 26 27 /* HISTORY: 28 29 Written by Lindsey Spratt, 11/09/82. 30 Modified: 31 10/27/84 by Lindsey L. Spratt: Changed the version to char(8) aligned. 32 Added a description, fixed the history section. 33 */ 34 35 /* format: style2,ind3 */ 36 dcl 1 key_count_array aligned based (key_count_array_ptr), 37 2 version char (8) aligned, 38 2 number_of_counts fixed bin (17) unal, 39 2 pad bit (18) unal, 40 2 count (0:kca_number_of_counts refer (key_count_array.number_of_counts)) fixed 41 bin (35) aligned; 42 43 dcl KEY_COUNT_ARRAY_VERSION_2 44 init ("KeyCnt 2") char (8) aligned internal static options (constant); 45 dcl KEY_COUNT_OFFSET_IN_CHARACTERS 46 init (12) fixed bin internal static options (constant); 47 48 dcl key_count_array_ptr ptr init (null); 49 dcl kca_number_of_counts fixed bin (17) init (0); 50 51 52 /* END INCLUDE FILE - dm_key_count_array.incl.pl1 */