diff --git a/superset/common/query_context_processor.py b/superset/common/query_context_processor.py index 94f54097e23..add3a966bfb 100644 --- a/superset/common/query_context_processor.py +++ b/superset/common/query_context_processor.py @@ -1004,7 +1004,9 @@ class QueryContextProcessor: ) elif self._query_context.result_format == ChartDataResultFormat.XLSX: excel.apply_column_types(df, coltypes) - result = excel.df_to_excel(df, **current_app.config["EXCEL_EXPORT"]) + result = excel.df_to_excel( + df, index=include_index, **current_app.config["EXCEL_EXPORT"] + ) return result or "" return df.to_dict(orient="records") diff --git a/tests/unit_tests/common/test_query_context_processor.py b/tests/unit_tests/common/test_query_context_processor.py index 68c1e4b7ed1..a2edaddbd8e 100644 --- a/tests/unit_tests/common/test_query_context_processor.py +++ b/tests/unit_tests/common/test_query_context_processor.py @@ -85,7 +85,7 @@ def test_get_data_xlsx( result = processor.get_data(df, coltypes) assert result == b"binary data" mock_apply_column_types.assert_called_once_with(df, coltypes) - mock_df_to_excel.assert_called_once_with(df) + mock_df_to_excel.assert_called_once_with(df, index=False) def test_get_data_json(processor, mock_query_context): @@ -160,7 +160,7 @@ def test_get_data_empty_dataframe_xlsx( result = processor.get_data(df, coltypes) assert result == b"binary data empty" mock_apply_column_types.assert_called_once_with(df, coltypes) - mock_df_to_excel.assert_called_once_with(df) + mock_df_to_excel.assert_called_once_with(df, index=False) def test_get_data_nan_values_json(processor, mock_query_context):