2.4.131 BrtBeginPCDFAtbl

The BrtBeginPCDFAtbl record specifies properties of a cache field (section 2.2.5.2.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 following this record specifies a collection of cache items (section 2.2.5.2.3).


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

I

J

reserved

citems

...

xnumMin (optional)

...

...

xnumMax (optional)

...

...

A - fTextEtcField (1 bit): A bit that specifies whether this cache field contains at least one cache items (section 2.2.5.2.3) that contains a text, blank, Boolean, or error value. This value MUST be equal to 1 if this collection contains at least one BrtPCDIMissing (section 2.4.731), BrtPCDIString (section 2.4.733), BrtPCDIBoolean (section 2.4.727), BrtPCDIError (section 2.4.729), BrtPCDIAMissing (section 2.4.724), BrtPCDIAString (section 2.4.726), BrtPCDIABoolean (section 2.4.721) nor BrtPCDIAError (section 2.4.723) record, or a BrtBeginPCDIRun (section 2.4.147) record with a mdSxoper field equal to 0x0002 or 0x0010.

B - fNonDates (1 bit): A bit that specifies whether this cache field contains at least one cache item that contains a non-date value. This value MUST be equal to 1 if this collection contains at least one BrtPCDIMissing, BrtPCDIString, BrtPCDIBoolean, BrtPCDINumber (section 2.4.732), BrtPCDIError, BrtPCDIAMissing, BrtPCDIAString, BrtPCDIABoolean, BrtPCDIANumber (section 2.4.725) or BrtPCDIAError record, or a BrtBeginPCDIRun record with a mdSxoper field equal to 0x0001, 0x0002, or 0x0010.

C - fDateInField (1 bit): A bit that specifies whether this cache field contains at least one cache item that contains a date value. This value MUST be equal to 1 if this collection contains at least one BrtPCDIDatetime (section 2.4.728) or BrtPCDIADatetime (section 2.4.722) record, or a BrtBeginPCDIRun record with a mdSxoper field equal to 0x0020.

D - fHasTextItem (1 bit): A bit that specifies whether this cache field contains a cache item that contains a text, Boolean, or error value. This value MUST be equal to 1 if this collection contains at least one BrtPCDIString (section 2.4.733), BrtPCDIBoolean, BrtPCDIError, BrtPCDIAString, BrtPCDIABoolean or BrtPCDIAError record, or a BrtBeginPCDIRun record with a mdSxoper field equal to 0x0002 or 0x0010.

E - fHasBlankItem (1 bit): A bit that specifies whether this cache field contains a cache item that contains a blank value. This value MUST be equal to 1 if this collection contains at least one BrtPCDIMissing or BrtPCDIAMissing record.

F - fMixedTypesIgnoringBlanks (1 bit): A bit that specifies whether this cache field contains cache items of more than one type of value when blank values are ignored.

This field MUST be equal to 1 if any of the following three statements are true:

  • This field contains at least one of the following: a BrtPCDINumber record, a BrtPCDIANumber record, or a BrtBeginPCDIRun record with a mdSxoper field that equals 0x0001.

    –And–

    This field contains at least one of the following: a BrtPCDIString record, a BrtPCDIBoolean record, a BrtPCDIError record, a BrtPCDIAString record, a BrtPCDIABoolean record, a BrtPCDIAError record, or a BrtBeginPCDIRun record with a mdSxoper field that equals 0x0002 or 0x0010.

  • This field contains at least one of the following: a BrtPCDIDatetime record, a BrtPCDIADatetime record, or a BrtBeginPCDIRun record with a mdSxoper field that equals 0x0020.

    –And–

    This field contains at least one of the following: a BrtPCDINumber record, a BrtPCDIANumber record, or a BrtBeginPCDIRun record with a mdSxoper field that equals 0x0001.

  • This field contains at least one of the following: a BrtPCDIDatetime record, a BrtPCDIADatetime record, or a BrtBeginPCDIRun record with a mdSxoper field that equals 0x0020.

    –And–

    This field contains at least one of the following: a BrtPCDIString record, a BrtPCDIBoolean record, a BrtPCDIError record, a BrtPCDIAString record, a BrtPCDIABoolean record, a BrtPCDIAError record, or a BrtBeginPCDIRun record with a mdSxoper field that equals 0x0002 or 0x0010.

G - fNumField (1 bit): A bit that specifies whether this cache field contains at least one cache item that contains a numeric value, but contains no cache items that contain date values. This value MUST be equal to 1 if this collection contains at least one BrtPCDINumber or BrtPCDIANumber record or BrtBeginPCDIRun record with a mdSxoper field equal to 0x0001, and fDateInField is equal to 0.

H - fIntField (1 bit): A bit that specifies whether this cache field contains at least one cache item that contains an integer value, but contains no cache items that contain date values. This value MUST be equal to 1 if this collection contains at least one BrtPCDINumber or BrtPCDIANumber record or BrtBeginPCDIRun record with a mdSxoper field equal to 0x0001, and all xnum fields of the BrtPCDINumber records specify integer values, and all xnum fields of the BrtPCDIANumber records specify integer values, and all xnum fields of the rgPCDINumber field of the BrtBeginPCDIRun records specify integer values, and fDateInField is equal to 0.

I - fNumMinMaxValid (1 bit): A bit that specifies whether xnumMin and xnumMax exist. This value MUST be equal to 0 if fDateInField is equal to 0 and fNumField is equal to 0.

J - fHasLongTextItem (1 bit): A bit that specifies whether this cache field contains a cache item that contains a string longer than 255 characters. This value MUST be equal to 1 if this collection contains at least one BrtPCDIString record or a BrtPCDIAString record with an st field greater than 255 characters; or a BrtBeginPCDIRun with a mdsxoper field equal to 0x0002 and a rgPCDIString field containing a XLWideString (section 2.5.169) longer than 255 characters.

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

citems (4 bytes):  An unsigned integer that specifies the number of cache items in this collection as defined by the PivotCache Definition part ABNF. This value MUST be less than or equal to 1048576 if the data functionality level (section 2.2.5.1) is greater than or equal to 3; otherwise this value MUST be less than or equal to 32,500.

xnumMin (8 bytes):  An Xnum (section 2.5.172) or DateAsXnum (section 2.5.30) that specifies the minimum value of this PivotCache field (section 2.2.5.2). This field MUST exist if and only if fNumMinMaxValid is equal to 1. If fDateInField is equal to 1 and fMixedTypesIgnoringBlanks is equal to 0, this value MUST be a DateAsXnum equal to the earliest date specified among all the BrtPCDIDatetime records in this collection. If fNumField is equal to 1, this value MUST be an Xnum equal to the smallest value specified among all the BrtPCDINumber records in this collection. Otherwise, xnumMin is undefined and MUST be ignored.

xnumMax (8 bytes):  An Xnum (section 2.5.172) or DateAsXnum that specifies the maximum value of this PivotCache field. This field MUST exist if and only if fNumMinMaxValid is equal to 1. If fDateInField is equal to 1 and fMixedTypesIgnoringBlanks is equal to 0, this value MUST be a DateAsXnum equal to the latest date specified among all the BrtPCDIDatetime records in this collection. If fNumField is equal to 1, this value MUST be an Xnum equal to the largest value specified amongst all the BrtPCDINumber records in this collection. Otherwise, xnumMax is undefined and MUST be ignored.