Also, I figured out the problem with the interaction between GetCellByDisplayName and ShowValuesRow, it’s a little tricky:
Here’s an example of the problematic code:
/* 1 / pivotTable.AddFieldToArea( PivotFieldType.Column, pivotTable.DataField );
/ 2 / pivotTable.ShowValuesRow = false;
/ 3 / pivotTable.RefreshData();
/ 4 / pivotTable.CalculateData();
/ 5 */ var cell = pivotTable.GetCellByDisplayName( “Advertiser” );
Even when the cell named “Advertiser” exists, at the end of this code ‘cell’ will be null. However, if you either:
a) remove line (1) or
b) move line (2) after line (4),
then ‘cell’ will not be null.
There’s some weird interaction around ShowValuesRow with these other fields that seems likely to be related to the general problem of this field not working properly at all.