2012-04-20 67 views
1

我是智能gwt的新蜂。 基本上我有我的数据结构为:如何在Smart gwt的ListGrid中将列显示为行?

一个
| _____ B1

|__C1 
    |__C2 
    |__C3 

| _ B2

dataStructure 所以我创建了我ListGridRecord如下:

公众class VEPAreaRecord扩展ListGridRecord {

public VEPAreaRecord(){ 

} 


/** 
* @param vepAreaName 
* @param checkStations 
*/ 
public VEPAreaRecord(String vepAreaName, String[] checkStations) { 
    setVepAreaName(vepAreaName); 
    setCheckStations(checkStations); 
} 


/** 
* @return the vepAreaName 
*/ 
public final String getVepAreaName() { 
    return getAttribute("vepAreaName"); 
} 
/** 
* @param vepAreaName the vepAreaName to set 
*/ 
public final void setVepAreaName(String vepAreaName) { 
    setAttribute("vepAreaName",vepAreaName); 
} 
/** 
* @return the checkStations 
*/ 
public final String[] getCheckStations() { 
    return getAttributeAsStringArray("checkStations"); 
} 
/** 
* @param checkStations the checkStations to set 
*/ 
public final void setCheckStations(String[] checkStations) { 
    setAttribute("checkStations",checkStations); 
} 

}

但在我ListGrid我想TP显示我的数据

区域1区域2 Area3中

检查1 CHECK2 chek3

check4

check5

所以基本上我想要的是显示我的行作为列,反之亦然。但我不知道如何实现这一目标。或者是否有其他组件需要处理?

回答

0

是CubeGrid可用于来自Isomorphic的Power和Enterprise许可证持有者。查看CubeGrid和Facets类并查看smartgwt页面上的展示案例。

http://www.smartclient.com/smartgwtee/showcase/#cube_analytics并遵循示例。

如果你只是能够使用ListGrid你可以通过遍历记录实现相同的事情。如果你能够使用一个数据库,你可以输入customSQL

如:

<operationBindings> 
<operationBinding operationType="fetch" operationId="VEP_AREA_RECORD"> 

<customSQL> 

SELECT * FROM (SELECT SUBSTRING(MeasurementTime,7,4) [Year], CASE SUBSTRING(Time,1,2) WHEN '01' THEN 'Jan' WHEN '02' THEN 'Feb' WHEN '03' THEN 'Mar' WHEN '04' THEN 'Apr' WHEN '05' THEN 'May' WHEN '06' THEN 'Jun' WHEN '07' THEN 'Jul' WHEN '08' THEN 'Aug' WHEN '09' THEN 'Sep' WHEN '10' THEN 'Oct' WHEN '11' THEN 'Nov' WHEN '12'THEN 'Dec' END as [Month],  [value] , [col1] as col1, 
    col1 [col1_name], col2 [col2_name], col3 [col3], [col4_name] FROM your_table WHERE MeasurementValue IS NOT NULL) TableDate PIVOT <what you want in rows> FOR [Month] IN (
    [Jan],[Feb],[Mar],[Apr], 
    [May],[Jun],[Jul],[Aug], 
    [Sep],[Oct],[Nov],[Dec] 
) 
) AS PivotTable 
ORDER BY groupCol1, groupCol2 

</customSQL> 

清楚这些列可以在您的记录/ db或衍生的(在我的情况下,从的DateField得到的实际值我。因此,如果有更好的办法,我很乐意听到它。

在上面exmple

      [jan] [feb] [mar] etc.....in your case 

[col1_valA] [col2_val1] valx valy 
[col1_valB] [col2_val2 
+0

嗨, 我们没有使用SQL数据库的输出将是“不是个SQL大师。我们都没有使用Smart GWT EE :-(所以我们不能实现你的两个解决方案。 – Madhura 2012-04-23 07:10:45