Предыдущая дата в параметре отчета в дизайнере отчетов Pentaho

Мне нужен параметр Report_date в дизайнере отчетов Pentaho. Использование базы данных SQL SERVER

  1. когда пользователь выбирает Report_date в запросе, я хочу получить данные предыдущей даты из выбранной даты. (формат даты yyyy-MM-dd) например, пользователь выбирает '2017-11-08', мне нужны данные от '2017-11-07'. 2. Во втором мне нужны данные с первого дня месяца до '2017-11-07', то есть с 2017-11-01 'до' 2017-11-07 '

столбец вывода моего запроса будет содержать поле даты также в дизайнере отчетов, а дата - это тип данных VARCHAR в таблице


person Khokae    schedule 08.11.2017    source источник
comment
Предыдущая дата означает дату из предыдущей строки той же таблицы, упорядоченную по некоторым столбцам. Вы спрашиваете об этом или, как следует из вашего примера, все, что вам нужно, это dateadd (день, -1, выбранная дата), т.е. за день до выбранной даты?   -  person sepupic    schedule 08.11.2017
comment
@ sepupic .. да, из той же таблицы, я буду выбирать дату для предыдущего дня, то есть минус 1 день из таблицы .. но мне нужно сделать в параметре в pentaho, и моя дата находится в формате Varchar, я сказал   -  person Khokae    schedule 08.11.2017
comment
Если вы просто хотите рассчитать предыдущий день, вам не нужна таблица. Может ли ваш Pentaho отправлять запросы T-SQL на сервер для получения значений параметров? SSRS, например, имеет возможность получать значения из запроса, я думаю, ваш Pentaho делает то же самое, поэтому все, что вам нужно, это просто исправить свой запрос, в котором вы извлекаете свою дату   -  person sepupic    schedule 08.11.2017


Ответы (1)


Я сделал это, передав параметр в дизайнере отчетов, и я написал такой запрос, так как главное, чтобы моя дата была в varchar, также содержащем NUll, поэтому при простом преобразовании это вызывало ошибку для преобразования. Я сделал - "выберите date_1 из xyz, где satrndd в (выберите подстроку (convert (char (15), dateadd (day, -1, convert (datetime, $ {date_1})), 120), 1,11) как date_1 из xyz где date_1! = 'NULL') ";

person Khokae    schedule 08.11.2017