帮助使数据表达式工作。

119
3.
跳到解决方案
一个月前
ChelseaTabor
通过
新贡献者III

我正在写一个数据表达式来显示每个点(泄漏)所在的多边形(mmz)。我还需要保留一些来自泄漏特性的字段。我可以填充“mmz”字段,但我有麻烦得到我需要的其他字段。以下是我目前的想法和结果:

var port = Portal('my Portal ')
var mmz = FeatureSetByPortalItem(port, 'c879aa9267604224a3f6d492fc997a50', 7,['ZONE_NAME'],true)
var leaks = FeatureSetByPortalItem(port, '44fa0f9330e449c289dfadf2553d805b', 0,['leakloss','leaktype',' datshot ','leaks_count','material','maindiameter'],true)

Var特征= []
var的壮举

For (var zone in mmz){
var pts = Contains(zone,leaks)
For (var pt in pts){
专长={属性:{
mmz: zone ['ZONE_NAME'],
漏损:pt['漏损'],
泄漏类型:pt['泄漏类型'],
日期记录:pt['日期记录'],
漏计数:pt['漏计数'],
Material: pt [' Material '],
Maindiameter: pt [' Maindiameter ']


推动(特性,壮举)

Var dict = {
字段:[
{名称:“mmz”,别名:“Zone”,类型:“esriFieldTypeString”},
{名称:“leakloss”,别名:“加仑丢失”,类型:“esriFieldTypeInteger”},
{name: "leaks_count", alias:" Leaks Number ", type:"esriFieldTypeInteger"},
{name: "泄漏类型",alias:"泄漏类型",Type:"esriFieldTypeString"},
{name: " datshot ", alias:"Date", type:"esriFieldTypeDate"},
{name: "material", alias:" material", type:"esriFieldTypeString"},
{name: "maindiameter", alias:"Diameter", type:"esriFieldTypeInteger"},
),
geometryType:“”,
特点:功能

返回FeatureSet(文本(dict))

结果:

chelseatabor_0 - 1671118894004. - png

标签(3)
0荣誉
1解决方案

接受的解决方案
jcarlson
通过 MVP荣誉贡献者
MVP荣誉贡献者

我真的不觉得这个表达有什么明显的错误……您已经确认了点层中的字段有值,并且它们与整数字段兼容?

数据表达式也有问题日期字段。试着替换这一行:

日期记录:pt['日期记录'],

用这个:

dateshot:数字(pt [' dateshot ']),

还有,中间有空间区域/ pt括号中的属性名,不应该有。

——乔什·卡尔森
肯德尔县GIS

在原帖子中查看解决方案

3回复
jcarlson
通过 MVP荣誉贡献者
MVP荣誉贡献者

我真的不觉得这个表达有什么明显的错误……您已经确认了点层中的字段有值,并且它们与整数字段兼容?

数据表达式也有问题日期字段。试着替换这一行:

日期记录:pt['日期记录'],

用这个:

dateshot:数字(pt [' dateshot ']),

还有,中间有空间区域/ pt括号中的属性名,不应该有。

——乔什·卡尔森
肯德尔县GIS
ChelseaTabor
通过
新贡献者III

将Number函数添加到日期字段可以工作,但我还必须将Text函数添加到字符串字段类型,以便显示这些值。

谢谢你的帮助。

0荣誉
JohannesLindner
常规赛MVP

我还必须将Text函数添加到字符串字段类型,以便显示这些值

真奇怪,这种转化应该是自动发生的。

Date字段的问题经常会导致混乱。请考虑支持这个想法,希望能解决这个问题:

//www.gobook3.com/t5/arcgis-online-ideas/arcade-allow-date-values-in-date-fields/idi-p/1204..。


祝你有愉快的一天!
约翰内斯
0荣誉