摘抄一些原文帮助的内容,便于阅读和理解。
值表
值表”是相交和合并以及许多其他工具中使用的多列表。下图显示了相交工具,其输入要素参数是包含两列的“值表”:要素和等级。
值表不可传输,其输入模式在服务编辑器 中将固定为常量值。
注意:记住固定为常量值这个,上一篇博文处我们也看到了,的确是固定的,你改变不了,不可以输入任意两个要素,而是固定好的,这个就有点搞笑了,个人认为这个不太合理了,没有人会对两个固定的数据做相交分析,这没有任何的意义。
上一篇博文的图如下:
注意看上图的就是常量值。
让我们看看我们发布地理服务的最原始的工具是个什么情况?
我们找到工具,然后右击,选择属性。
几个tab页面的情况如下:
![](https://i-blog.csdnimg.cn/blog_migrate/94d54a32d5e966531ed012032fce9d2d.png)
![](https://i-blog.csdnimg.cn/blog_migrate/731039c41e4b865edf36d36a7777b63f.png)
![](https://i-blog.csdnimg.cn/blog_migrate/1442e5a2228472c00a336e76b1e39b5b.png)
![](https://i-blog.csdnimg.cn/blog_migrate/77d5dada4f92cb65ab39fd9240f2d4d9.png)
![](https://i-blog.csdnimg.cn/blog_migrate/db11542b5779618e8a4715a26ee03201.png)
从参数tab 图中我们可以看到,参数 输入要素 的数据类型是 值表,如果你这个地方这么设置,那么发布出来的服务就是固定的,是个不可以更改的,意义不大。
那么如何修改,以达到用户自定义输入要素参与分析的目的呢?
帮助文件给我们是这样说的。
如果您需要客户端输入值而不是使用常量值,则需要修改模型或脚本,使其使用“值表”之外的其他数据类型。
“值表”可以具有任意数量的行,修改工具的方式取决于您希望客户端输入固定还是可变的行数。如果“值表”中的任何列包含数据集,则行数必须固定,因为各行需要其自己的参数以包含数据集。
下图显示了可在模型构建器中用来使两个要素类相交的方法,具有等级但没有显示“值表”。在“值表”中输入街道和公园变量时,模型构建器将自动创建这些变量。街道等级和公园等级变量的创建方法如下:
- 创建两个长整型独立变量。对其进行重命名并为其构建模型参数。
- 打开相交工具并单击等级列中的单元格,如下所示。可以从您创建的两个长整型变量中选择一个。
始终可以创建接受单个输入、在脚本中构建“值表”参数、然后调用工具的脚本工具。以下代码执行两个要素类的相交但没有使用“值表”参数。
这端python代码我们暂时不关注。
我们就需要关注的是:
如果您需要客户端输入值而不是使用常量值,则需要修改模型或脚本,使其使用“值表”之外的其他数据类型。
“值表”可以具有任意数量的行,修改工具的方式取决于您希望客户端输入固定还是可变的行数。如果“值表”中的任何列包含数据集,则行数必须固定,因为各行需要其自己的参数以包含数据集。
下图显示了可在模型构建器中用来使两个要素类相交的方法,具有等级但没有显示“值表”。在“值表”中输入街道和公园变量时,模型构建器将自动创建这些变量。街道等级和公园等级变量的创建方法如下:
- 创建两个长整型独立变量。对其进行重命名并为其构建模型参数。
- 打开相交工具并单击等级列中的单元格,如下所示。可以从您创建的两个长整型变量中选择一个。
后续的博文将实践以上思路。
再次奥。