首页 / 浏览问题 / 云GIS / 问题详情
查询数据集数据显示不全
185EXP 2018年09月05日

版本用的Iserver8C的版本,web端查询语句如下:

getFeatureParam = new SuperMap.REST.FilterParameter({
name: "Road_Peo",
attributeFilter: "1=1"
});
getFeatureBySQLParams = new SuperMap.REST.GetFeaturesBySQLParameters({
queryParameter: getFeatureParam,
datasetNames:["SUPERMAPXWGH:Road_Peo"],
toIndex:-1
});

之前遇到这个问题是加上了toIndex:-1,好了一段时间,又出现了这个问题,然后再本机电脑上测试的数据能查询出来完,下图是本机iserver版本:这个是没有问题的,有问题的iserver版本:这个版本是不数据Linux上的

1个回答

您好,您这个是不是进行了8C升9D的操作,如果是的话需要修改iserver-services.xml中的maxFeatures和queryExpectCount
5,668EXP 2018年09月05日
没有升级9D,一直用的8C的,8C的iserver-services.xml中对这俩参数有要求么?
您可以先对这两个参数进行更改,因为您这种情况应该是正确的进行查询但是查询结果没有全部显示的情况,更改这两个参数应该可以修正这个问题。可以把maxFeatures的值设定的高于查询所得的值,或者作为对比可以先将这两个值修改为高于现在所能查询到的数值但低于应得的数值,可以看看这种情况下查询到的结果有没有变成现在的maxFeatures的值。
刚才输出了一下查询结果的数量,是1000个,而我们的xml文件中<queryExpectCount>1000</queryExpectCount>  这个参数全是1000;

我们在发布服务的时候能修改这个参数么?xml文件中没有找到maxFeatures这个参数的设置;

如果不要<queryExpectCount>1000</queryExpectCount>这个参数,或者把这一行去掉,对服务有什么影响么?
还有我们之前这一块的默认的也是1000,就可以查询出来完
您在那个xml里Ctrl+F搜索一下maxFeatures就出来了,可以用sublime这种软件修改它

maxFeatures确实没有,

queryExpectCount这个是有的

那您就把queryExpectCount设置为更大的数值,然后在前端写的时候写上maxFeatures这个属性
queryExpectCount这个值可以修,但是能不能在发布服务的时候就把这个值改变了?如果是只能从xml中去修改的话我们还要重启服务;
您可以先把前端的maxFeatures设置上,如果可以解决问题的话就不用停止服务修改xml文件了,如果不行的话就需要停止服务然后修改xml了
iclient8C的API中没有找到加maxFeatures在哪里设置,我是把他加在了

getFeatureParam = new SuperMap.REST.FilterParameter({
name: "Road_Peo",
attributeFilter: "1=1",
//maxFeatures:200000
});
getFeatureBySQLParams = new SuperMap.REST.GetFeaturesBySQLParameters({
queryParameter: getFeatureParam,
datasetNames:["SUPERMAPXWGH:Road_Peo"],
toIndex:-1,
//maxFeatures:200000
});

这两个地方,但是没有反应
在SuperMap.REST.GetFeaturesParametersBase这个里面,写的话也是写在toIndex同级的里面,如果没有反应的话就得停止服务修改xml了
修改XML还要重启服务,能不能在发布服务的时候就把这个参数修改了?不同的服务中的数据量还不同
这个没办法在发布服务的时候修改这个参数的
能帮我们升级一下版本么?我在本机上用到的iserver版本是不存在这个问题的,Linux服务器上的版本存在这个问题。
xml文件中的参数修改了  没反应  还是返回1000条。稍后我会打客服电话,应该是版本中的类库版本过低。
...