Команда SQL из переменной для источника SSIS MDX OLEDB - PullRequest
0 голосов
/ 30 января 2019

У меня возникли некоторые проблемы с источником запросов MDX в потоке данных служб SSIS.

Если я правильно настрою источник OLEDB и у меня будет режим доступа к данным в качестве команды SQL, запрос MDX будет работать.

Мне нужно, чтобы этот источник был параметризован, поэтому я пытаюсь передать переменную, которая заполняется во время выполнения, как запрос источника MDX.

Проблема заключается в том, когда я настраиваю это, он попытается использовать переменную (которая не верна до времени выполнения) и выдаст эту ошибку.

В чем заключается хитрость, чтобы заставить источник MDX работать из переменной?

Я построилвсе последующие преобразования после первой настройки источника с помощью жестко закодированного запроса (команда SQL).Затем я вернулся, чтобы изменить источник, чтобы использовать переменную, и она сломалась.

Спасибо за любой ввод.

TITLE: Microsoft Visual Studio
------------------------------

The component reported the following warnings:

Error at DFT SSAS to SQL [SRC SSASPRP01 Cube [2]]: No column information was returned by the SQL command.


Choose OK if you want to continue with the operation.
Choose Cancel if you want to stop the operation.

------------------------------
BUTTONS:

OK
Cancel
------------------------------

Ответы [ 2 ]

0 голосов
/ 31 января 2019

Вы хотите параметризованный запрос и хотели бы создать строковую переменную с запросом.В любом случае, ваш пакет должен быть проверен перед запуском.Итак, здесь у вас есть две опции:

  • Если ваша переменная запроса заполняется во время выполнения и не имеет выражений, вы можете указать значение этой переменной с действительным запросом MDX.Пакет и ваша задача DataFlow будут проверены перед выполнением (обычный процесс) с этим запросом и передачей по умолчанию, а во время выполнения - используйте правильный запрос MDX.
  • Можно установить для свойства DelayValidation задачи DataFlow значение true .Затем он будет проверен непосредственно перед запуском, когда ваша переменная будет содержать действительный запрос MDX.

Я бы предпочел второй метод как более общий.

0 голосов
/ 30 января 2019

Set Delay Validation = True.Проверка задержки - это свойство, доступное для всех компонентов служб SSIS, и оно в основном удерживает проверку обратно до освобождения.В основном, когда мы устанавливаем соединения или другие компоненты с помощью переменных, это помогает.Поскольку переменные не имеют истинного свойства во время выполнения.

...