public override string Render()
        {
            this.ExportPercentage = false;

            if (this.Definition.Settings.ExportPercentage)
            {
                this.ExportPercentage = true;
            }

            this.DisplayUnweightedBase = false;

            if (this.Definition.Settings.DisplayUnweightedBase)
            {
                this.DisplayUnweightedBase = true;
            }

            this.DisplayEffectiveBase = false;

            if (this.Definition.Settings.DisplayEffectiveBase)
            {
                this.DisplayEffectiveBase = true;
            }


            // Get a temp file path to save the document to.
            string fileName = Path.GetTempFileName() + ".xlsx";

            GetTotalToProcessCount();

            // Create a new excel writer to write the PowerBI document.
            ExcelWriter writer = new ExcelWriter();

            // Render the headline.
            RenderHeadline(writer);

            Data filter = base.InitFilter();

            this.Definition.WeightingFilters.LoadRespondents(filter);

            // Check if there are filter defined.
            if (this.Definition.Dimensions.Count > 0)
            {
                // Render the first defined filter.
                RenderDimension(
                    this.Definition.Dimensions[0],
                    writer,
                    0,
                    filter
                    );
            }

            writer.AutoFit();

            writer.Save(fileName);

            base.Progress = 100;

            base.Finalize(fileName);

            return(fileName);
        }