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)

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

saveToFile (rlt_file)

Сохраняет результат в файл результата (.rlt).

Методы

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.

Результирующие выходные данные также могут быть доступны с помощью индекса, так что методы result.getOutput(0) и result[0] эквивалентны.

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

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

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

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

  • 0информационное сообщение
  • 1сообщение с предупреждением
  • 2сообщение об ошибке
saveToFile (rlt_file)
ПараметрОбъяснениеТип данных
rlt_file

Полный путь к выходному файлу результата (.rlt).

String

Пример кода

Result пример 1

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

import arcpy

in_table = arcpy.GetParameterAsText(0)
result = arcpy.GetCount_management(in_table)
print result[0]
Result пример 2

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

import time
import arcpy

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

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

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

# Run a server tool named BufferPoints with featureset created above
result = arcpy.BufferPoints_server(in_featureset, "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
out_featureset = result.getOutput(0)
out_featureset.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)

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

5/10/2014