2.4.136 BrtBeginPCDField

The BrtBeginPCDField record specifies properties of a single cache field (section 2.2.5.2.2) in the PivotCache (section 2.2.5.2) and specifies the beginning of a collection of records as defined by the PivotCache Definition (section 2.1.7.38) part ABNF. The collection of records specifies a single cache field in the PivotCache.


0


1


2


3


4


5


6


7


8


9

1
0


1


2


3


4


5


6


7


8


9

2
0


1


2


3


4


5


6


7


8


9

3
0


1

A

B

C

D

E

F

G

H

reserved2

ifmt

...

wTypeSql

ihdb

isxtl

cIsxtmps

stFldName (variable)

...

stFldCaption (variable)

...

fldFmla (variable)

...

cbRgisxtmp (optional)

rgisxtmp (variable)

...

stMemPropName (variable)

...

A - fServerBased (1 bit):  A bit that specifies whether this cache field is a server-based page field when the corresponding pivot field (section 2.2.5) is on the page axis (section 2.2.5.3.7.1) of the PivotTable view (section 2.2.5.3).

This value applies to an ODBC PivotCache only. This value MUST NOT be equal to 1 if the value in the fCantGetUniqueItems field is equal to 1.

This value MUST be equal to 0 for a cache field in a non-ODBC PivotCache.

B - fCantGetUniqueItems (1 bit):  A bit that specifies whether a list of unique values from the source data (section 2.2.5.2.1) for the cache field was not available while refreshing the PivotCache. This value applies only to a PivotCache that uses ODBC and is intended to be used in conjunction with optimization features. For example, the application can optimize memory usage when populating cache records (section 2.2.5.2.10) if it has a list of unique values for a cache field before all the cache records are retrieved from the ODBC connection (section 2.2.8.4). Alternately, the application can determine the appropriate setting of the fServerBased field based on this value.

This value MUST be equal to 0 for fields in a non-ODBC PivotCache.

C - fSrcField (1 bit):  A bit that specifies whether this cache field corresponds to source data entity, as specified in Cache Fields.

This value MUST be equal to 1 for a cache field in an OLAP PivotCache.

This value MUST be equal to 1 for the first BrtBeginPCDField record in the sequence of records that conform to the PCDFIELDS rule (defined in section 2.1.7.38). All cache fields with this value equal to 0 MUST be at the end of the PCDFIELDS rule.

D - fCaption (1 bit):  A bit that specifies whether the stFldCaption field exists after the fixed-sized portion of the record.

This value MUST be equal to 0 if the value of the bVerCacheCreated field of the preceding BrtBeginPivotCacheDef (section 2.4.168) record is less than 3.

E - fOlapMemPropField (1 bit):  A bit that specifies whether this cache field is associated with an OLAP member property.

This value MUST be 0 for a cache field in a non-OLAP PivotCache.

F - reserved1 (3 bits):  This value MUST be 0, and MUST be ignored.

G - fLoadFmla (1 bit):  A bit that specifies whether the fldFmla field exists after the fixed-sized portion of the record. This value MUST be 0 for an OLAP PivotCache and MUST be equal to 0 if the fSrcField field is equal to 1.

H - fLoadPropName (1 bit):  A bit that specifies whether the stMemPropName field exists after the fixed-sized portion of the record.

This value MUST be 0 if the fOlapMemPropField field is equal to 0.

reserved2 (6 bits):  This value MUST be 0, and MUST be ignored.

ifmt (4 bytes):  A PivotNumFmtExt (section 2.5.107) that specifies the number format that is used by all source data values that correspond to this cache field.

wTypeSql (2 bytes):  A TypeSql (section 2.5.152) that specifies the SQL data type of the cache field. This value stores an ODBC data type and only applies to an ODBC PivotCache. This value is provided by the source database.

ihdb (4 bytes):  An unsigned integer that specifies a cache hierarchy index, as specified in section 2.2.5.2.7. The referenced cache hierarchy is associated with this cache field. For an OLAP PivotCache, this value MUST be less than the count of instances of the sequence of records that conforms to the PCDHIERARCHY rule (defined in section 2.1.7.38) in the BrtBeginPCDHierarchies collection (section 2.4.145) . For a non-OLAP PivotCache, this value MUST be 0 and MUST be ignored.

isxtl (4 bytes):  An unsigned integer that specifies the zero-based ordinal of the cache hierarchy level that this cache field is associated with. This value is only used for fields in an OLAP PivotCache. For a non-OLAP PivotCache, this value MUST be 0 and MUST be ignored. If the fOlapMemPropField field is equal to 0, this value MUST be equal to 0x00007FFF, or it MUST be less than the cItems field in the BrtBeginPCDHFieldsUsage (section 2.4.138) record of the cache hierarchy this cache field is associated with. If this value is equal to 0x00007FFF, this cache field applies to the whole cache hierarchy specified by ihdb rather than to one level of this cache hierarchy. This value MUST be equal to 0x00007FFF if the fMeasure field of the BrtBeginPCDHierarchy (section 2.4.146) record specified by the ihdb field is 1.

cIsxtmps (4 bytes):  An unsigned integer that specifies the number of elements in the array specified by rgisxtmp; this value MUST be 0 for a non-OLAP PivotCache.

This value MUST be less than the number of cache fields in this PivotCache as specified by the cFields field in the BrtBeginPCDFields (section 2.4.137) record preceding this record.

stFldName (variable):  An XLWideString (section 2.5.169) that specifies the name of the cache field. This value MUST be unique (using case insensitive comparison) in the scope of all cache fields in the current PivotCache unless this cache field is a grouping cache field and fSrcField is 0. For more information about grouping, see section 2.2.5.2.4.

The length of this string MUST be greater than 0. If the value of the bVerCacheCreated field of the preceding BrtBeginPivotCacheDef record of this PivotCache is less than 3, the length of this string MUST be less than 256 characters; otherwise it MUST be less than 32,768 characters.

stFldCaption (variable):  An optional XLWideString that specifies the caption of the cache field. This value MUST exist if and only if fCaption is equal to 1.

The length of the string MUST be less than 32,768 characters.

fldFmla (variable):  A PivotParsedFormula (section 2.5.98.15) that specifies the formula (section 2.2.2) for this calculated field (section 2.2.5.2.5) This formula MUST exist if and only if fLoadFmla is equal to 1.

cbRgisxtmp (4 bytes):  An unsigned integer that specifies the number of bytes used by the rgisxtmp field. This value MUST be equal to the following formula:

cIsxtmps * 4

This value exists if and only if the value of cIsxtmps is greater than 0.

rgisxtmp (variable): An array of 4-byte unsigned integers. Each element in the array specifies a cache field index. Each referenced cache field is a member property cache field, which is associated with this cache field. The isxtl field of the BrtBeginPCDField record of the referenced cache field MUST be equal to 0x00007FFF or equal to isxtl. The fOlapMemPropField field of the BrtBeginPCDField record of the referenced cache field MUST be equal to 1. The ihdb field of the BrtBeginPCDField record of the referenced cache field MUST be equal to ihdb. This field MUST exist if and only if cIsxtmps is greater than 0.

The value of each element in the array MUST be less than the number of cache fields in this PivotCache as specified by the cFields field in the BrtBeginPCDFields record preceding this record.

stMemPropName (variable):  An optional XLWideString that specifies the name of the member property this cache field associated with. This value MUST exist if and only if the fLoadPropName field is equal to 1.

The length of the string MUST be greater than 0 and less than 32,768 characters.