我有一個(半)基礎數據立方體建立與國家和地區的級聯參數。狀態選擇框與區域一樣直線前進;當用戶選擇一個狀態時,區域選項會相應地設置。然而,對於區域的值是將被髮送到將同時使用PARAMS(國家和字符串從區域列表)幾個時間mysql的select語句字符串的一個長長的清單。它是一個醜陋的UNION大集合。我的問題是之前的開始和查詢時間之間的某處。BIRT之前打開值列表PARAMS錯誤
//beforeOpen script...LState & LAreas the name of the report param
this.queryText = this.queryText.replace('stateList', params["LStates"].value);
this.queryText = this.queryText.replace('areaList', params["LAreas"].value);
In my mysql statement I use them in the following way:
SELECT ..XXX..
FROM ..XXX..
WHERE ..XXX..
State.State_Location in ('stateList')
AND Range_Locator.Range in ('areaList')
UNION ALL
SELECT ..XXX..
FROM ..XXX..
WHERE ..XXX..
State.State_Location in ('stateList')
AND Range_Locator.Range in ('areaList')
兩個錯誤,我從BIRT得到的是:
(很明顯)
- 無法獲得結果集。 org.eclipse .... SQL語句不會返回ResultSet對象。
(不那麼明顯,我)
- 一個BIRT出現異常。評估Javascript表達式時出錯。腳本引擎錯誤:找不到方法java.lang.String.replace(string.java.lang.Object [])。 有錯誤評估腳本 「this.queryText = this.queryText.replace( 'stateList',則params [」 LStates 「]值。); this.queryText = this.queryText.replace( 'areaList',則params [」 LAreas」 ]。值);」
任何想法?任何幫助將不勝感激。
這救了我:join(「','」)); –