Instrução
No Portal for ArcGIS e no ArcGIS Online Map Viewer, a identificação automática de números ausentes em um intervalo pode agilizar o processo de detecção e correção de erros. Isso pode ser particularmente importante em grandes conjuntos de dados, onde a verificação manual seria impraticável.
Este artigo descreve o fluxo de trabalho para identificar um intervalo de números ausentes em um campo para uso em pop-ups, utilizando Arcade no Portal for ArcGIS e no ArcGIS Online Map Viewer. Neste exemplo, alguns números estão ausentes no intervalo de números (1 a 20) listado no campo TestNumber, conforme mostrado na imagem abaixo.
var range = [];
for (var i = 1; i <= 20; i++) {
Push(range, i);
}
var features = FeaturesetByName($map, "<layerName>", ["<fieldName>"]);
var testNumbers = [];
for (var f in features) {
if (!IsEmpty(f.TestNumber)) {
Push(testNumbers, Number(f.TestNumber));
}
}
if (Count(testNumbers) == 0) {
return "No test numbers available.";
}
testNumbers = Sort(testNumbers);
var missingNumbers = [];
for (var i in range) {
if (IndexOf(testNumbers, range[i]) == -1) {
Push(missingNumbers, range[i]);
}
}
var missingNumbersString = Concatenate(missingNumbers, ", ");
if (Count(missingNumbers) == 0) {
return "No missing test numbers within the range 1 to 20.";
} else {
return "Missing test numbers within the range 1 to 20: " + missingNumbersString;
}
O código abaixo mostra o exemplo do script de trabalho completo.
var range = [];
for (var i = 1; i <= 20; i++) {
Push(range, i);
}
var features = FeaturesetByName($map, "Pointsss", ["TestNumber"]);
var testNumbers = [];
for (var f in features) {
if (!IsEmpty(f.TestNumber)) {
Push(testNumbers, Number(f.TestNumber));
}
}
if (Count(testNumbers) == 0) {
return "No test numbers available.";
}
testNumbers = Sort(testNumbers);
var missingNumbers = [];
for (var i in range) {
if (IndexOf(testNumbers, range[i]) == -1) {
Push(missingNumbers, range[i]);
}
}
var missingNumbersString = Concatenate(missingNumbers, ", ");
if (Count(missingNumbers) == 0) {
return "No missing test numbers within the range 1 to 20.";
} else {
return "Missing test numbers within the range 1 to 20: " + missingNumbersString;
}
acima da expressão Arcade recém-criada.A imagem abaixo mostra os números ausentes listados de um intervalo especificado por meio de um pop-up.

ID do Artigo: 000032685
Obtenha ajuda de especialistas do ArcGIS
Comece a conversar agora