여러 개의 값을 허용하는 목록 상자 매개 변수가 있습니다. 매개 변수는 값 열에 대해 INTEGER를 선택하고 표시 텍스트에 STRING을 선택합니다.DisplayTest가 해당 값으로 null을 보냈습니다.
이 목록의 모든 값을 보고서에 인쇄하고 싶습니다.
내가 시도 :
"Selected param(s) :" + params["param"].displayText.join(",");
을하지만 해당 DisplayText가 null 반환 ... 난 이유를 모르겠어!
var paramCount = params["param"].value.length;
var param= parseInt(params["param"].value);
for(i=0; i < paramCount; i++){
if(param== row["param"]){
row["paramText"];
}
}
나는 내가 PARAM을 구축하는 데 사용되는 쿼리를 사용 :
그래서 나는 목록을 사용했습니다. 따라서 행 [ "paramText"]은 STRING의 값이고 params [ "param"]는 INTEGER의 값입니다.내 값이 : [Ljava.lang.Object;@6c8a3a0
과 같은 개체를 인쇄하기 때문에 parseInt를 추가했습니다. parseInt를 사용해도 ... 값을 int로 변환하지 않고 NaN을 출력합니다. . 내 해당 DisplayText은 내가 널 보내거나 내 PARAMS는 [ "PARAM은"] 값은 객체를 반환 왜 필요한 경우
(그리고 그것은 doen't 변환 할) 이유
난 그냥 알고 있어야합니다 : 난 BIRT를 사용하여 3.7.1
감사
해결책을 제공해 주시겠습니까? 해당 포럼에 등록하는 데 문제가 있습니다 ... 비슷한 문제가 있습니다. – Hawk
필자는 내가 사용한 작업장을 정확하게 다시 말하지 않습니다. 그러나 보고서에서 http://developer.actuate.com/community/forum/index.php?/topic/19869-displaying-label-of-dynamic-parameter-list-box-in-report/에 다운로드합니다. 데이터 세트의 "onFetch"메소드에서 데이터 세트의 한 단어를 대체하는 메소드를 발견했습니다. 다음을 참조하십시오. (mwilliam에 대한 크레딧 : http://developer.actuate.com/community/forum/index.php?/user/3879-mwilliams/) : if (custList.indexOf (row [ "CUSTOMERNUMBER"]. toString())! = null) { custList = custList.replace (row [ "CUSTOMERNUMBER"]. toString(), row [ "CUSTOMERNAME"]); } – Bob