之前做的专题图只是关联外表,并没有根据属性条件过滤数据,网上也没有更好的示例程序,自己捣鼓了几次iserver搞崩溃了,以下是搞成功的关键代码留存备用。
效果图:
//关联关系
var joinItem=new SuperMap.REST.JoinItem({
foreignTableName: "V_REGION_LAND",
joinFilter: "BBS_PARCEL.CADASTRALNO = V_REGION_LAND.CADASTRALNO ",
joinType: "INNERJOIN"
});
//单值样式
var themeUniqueIteme30 = new SuperMap.REST.ThemeUniqueItem({
unique:_disCode,//单值具体字段值
style: style1
});
themeUnique2 = new SuperMap.REST.ThemeUnique({
uniqueExpression: "V_REGION_LAND.FJBM",//单值对比字段
items: [themeUniqueIteme30],
defaultStyle: new SuperMap.REST.ServerStyle({
fillOpaqueRate:0,
fillForeColor: new SuperMap.REST.ServerColor(132, 164, 232),
lineColor: new SuperMap.REST.ServerColor(0,255,0),
lineWidth: 0.1
})
}),
//专题图参数对象
themeParameters = new SuperMap.REST.ThemeParameters({
themes: [themeUnique2],
displayFilters:["V_REGION_LAND.FJBM="+_disCode],//此处filter过滤有效---核心代码
dataSourceNames: ["grid_sysdb"],
datasetNames: ["BBS_PARCEL"],
joinItems:[joinItem]
}),