При определении задачи геообработки, имеющей входные данные объекта или таблицы, одним из Режимов ввода, который можно выбрать в Редакторе сервиса (Service Editor) является Определяемое пользователем значение (User defined value). Когда режим ввода выбран, в разделе Схема (Schema) отображается список полей, их псевдонимов и типов, как показано ниже. Этот список полей аналогичен слою или таблице, которые использовались в качестве входных данных для инструмента, создавшего результат.
Кроме того, если выходные данные задачи являются классом пространственных объектов, слоем или таблицей, Редактор сервиса (Service Editor) отобразит схему выходных данных. Как и в случае с входными объектами и таблицами, схема для выходных данных наследуется от выходных данных, созданных инструментом.
Когда клиенты занимаются построением объектов или строк, чтобы отправить их задачи, они используют опубликованную схему. Необходимо удалить посторонние поля и предоставить документацию, чтобы клиенты понимали, какие поля и значения полей необходимы для задачи.
Скажем, Тип геометрии (Geometry Type) входных данных объектов считается частью схемы, поскольку поле Shape всегда включается во входные данных объекта, а его Тип поля (Field Type) всегда соответствует Типу геометрии (Geometry Type).
Удаление полей из схемы входных данных
Схему нельзя изменить в Редакторе сервиса (Service Editor). Необходимо изменить схему входного слоя или набора данных, использовавшихся для создания публикуемого результата, или использовать другой слой или набор данных для создания нового результата.
При использовании векторного слоя или представления таблицы из таблицы содержания ArcMap в качестве входных данных параметров, можно легко удалить поля, выполнив следующие действия.
- Удалите задачу из Редактора сервиса (Service Editor). Щелкните правой кнопкой задачу и нажмите Удалить (Remove).
- В таблице содержания ArcMap щелкните правой кнопкой мыши слой или таблицу и выберите Свойства (Properties).
- Перейдите на закладку Поля (Fields).
- В списке Выбрать, какие поля будут видимыми (Choose which fields will be visible) снимите флажки напротив тех полей, которые хотите удалить из схемы.
- Нажмите кнопку ОК.
- В Редакторе сервиса (Service Editor) щелкните Добавить результат (Add Result) , чтобы добавить результат, удаленный в шаге 1. Когда Редактор сервиса добавит результат, он считает схему из слоя, который только что был изменен.
Если в качестве входных данных параметров инструмента используется путь к классу пространственных объектов или таблице на диске (а не имя слоя или представление таблицы из таблицы содержания), можно удалить ненужные поля в классе пространственных объектов или таблице (например, с помощью инструмента Удалить поле (Delete Field)), а затем вновь предоставить общий доступ к результату. Перед удалением этих полей лучше сделать копию набора данных. Лучше всего создать векторный слой для класса пространственных объектов или представление таблицы для таблицы, добавив его в ArcMap, изменив схему, как описано выше, а затем перезапустить инструмент, используя слой или представление таблицы в качестве входных данных, и предоставить общий доступ к новому результату.
Добавление полей
Если в схему нужно добавить поля, необходимо выйти из Редактора сервиса (Service Editor), добавить в набор данных новое поле (например, с помощью инструмента Добавить поле (Add Field)) и создать новый результат для общего доступа.
Псевдонимы полей
Псевдоним поля – это его альтернативное имя, более удобное для пользователя, чем настоящее. Клиенты могут использовать псевдонимы для отображения и при редактировании. Псевдоним нельзя изменить в Редакторе сервиса (Service Editor). Необходимо изменить псевдоним набора данных, использовавшегося для создания публикуемого результата.
- Выйдите из Редактора сервиса (Service Editor).
- Перейдите к набору данных в окне Каталога (Catalog).
- Щелкните набор данных правой кнопкой мыши и выберите Свойства (Properties).
- Перейдите на закладку Поля (Fields).
- Выберите поле, для которого хотите добавить псевдоним.
- В разделе Свойства поля (Field Properties) введите псевдоним для поля.
- Повторите шаги для других полей, для которых хотите добавить псевдоним.
- Нажмите кнопку ОК.
- В окне Результаты (Results) щелкните правой кнопкой мыши результат и выберите Общий доступ (Share As) > Сервис геообработки (Geoprocessing Service). Перезапускать инструмент не нужно.
Как вставлять схемы, которые используют клиенты
Схема определяет тип геометрии, пространственные привязки и атрибуты по умолчанию, которые будут использовать клиентские приложения. При использовании задачи в ArcGIS for Desktop, тип геометрии заранее определен. Нельзя использовать объекты, чей тип геометрии отличается от заданного, отличие в атрибутах разрешается.
Веб-клиенты, созданные с помощью API-интерфейсов JavaScript, Flex и Silverlight, позволяют использовать задачу с частично заданными наборами объектов. Если используемый набор объектов не имеет типа геометрии, пространственной привязки или полей, они будут заполнены с помощью значений, заданных в опубликованной схеме. Если клиент использует полностью определенный набор объектов, тот будет использоваться как есть.
Документирование требований задачи
Если задача требует точного соблюдения схемы, необходимо составить документацию по требованиям для клиентов. Например, если задача работает только с точечными объектами, или требуется конкретное поле или значения поля, необходимо указать эти требования в документации.
Более подробно о документировании сервисов и задач геообработки
Выходные схемы
Когда выходные данные задачи являются классом пространственных объектов, слоем объектов, таблицей или представлением таблицы, Редактор сервиса (Service Editor) отобразит схему выходных данных.
Нет ничего необычного, если эта схема изменится в зависимости от предоставленных входных данных, т. е. она динамическая (может меняться), а не статическая (в неизменном виде). Например, инструмент Построить таблицу соседних объектов (Generate Near Table) может добавить в выходные объекты поля NEAR_X, NEAR_Y и NEAR_ANGLE, исходя из значений параметров Местоположение (Location) и Угол (Angle). Публикуемая задача может быть сходной с инструментом Построить таблицу соседних объектов (Generate Near Table) в том, что схема выходных данных может меняться в зависимости от значений других параметров, задаваемых клиентом. Другие инструменты (и задачи, созданные этими инструментами) могут иметь выходные данные других типов геометрии (точка, линия или полигон) в зависимости от значений других параметров, задаваемых клиентом.
Входные схемы на основе наборов объектов и записей
Создаваемые вами собственные инструменты-модели и инструменты-скрипты могут использовать типы данных Набор объектов (Feature Set) или Набор записей (Record Set) для входных параметров. Использование набора объектов позволяет интерактивно оцифровывать объекты в ArcMap, а благодаря набору записей можно интерактивно добавлять строки в таблицу. Типы данных Набор объектов (Feature Set) или Набор записей (Record Set) имеют собственные схемы, использующиеся для определения схемы параметров задачи. Чтобы изменить схему параметров задачи, необходимо изменить схему набора объектов или записей, использующуюся в пользовательском инструменте. Для получения дополнительных сведений о наборах объектов и записей, перейдите по указанным ниже ссылкам.
Клиенты ArcGIS for Desktop
Некоторые возможности схемы доступны только клиентам ArcGIS for Desktop и не доступны веб-клиентам, созданным с помощью API-интерфейсов JavaScript, Flex и Silverlight.
Домены кодированных значений
Атрибутивные домены (Attribute domains) – это правила, определяющие, какие значения являются допустимыми для атрибутивного поля. Если атрибутивное поле в источнике схемы имеет атрибутивный домен кодированных значений, эти значения будут отображены в раскрывающемся списке для значения этого атрибутивного поля в элементе управления набором объектов или записей.
Более подробно об использовании элемента управления набором объектов или записей в ArcMap
Символы
Схема объектов хранит информацию о символах, которая может быть прочитана ArcMap и использована при оцифровке объектов с помощью элемента управления набором объектов.
Значение по умолчанию
Поле в наборе данных может иметь значение по умолчанию, которое используется при создании нового объекта или строки. Чтобы задать значения поля по умолчанию:
- Перейдите к набору данных в окне Каталога (Catalog).
- Щелкните набор данных правой кнопкой мыши и выберите Свойства (Properties).
- Перейдите на закладку Поля (Fields).
- Выберите поле, для которого хотите установить значение по умолчанию.
- В разделе Свойства поля (Field Properties) введите значение по умолчанию для поля.
- Нажмите кнопку ОК.