У меня есть рабочая книга с несколькими запросами. В общем, есть два источника - файл .xlsx и куб. Я пытаюсь объединить данные из этих источников с помощью PowerQuery. Сначала я создал макет с коротким объемом данных (с дополнительным фильтром для запроса куба и небольшим xlsx), и он отлично работает. Затем я удалил фильтры из запроса ssas и связал .xlsx-запрос с большим файлом данных. Индивидуальный запрос ssas завершается примерно за 20 секунд c, и журнал трассировки показывает соответствующее время начала и окончания выполнения, и никаких ошибок не происходит. Индивидуальный запрос .xlsx выполняется примерно за 5 минут. Когда Excel обновляет целевой запрос (с объединением двух запросов выше), я получаю предупреждение
[DataSource.Error] AnalysisServices: The connection either timed out or was lost.
Журнал трассировки показывает мне, что время выполнения ssas-запроса непрерывно около 3 минут, после чего я вижу запись
The connection timeout was exceeded. Operation cancelled.
Похоже, что xlsx-запрос не позволяет выполнить ssas-запрос до тех пор, пока xlsx-запрос не будет завершен, сервер SSAS оценивает это как ошибочное и закрывает соединение. Я пытался изменить параметры сервера SSAS ExternalCommandTimeout , ExternalConnectionTimeout и ConnectionTimeout флаг в параметрах запроса, но это не дало мне никакого результата.
= AnalysisServices.Database("srvname", "cubename", [Query="Evaluate ...", Implementation="2.0", ConnectionTimeout=#duration(0,0,5,0)])
Есть идеи, как решить эту проблему?