BIRT набор данных jdbc.динамическое извлечение максимальной строки - PullRequest
0 голосов
/ 05 января 2011

Отчет BIRT может ограничивать максимальный размер выборки строки набора данных jdbc в настройках набора данных. Это введенное вручную целое число. Я ищу способ динамически передать его из ReportParameter в набор данных jdbc, чтобы ограничить количество извлекаемых строк.

Я предпочитаю делать это, например. в обработчике beforeOpen () с JavaScript, поскольку установка предела непосредственно в SQL зависит от СУБД, и я хочу, чтобы отчет выполнялся на нескольких СУБД (Oracle, MySQL, DB2, Sybase, ...)

1 Ответ

2 голосов
/ 06 января 2011

В хуке beforeFactory():

reportContext.getReportRunnable().designHandle.getDesignHandle().findDataSet("Data Set").setRowFetchLimit(params["my_limit"].value);

Обычно многие функции beforeFactory () начинаются с reportContext.getReportRunnable().designHandle.getDesignHandle().Здесь вы можете найти любой элемент отчета или даже обойти все элементы, если это необходимо.

Когда вы find() элемент, в справке ctrl + space не все методы перечислены.Дополнительные сведения содержат справку Eclipse: Справочник программиста BIRT -> Справка -> Справочник по API -> Справочник по API объектной модели отчета .Класс Модульный дескриптор - хорошее место для начала.

Я не уверен, есть ли более короткая цепочка точек для доступа к дескриптору дизайна отчета.Если так, пожалуйста, поправьте меня.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...