Result (arcpy)

Резюме

Инструменты геообработки возвращают объект Result.

Обсуждение

Преимущество объекта Result в том, что вы можете управлять информацией о выполнении инструментов, включая сообщения, параметры и выходные данные. Эти результаты могут быть доступны даже после того, как были выполнены несколько других инструментов.

Синтаксис

Result (toolname, resultID)
ПараметрОбъяснениеТип данных
toolname

Имя выполненного инструмента.

String
resultID

ID задания.

Integer

Свойства

СвойствоОбъяснениеТип данных
inputCount
(только чтение)

Возвращает количество входных данных.

Integer
maxSeverity
(только чтение)

Возвращает максимальную степень серьезности сообщений.

  • 0Создает ли инструмент только информационные сообщения.
  • 1 Если инструмент создал предупреждение, но без сообщений об ошибках.
  • 2 Если инструмент создал сообщение об ошибке.
Integer
messageCount
(только чтение)

Возвращает количество сообщений.

Integer
outputCount
(только чтение)

Возвращает количество выходных данных.

Integer
resultID
(только чтение)

Получает ИД задания. Если инструмент не является сервисом геообработки resultID будет иметь вид "".

String
status
(только чтение)

Получает статус задания.

  • 0Создать
  • 1Подтверждено
  • 2Ожидание
  • 3Запуск
  • 4Выполнено удачно
  • 5Ошибка
  • 6Время истекло
  • 7Отмена
  • 8Отменено
  • 9Удаление
  • 10Удалено
Integer

Обзор метода

МетодОбъяснение
cancel ()

Отменяет связанное задание

getInput (index)

Возвращает исходный ввод либо как набор записей, либо как строку.

getMapImageURL ({parameter_list}, {height}, {width}, {resolution})

Получил изображение картографического сервиса для данного вывода, если таковое существует.

getMessage (index)

Возвращает определенное сообщение.

getMessages ({severity})

Возвращает сообщения.

getOutput (index)

Возвращает данный выход либо как набор записей, либо как строку.

Если выходные данные инструмента, такого как MakeFeatureLayer представляют собой слой, то getOutput возвращает объект Layer.

getSeverity (index)

Возвращает важность указанного сообщения.

Методы

cancel ()
getInput (index)
ПараметрОбъяснениеТип данных
index

Значение индекса входных данных.

Integer
Возвращено значение
Тип данныхОбъяснение
Object

Входные данные в виде набора записей или строки.

getMapImageURL ({parameter_list}, {height}, {width}, {resolution})
ПараметрОбъяснениеТип данных
parameter_list

Параметры, на которых основывается изображение картографического сервиса.

Integer
height

Высота изображения.

Double
width

Ширина изображения.

Double
resolution

Разрешение изображения.

Double
Возвращено значение
Тип данныхОбъяснение
String

URL изображения карты.

getMessage (index)
ПараметрОбъяснениеТип данных
index

Значение индекса сообщения.

Integer
Возвращено значение
Тип данныхОбъяснение
String

Сообщение геообработки.

getMessages ({severity})
ПараметрОбъяснениеТип данных
severity

Тип возвращаемых сообщений: 0=сообщение, 1=предупреждение, 2=ошибка. Если значение не задано, возвращаются сообщения всех типов.

  • 0информационное сообщение
  • 1сообщение с предупреждением
  • 2сообщение об ошибке

(Значение по умолчанию — 0)

Integer
Возвращено значение
Тип данныхОбъяснение
String

Сообщения геообработки.

getOutput (index)
ПараметрОбъяснениеТип данных
index

Значение индекса выходных данных.

Integer
Возвращено значение
Тип данныхОбъяснение
Object

Выходные данные в виде набора записей или строки.

Если выходные данные инструмента, такого как MakeFeatureLayer представляют собой слой, то getOutput возвращает объект Layer.

getSeverity (index)
ПараметрОбъяснениеТип данных
index

Значение индекса сообщения.

Integer
Возвращено значение
Тип данныхОбъяснение
Integer

Степень серьезности указанного сообщения.

  • 0информационное сообщение
  • 1сообщение с предупреждением
  • 2сообщение об ошибке

Пример кода

Result пример 1

Использует объект result, возвращенный из GetCount, чтобы определить счет таблицы.

import arcpy
inTable = arcpy.GetParameterAsText(0)
result = arcpy.GetCount_management(inTable)
print result.getOutput(0)
Result пример 2

Получить схему набора объектов из инструмента сервера, загрузить данные в набор объектов, передать набор объектов инструменту сервера и проверить объект result. После завершения сохранить результат в местный набор данных.

import arcpy
import time  

# Add a toolbox from a server 
#
arcpy.ImportToolbox("http://myserver/arcgis/services;GP/BufferByVal", "server") 

# Use GetParameterValue to get a featureset object with the default
#   schema of the first parameter of the tool 'bufferpoints' 
#
inFeatureSet = arcpy.GetParameterValue("bufferpoints", 0) 

# Load a shapefile into the featureset 
#
inFeatureSet.load("C:/Data/roads.shp") 

# Run a server tool named BufferPoints with featureset created above 
# 
result = arcpy.BufferPoints_server(inFeatureSet, "500 feet") 

# Check the status of the result object every 0.2 seconds 
#    until it has a value of 4(succeeded) or greater 
# 
while result.status < 4:
    time.sleep(0.2)
 
# Get the output FeatureSet back from the server and save to a local geodatabase 
# 
outFeatSet = result.getOutput(0)
outFeatSet.save("C:/Temp/Base.gdb/roads_buffer")
Result пример 3

Восстановить начальный выход сервиса геообработки, используя имя инструмента и id результата.

import arcpy

# Add the toolbox from the server
#
arcpy.ImportToolbox("http://myserver/arcgis/services;GP/BufferByVal")

# Recreate the original output using the tool name and result id
#
result_id = 'jfea96e13ba7b443cb04ba47c19899a1b'
result = arcpy.Result("BufferPoints", result_id)

Связанные темы

9/10/2013