我想从数据集中获取值并将其拆分,并且我想从拆分字符串中设置行中的每个单元格的并行信息。有可能吗?
var aud=this.getRowData().getColumnValue("someString").toString().split(",");
for (var i=0;i<this.getRowData().getColumnCount();i++)
{
HERE I WANT TO SET SOMESTRING[0]
}
您的";表";需要足够的列来容纳所有值。
对于细节行中的每个单元格;动态文本";项目该值是一个Javascript表达式。使用这样的表达式:
getColValue(row, 1)
将每个单元格中的数字1替换为相应的列编号。
定义一个函数(在报告的初始化事件中(如下:
function getColValue(row, col) {
// Handle undefined, empty or null strings gracefully.
if (!row["someString"]) {
return null;
}
var aud=row["someString"].toString().split(",");
if (col <= aud.length) {
return aud[col-1];
} else {
return null;
}
}
您也可以将CCD_ 1传递给";动态文本";表达式,而不是在函数内部传递CCD_ 2并获取CCD_。
以类似的方式,您可以根据数据设置单元格的样式:使用项目的onCreate
事件(根据您想要做的事情,可以是单元格本身,也可以是单元格内的项目(并输入如下脚本:
styleCell(this, row, 1);
再次将数字1替换为相应的列编号。
然后可以将函数styleCell定义为(未经测试,但您明白了(:
function styleCell(item, row, col) {
var style = item.getStyle();
var cond = someFunction(row, col);
// The columns of row ^^^ can be accessed as row["ColName"] here
if (cond) {
style.backgroundColor = "yellow";
}
}