Упражнение 5: Загрузка данных от имени пользователя с правами на чтение/запись и настройка отслеживания редактирования

Эта тема относится только к ArcGIS for Desktop Standard и ArcGIS for Desktop Advanced.

Уровень сложности: Начальный Требования к данным: ArcGIS Tutorial Data for Desktop Задача: Авторизация в базе геоданных в качестве пользователя с правами на чтение/запись и настройка отслеживания редактирования данных.

Чтобы узнать, как пользователи, не обладающие правами администратора, могут работать с базой данных, вы войдете в систему как пользователь editor1, импортируете класс объектов из шейп-файла, настроите отслеживание редактирования в новом классе объектов и предоставите права редактирования класса объектов другому пользователю.

Вход в качестве пользователя editor1

Так как для аутентификации пользователей на серверах баз данных используется текущая учетная запись в ОС Windows, завершите сеанс работы с операционной системой и войдите снова как пользователь editor1.

Шаги:
  1. Войдите на компьютер от имени пользователя editor1.

    То, как вы это сделаете, зависит от операционной системы. В большинстве операционных систем Windows можно использовать функцию смены пользователя. В Windows XP: выйдите из системы и войдите снова как пользователь editor1.

  2. Запустите ArcMap, откройте окно Каталог и разверните папку Серверы баз данных (Database Servers) в дереве Каталога.
  3. Вам необходимо добавить сервер баз данных, поскольку пользователь editor1 еще не добавил его в окне Каталога. См. инструкции в разделе Добавление сервера баз данных Упражнения 1.

Импорт данных из-под учетной записи editor1

Импорт шейп-файла streets в базу геоданных Osokopf.

Шаги:
  1. Дважды щелкните на сервере баз данных в дереве Каталога, чтобы подключиться к нему.
  2. Щелкните правой кнопкой на базе геоданных Osokopf, выберите пункт контекстного меню Импорт (Import), затем выберите Класс объектов (единичн.)(Feature Class (single)).

    Откроется инструмент геообработки Класс объектов в класс объектов (Feature Class To Feature Class).

  3. Так как пользователь editor1 еще не создавал подключения к папке с учебными данными, создайте новое подключение в разделе Подключения папок (Folder Connections).
  4. Перейдите к директории DatabaseServers учебного руководства в окне Каталог.
  5. Перетащите файл osokopf_streets.shp из окна Каталог (Catalog) в текстовое поле Входные объекты (Input Features).
  6. Введите streets в поле Выходной класс объектов (Output Feature Class).
  7. Щелкните правой кнопкой мыши на address_le в списке Соответствие полей (Field Map) и выберите Переименовать (Rename).
  8. Введите address_left и нажмите клавишу ВВОД.
  9. Щелкните правой кнопкой мыши на address_ri в списке Соответствие полей (Field Map) и выберите Переименовать (Rename).
  10. Введите address_right и нажмите клавишу Enter.
  11. Щелкните OK, чтобы запустить инструмент.

    Индикатор прогресса инструмента появится в нижней части окна ArcMap. По завершении импорта класса объектов в правом нижнем углу экрана появляется всплывающее окно, и класс объектов будет добавлен на карту.

База геоданных Osokopf теперь содержит два набора классов объектов, parks и boundaries, владельцем которых является пользователь dbo, и отдельный класс объектов streets, владельцем которого является пользователь editor1.

Настройка класса объектов streets для отслеживания редактирования

Для отслеживания создания объектов и редактирования класса объектов необходимо, чтобы в нем имелись поля для хранения имени пользователя и даты редактирования. В классе объектов streets этих полей еще нет, поэтому их необходимо добавить.

Добавление двух полей с типом дата и текст в класс объектов streets

Будучи владельцем класса объектов streets, вы можете изменить его схему, добавив в нее поля с типом дата и текст для отслеживания редактирования.

Шаги:
  1. Щелкните правой кнопкой мыши на классе объектов streets в базе геоданных Osokopf и выберите Свойства (Properties).
  2. Перейдите на закладку Поля (Fields).
  3. Щелкните в последней строке с пустым полем в списке Имя поля (Field Name).

    Щелкните на следующем доступном поле

  4. Назовите новое поле addfeats_user.
  5. Выберите Текст из выпадающего списка Тип данных чтобы сделать поле addfeats_user текстовым.
  6. Измените свойства нового поля.
    1. В Свойства поля (Field Properties) присвойте полю псевдоним Created By.
    2. Введите 32 в поле Длина.

    Свойства поля должны быть заданы следующим образом:

    Свойства поля addfeats_user

  7. Нажмите Применить (Apply), чтобы добавить поле.
  8. Добавьте еще одно поле, addfeats_date.
  9. В поле Тип данных (Data Type) укажите Дата (Date).
  10. Присвойте полю addfeats_date псевдоним Дата создания (Date Created).
  11. Нажмите Применить (Apply), чтобы добавить поле addfeats_date в таблицу.
  12. Создайте еще два поля со следующими свойствами:

    editfeats_user

    Тип данных = Текст

    Псевдоним = Edited By

    Длина = 32

    editfeats_date

    Тип данных = Дата

    Псевдоним = Date Edited

Теперь у вас есть четыре новых поля. В них будет храниться информация о том, кто редактировал класс объектов streets, и когда были сделаны правки.

Включить отслеживание редактирования (editor tracking)

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

Шаги:
  1. Перейдите на закладку Отслеживание редактирования (Editor Tracking).
  2. Включите опцию Включить отслеживание редактирования (Enable editor tracking).
  3. Укажите, какие поля должны обновляться:

    Поле создателя (Creator Field)

    addfeats_user

    Поле даты создания (Create Date Field)

    addfeats_date

    Поле редактора (Editor Field)

    editfeats_user

    Поле даты изменения (Edit Date Field)

    editfeats_date

  4. Все пользователи этой базы данных находятся в одном офисе и, следовательно, в одном часовом поясе. Учитывая это, дату можно регистрировать в соответствии со временем базы данных, а не UTC.
  5. Выберите опцию Время базы данных (Database Time) для Записывать даты в (Record Dates in).

    Закладка Отслеживание редактирования (Editor Tracking) должна выглядеть следующим образом:

  6. Нажмите OK, чтобы применить изменения и закрыть диалоговое окно Свойства класса объектов (Feature Class Properties).

Предоставление прав доступа к классу объектов streets

В Упражнении 4 пользователю manager1 были предоставлены права администратора базы геоданных Osokopf. Поэтому пользователь manager1 имеет права на чтение/запись в классе объектов streets.

Пользователь еditor2 не имеет прав доступа уровня базы геоданных, поэтому его необходимо наделить правами чтения/записи в классе объектов streets.

Шаги:
  1. Щелкните правой кнопкой мыши на классе объектов streets, выберите Управление (Manage) и затем Права доступа (Privileges).
  2. Выберите пользователя editor2 из списка Пользователи сервера баз данных (Database Server Users).
  3. Нажмите на опцию Чтение/Запись (Read/Write).
  4. Нажмите ОК, чтобы применить изменения и закрыть диалоговое окно Права доступа (Permissions).

В этом упражнении вы вошли в систему как пользователь с правами на чтение/запись данных в базе геоданных, импортировали класс объектов и настроили в классе объектов отслеживание редактирования.

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

5/10/2014