Задача
Решение
Генерировать SQL-запрос, используемый для построения DataSet-а, динамически, в зависимости от значений параметров отчета.
Решение
Создаем DataSet, указываем у него пустой SQL. Идем в его advanced-свойства, находим там "Before open". Здесь можно писать произвольный JS-скрипт. Сгенерированный SQL необходимо записать в свойство this.queryText:
К параметрам отчета можно обращаться через params["myparam"].value. Если параметры отчета напрямую попадают в текст SQL, нужно не забыть их проэкранировать, чтобы избежать SQL-инъекций. В окне редактирования DataSet'а необходимо описать выходные колонки, которые будет выдавать сгенерированный скриптом SQL. Этот SQL может содержать параметры, тогда их нужно описать также, как это делается для статического SQL, в том же окне редактирования DataSet'а.
Комментариев нет:
Отправить комментарий