2.5.259 SXLIItem

The SXLIItem structure specifies a pivot line in the row area or column area of a PivotTable view.


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

cSic

itmType

A

isxviMac

B

iData

C

D

E

F

G

H

I

rgisxvi (variable)

...

cSic (2 bytes): A signed integer that specifies the count of pivot item indexes in the beginning of the rgisxvi array that are identical to the same number of pivot item indexes in the beginning of the rgisxvi array of the previous SXLIItem structure in the rgsxli array of the preceding SXLI record. The value MUST be greater than or equal to 0 and less than the isxviMac field. If the fGrand field equals 1, then this value MUST be 0.

itmType (15 bits): An unsigned integer that specifies the type of this pivot line. MUST be a value from the following table:

Name

Value

Meaning

ITMTYPEDATA

0x0000

A value in the data

ITMTYPEDEFAULT

0x0001

Automatic subtotal selection

ITMTYPESUM

0x0002

Sum of values in the data

ITMTYPECOUNTA

0x0003

Count of values in the data

ITMTYPECOUNT

0x0004

Count of numbers in the data

ITMTYPEAVERAGE

0x0005

Average of values in the data

ITMTYPEMAX

0x0006

Maximum value in the data

ITMTYPEMIN

0x0007

Minimum value in the data

ITMTYPEPRODUCT

0x0008

Product of values in the data

ITMTYPESTDEV

0x0009

Statistical standard deviation (estimate)

ITMTYPESTDEVP

0x000A

Statistical standard deviation (entire population)

ITMTYPEVAR

0x000B

Statistical variance (estimate)

ITMTYPEVARP

0x000C

Statistical variance (entire population)

ITMTYPEGRAND

0x000D

Grand total

ITMTYPEBLANK

0x000E

Blank line

A - reserved1 (1 bit):  MUST be zero and MUST be ignored.

isxviMac (2 bytes): A signed integer that specifies the number of elements in the rgisxvi array that are displayed in this pivot line. MUST be greater than or equal to 0. If the fGrand field equals 1, then the value of this field MUST be 1. If the fGrand field equals zero and the preceding SXLI record contains row area pivot items, then this value MUST be less than or equal to the cDimRw field of the preceding SxView. If the fGrand field equals zero and the preceding SXLI record contains column area pivot items, then this value MUST be less than or equal to the cDimCol field of the preceding SxView.

B - fMultiDataName (1 bit): A bit that specifies whether the data field name is used for the total or the subtotal. MUST be a value from the following table:

Value

Meaning

0

The data field name is used for the total.

1

The data field name is used for the subtotal.

If the fGrand field equals 1 or the fBlock field equals 1, then this value MUST equal the value in the fMultiDataOnAxis field. If the fGrand and fBlock fields equal zero, the fSbt and fMultiDataOnAxis fields equal 1, and the cSic field is less than iposData, then this value MUST equal 1. Otherwise, this value MUST be 0.

iposData is specified as follows:

  • If the preceding SXLI record contains row area pivot items, iposData equals the index of the SxIvdRw record in the rgSxivd array of the SxIvd containing SxIvdRw records where the rw field equals -2. If there is not an SxIvdRw record with the rw field equal to -2, iposData equals zero.

  • If the preceding SXLI record contains column area pivot items, iposData equals the index of the SxIvdCol record in the rgSxivd array of the SxIvd containing SxIvdCol records where the col field equals -2. If there is not an SxIvdCol record with the col field equal to -2, iposData equals zero.

iData (8 bits): An unsigned integer that specifies a data item index as specified in Data Items, for an SXDI record specifying a data item used for a subtotal. This field MUST be 0 if the cDimData field of the preceding SxView record is 0 or if the fGrand field equals 1. If the cDimData field of the preceding SxView is greater than 0, then this value MUST be greater than or equal to 0 and less than the cDimData field of the preceding SxView record. If the fMultiDataOnAxis field equals 1 and the itmType field does not equal ITMTYPEBLANK and the isxviMac field is greater than iposData as specified in fMultiDataName, then the value of this field MUST equal the value of the element of the rgisxvi array in the position equal to iposData as specified in fMultiDataName.

C - fSbt (1 bit): A bit that specifies whether this pivot line is a subtotal. This value MUST equal 1 if the itmType field is greater than or equal to ITMTYPEDEFAULT and the itmType field is less than or equal to ITMTYPEGRAND and the fBlock field equals 0. Otherwise, this value MUST be 0.

D - fBlock (1 bit): A bit that specifies whether this pivot line is a block total. A block total is a total of a group of pivot items. For more details see Grouping. If the fGrand field equals 0 and the fBlock field in the previous SXLIItem record equals 1, this value MUST be 1.

E - fGrand (1 bit): A bit that specifies whether this pivot line is a grand total. If the fGrand field in the previous SXLIItem record is 1, then this value MUST be 1. Otherwise, if the itmType field equals ITMTYPEGRAND this field MUST equal 1 and if the itmType field does not equal ITMTYPEGRAND this field MUST equal 0.

F - fMultiDataOnAxis (1 bit): A bit that specifies whether a pivot line entry in this pivot line is a data item index.

If the preceding SXLI record contains row area pivot items, the cDimData field of the preceding SxView record is greater than 1, the sxaxis4Data.sxaxisRw field of the preceding SxView equals 1 and itmType is not equal to ITMTYPEBLANK, then this value MUST be 1. Otherwise, this value MUST be 0.

If the preceding SXLI record contains column area pivot items, the cDimData field of the preceding SxView record is greater than 1, the sxaxis4Data.sxaxisCol field of the preceding SxView equals 1 and itmType is not equal to ITMTYPEBLANK, then this value MUST be 1. Otherwise, this value MUST be 0.

G - unused1 (1 bit):  Undefined, and MUST be ignored.

H - unused2 (1 bit):  Undefined, and MUST be ignored.

I - reserved2 (1 bit): MUST be zero and MUST be ignored.

rgisxvi (variable): An array of 2-byte signed integers that specifies a pivot line entry.

Each element of this array is either a pivot item index or a data item index.

If fGrand is 1 or itmType is ITMTYPEBLANK then all elements of this field are undefined and MUST be ignored. Otherwise each element MUST be a value from the following table:

Value

Meaning

0x0000 to 0x7EF4

This value specifies a data item index or pivot item index in the associated pivot field as specified in Pivot Items.

0x7FFF

This value specifies that there is no pivot item and that the cell in the pivot line is blank.

For more details see Pivot Line Entries and Pivot Lines.