Как передать несколько вариантов выбора строки из инструмента создания отчетов в DB2 в качестве параметра? - PullRequest
0 голосов
/ 21 мая 2019

Я пытаюсь запустить отчет с использованием SQL в произвольной форме в Microstrategy с использованием хранимых процедур. Это включает передачу ответов на приглашение или выбор из инструмента отчетности в базу данных DB2 с использованием параметров. Я смог выполнить эту операцию для чисели строка для одного выбора.

При передаче элементов с несколькими вариантами выбора DB2 требует ввода в виде Call SP1 ('CN1, LA1') или Call SP1 (“CN1”, ”LA1”) , где CN1 и LA1 - параметры, которые должны передаваться от конца MSTR в качестве подсказок.

В MSTR, если мы передаем подсказки, он разрешается как Call SP1 (''CN1 ',' LA1 '') или вызов SP1 ("CN1", "LA1").MSTR передает быстрый ответ в одинарных кавычках, который не принимается DB2.Причина, по которой MSTR разрешает запросы как таковые, заключается в том, что CN1 и LA1 являются текстом, а не числами.Мы попробовали описанные ниже подходы, но не смогли найти способ удалить дополнительные одинарные кавычки из строки.

  1. Мы пытались использовать функцию Replace для замены одинарных кавычек с помощью escape-символов при передачепараметры в приглашениях, использующие функцию сквозного прохода ApplySimple, но у нас это не сработало.
  2. Мы также пытались использовать сквозную функцию на уровне атрибутов, но при разрешении приглашения значения были заключены в одинарные кавычки, что также не помогло.
  3. Мы также пытались добавить кавычки при передаче параметров, как указано ниже: Call SP1 ('Prompt1'), но в MSTR этот синтаксис был разрешен как Call SP1 ('' CN1 ',' LA1 ''), которыйбыло неприемлемо для DB2.
  4. Мы также пытались объединить одинарные кавычки на уровне атрибутов, чтобы получить выходные данные как SP1 ("CN1", "LA1"), но мы не смогли получить то же самое.
  5. Мы попытались изменить тип данных и псевдоним столбца атрибута на Number, это работало в Developer, но в сети выдавало ошибку.

Iпросто нужно, чтобы выбор строки был как-то передан в базу данных.Мы можем разрешить и разделить выборки в DB2.Проблема заключается в передаче подсказки в базу данных.

...