前へ 次へ

タスク 3:  カウンターの条件付きインクリメント

名前にストリング Mini が含まれる顧客の数をカウントするには、それぞれの顧客の名前を調べて、それが出現するごとにカウンターに 1 を加算します。データ・ソースからデータ行を取得するごとに実行される Row.onCreate メソッドでこのタスクを実行するのが合理的です。

1  
2  

図 22-8 「スクリプト」ウィンドウの onCreate( )

図 22-8  スクリプト・ウィンドウでの onCreate( )
3  
myrow=this.getRowData( );
この後にピリオドを入力すると、getRowData を含む、使用可能なすべてのメソッドとプロパティーが入ったポップアップが表示されます。このコード行では、メソッド getExpressionValue( ) を持つ IRowData のインスタンスを取得し、その行の列の内容を取得します。
4  
ステップ 3 で入力した行の下に、以下の JavaScript 行を入力します。
CustName=myrow.getExpressionValue( "row[CUSTOMERNAME]" );
このコード行では、データ・セット内の CUSTOMERNAME 列からのテーブル列の内容が戻されます。
5  
if( CustName.indexOf( "Mini" ) != -1 ) countOfMinis += 1;
JavaScript パレットを使用し、上記の行に以下の各要素を挿入できます。
*
「ネイティブ JavaScript 関数」「String 関数」「indexOf( )」を選択します。
*
「演算子」「比較」「!=」を選択します。
*
「演算子」「代入」「+=」を選択します。
6  

(c) Copyright Actuate Corporation 2013