MDAC 2.5 SDK - OLE DB Programmer's Reference
Chapter 23: Rowsets in OLE DB for OLAP
The guaranteed way for a consumer to get the flattened rowset of a dataset is by setting the DBPROP_IRowset property in the DBPROPSET_ROWSET property set to VARIANT_TRUE. It should do so by using ICommandProperties::SetProperties on the command object. It should also set the rguidDialect argument of the ICommandText::SetCommandText method to MDGUID_MDX.
For more information about the rules that determine whether a rowset object or a dataset object is returned from an MDX query, see "Controlling the Creation of Instances of a Rowset or a Dataset" in Chapter 22, "OLE DB for OLAP Objects and Schema Rowsets."