任务 3:有条件地使计数器递增 要计算其名称中包含字符串 Mini 的客户数,请检查每个客户的名称并在每次出现该字符串时使计数器加 1。适合于执行此任务的逻辑位置是 Row.onCreate 方法,这是因为每次从数据源检索数据行时都会执行此方法。 1 在“布局”中,选择“行”,然后选择“脚本”。 2 从“脚本”窗口顶部的可用脚本列表中选择 onCreate,如图 22-8 中所示。 图 22-8 脚本窗口中的 onCreate( ) 3 在脚本窗口中输入以下 JavaScript 代码行: myrow=this.getRowData( ); 请注意,在 this 后面输入句点时,将显示其中包含所有可用方法和属性(其中包括 getRowData)的弹出窗口。此行代码获取 IRowData 的实例,该实例有一个 getExpressionValue( ) 方法,用于获取行中某一列的内容。 4 在您在步骤 3 中输入的行下面,输入以下 JavaScript 代码行: CustName=myrow.getExpressionValue( "row[CUSTOMERNAME]" ); 此行代码返回数据集中 CUSTOMERNAME 列的表列内容。 5 输入以下代码行,以便使您在任务 2 中创建的计数器根据条件递增。 if( CustName.indexOf( "Mini" ) != -1 ) countOfMinis += 1; 可以使用 JavaScript 选用板在上一行中插入下列每个元素: indexOf( ) 选择本机 ( JavaScript ) 函数→字符串函数→indexOf( ) != 选择“运算符”→“比较”→!= += 选择“运算符”→赋值→+= 6 选择“预览”以再次运行该报告,从而验证以确保输入的代码不会导致任何错误。
要计算其名称中包含字符串 Mini 的客户数,请检查每个客户的名称并在每次出现该字符串时使计数器加 1。适合于执行此任务的逻辑位置是 Row.onCreate 方法,这是因为每次从数据源检索数据行时都会执行此方法。