Manage folders containing one field for SSAS

Data source

by Flexmonster Pivot Table

HTML

<script src="https://cdn.flexmonster.com/flexmonster.js"></script>

<p>
  When the
  <a
    target="_blank"
    href="https://www.flexmonster.com/api/options-object/#simplifyfieldlistfolders"
  >simplifyFieldListFolders</a> property is set to <code>true</code>, 
  the folders containing one field show this field in the root.
</p>

<button onclick="toggleControl()">Simplify the Fields List folders</button>

<div id="pivot-container"></div>

CSS

@import url(https://cdn.flexmonster.com/assets/jsfiddle-styles.css);

JavaScript

let pivot = new Flexmonster({
  container: "pivot-container",
  componentFolder: "https://cdn.flexmonster.com/",
  height: 400,
  report: {
    dataSource: {
      type: "microsoft analysis services",
      proxyUrl: "https://olap.flexmonster.com/olap/msmdpump.dll",
      catalog: "Adventure Works DW Standard Edition",
      cube: "Sales Targets",
    },
    slice: {
      columns: [
        {
          uniqueName: "[Measures]",
        },
        {
          uniqueName: "[Sales Territory].[Sales Territory Country]",
        },
      ],
      measures: [
        {
          uniqueName: "[Measures].[Reseller Order Count]",
        },
      ],
      rows: [
        {
          uniqueName: "[Product].[Category]",
        },
      ],
    },
    options: {
      configuratorActive: true,
      simplifyFieldListFolders: false,
    },
  },
});

function toggleControl() {
  const options = pivot.getOptions();
  const newValue = !options.simplifyFieldListFolders;
  pivot.setReport({
    dataSource: {
      type: "microsoft analysis services",
      proxyUrl: "https://olap.flexmonster.com/olap/msmdpump.dll/",
      catalog: "Adventure Works DW Standard Edition",
      cube: "Sales Targets",
    },
    options: {
      configuratorActive: true,
      simplifyFieldListFolders: newValue,
    },
    slice: {
      columns: [
        {
          uniqueName: "[Measures]",
        },
        {
          uniqueName: "[Sales Territory].[Sales Territory Country]",
        },
      ],
      measures: [
        {
          uniqueName: "[Measures].[Reseller Order Count]",
        },
      ],
      rows: [
        {
          uniqueName: "[Product].[Category]",
        },
      ],
    },
  });
}