2017-10-12 11 views
0

Jaspersoft의 iReport 및 icinga의 데이터를 사용하여 모니터링 보고서를 생성합니다. ireport에서 필자는 필요한 데이터를 얻기 위해 쿼리를 입력해야합니다. 이제, (모니터링 된 객체의) 이름과 해당 서비스의 해당 가용성을 얻고 싶습니다. 이를 위해 icinga는 function을 제공하며 object_id, 시작 날짜 및 종료 날짜를 매개 변수로 사용합니다. 예 :변수 매개 변수가있는 MySQL 함수

select icinga_availability(203, '2017-09-01 00:00:00','2017-09-30 23:59:59'), name1 from icinga_objects where object_id = '203'; 

iReport의 경우 필요한 모든 개체를 하나의 쿼리로 가져와야합니다. 예를 들어, 객체 번호 131, 258, 101, 465가 필요합니다.

변수/와일드 카드 또는 여러 object_ids를 함수에 전달할 수 있습니까? 나는 아직 그것을 관리 할 수 ​​없었다.

도움 주셔서 감사합니다.

답변

0

iReport는 더 이상 공식적으로 지원되지 않으므로 Jaspersoft Studio로 전환하는 것이 가장 좋습니다. 보고서를 실행할 때, 당신을 이렇게

<parameter name="obejct_id" class="java.lang.Integer"/> 

: 그것은 JSS에서 작동하는 방법

그래서 난 단지 말할 수있는,하지만 너무 iReport로 작동한다 :

select icinga_availability($P{obejct_id} , '2017-09-01 00:00:00','2017-09-30 23:59:59'), name1 from icinga_objects where object_id = to_char($P{obejct_id}); 

을 정수-매개 변수를 사용하여 보려는 object_id를 입력 할 수 있습니다.

+0

감사합니다. 시험해 보겠습니다. – gheist