Краткая информация
Выполняет регистрацию папки или базы данных на сайте ArcGIS Server.
Синтаксис
AddDataStoreItem (connection_file, datastore_type, connection_name, server_path, {client_path}, {hostname})
Параметр | Объяснение | Тип данных |
connection_file | Файл подключения к ArcGIS Server (.ags), представляющий сервер, на котором вы хотите зарегистрировать данные. Если вы выполнили подключение в ArcCatalog, то можно использовать файл подключения, находящийся в директории вашего профиля пользователя. В качестве альтернативы вы можете создать файл подключения с нуля, используя функцию CreateGISServerConnectionFile. | String |
datastore_type | Тип данных, регистрация которых выполняется.
| String |
connection_name | Имя для этой папки или базы данных, которое будут видеть издатели или администраторы, когда они будут просматривать свойства сервера. | String |
server_path | Путь или подключение к данным, отображаемое для сервера. Если вы регистрируете DATABASE, это будет или путь к файлу подключения базы данных (.sde), или строка, содержащая параметры подключения базы данных. Если вы регистрируете FOLDER, то это будет путь к папке. | String |
client_path | Путь или подключение к данным, отображаемое для машины издателя, если отличается от информации, используемой сервером. В некоторых случаях издатель и сервер могут обращаться к физически отличающимся базам данных или папкам. Когда вы предоставляете путь для издателя и путь для сервера, ArcGIS Server автоматически исправляет пути во время публикации, когда ваши документы карты и другие ресурсы перемещаются на сервер. Если вы регистрируете DATABASE, предоставьте или путь к файлу подключения базы данных (.sde), или строку, содержащую параметры подключения базы данных. Если вы регистрируете FOLDER, то предоставьте путь к папке. Если вы регистрируете управляемую базу данных ArcGIS Serve, не вводите путь; вместо этого, введите строку managed для этого параметра. Управляемая база данных ArcGIS Server является многопользовательской базой геоданных, которую вы назначаете для копирования данных во время публикации, если пользователь пытается опубликовать сервис объектов из незарегистрированного местоположения данных. | String |
hostname | Имя машины издателя или клиента, которые будут использовать данную зарегистрированную папку или базу данных. Если оставлено пустым, то будет использовано имя машины, на которой запускается скрипт. | String |
Возвращаемое значение
Тип данных | Объяснение |
String | При успешном выполнении возвращается строка "Success". |
Пример кода
Зарегистрируйте папку, используемую как сервером, так и издателем
Регистрирует локальную папку C:\temp на ArcGIS Server. Предполагается, что подключение к серверу было создано в окне Каталог в ArcMap и названо MyConnection.
import arcpy
conn = "GIS Servers/MyConnection.ags"
path = "c:/temp"
arcpy.AddDataStoreItem(conn, "FOLDER", "My local data folder", path, path)
Зарегистрируйте папку, которая отличается между сервером и издателем
Регистрирует папку с общим доступом \\MYSERVER\mydata\Washington на сервере, вместе с локальной папкой C:\mydata\Washington, используемой издателем.
import arcpy
conn = "c:/connections/MYSERVER.ags"
arcpy.AddDataStoreItem(conn, "FOLDER", "Washington",
"//MYSERVER/mydata/Washington",
"c:/mydata/Washington", "MYPUBLISHER")
Зарегистрируйте базу данных, используемую как сервером, так и издателем
Регистрирует многопользовательскую базу данных wilma, используемую как компьютером сервера, так и компьютером издателя. Используется файл подключения .sde, созданный при добавлении подключения к базе данных в окне Каталог в ArcMap.
import arcpy
server_conn = "c:/connections/MYSERVER.ags"
db_conn = "c:/connections/Connection to wilma.sde"
arcpy.AddDataStoreItem(server_conn, "DATABASE", "Wilma", db_conn, db_conn)
Зарегистрируйте базу данных, которая отличается между сервером и издателем
Регистрирует многопользовательскую базу данных wilma на сервере, вместе с базой данных pebbles, используемой издателем.
import arcpy
server_conn = "c:/connections/MYSERVER.ags"
db_conn_serv = "c:/connections/Connection to wilma.sde"
db_conn_pub = "c:/connections/Connection to pebbles.sde"
arcpy.AddDataStoreItem(
server_conn, "DATABASE", "WilmaAndPebbles", db_conn_serv, db_conn_pub)
Зарегистрировать базу данных как управляемую базу данных ArcGIS Server
Регистрирует многопользовательскую базу данных wilma как управляемую базу данных ArcGIS Server. Если издатель пытается опубликовать сервис объектов из незарегистрированного местоположения данных, данные будут скопированы сюда.
import arcpy
server_conn = "c:/connections/MYSERVER.ags"
db_conn_serv = "c:/connections/Connection to wilma.sde"
arcpy.AddDataStoreItem(
server_conn, "DATABASE", "WilmaManaged", db_conn_serv, "managed")
Зарегистрируйте базу данных, используя строку подключения
Регистрирует многопользовательскую базу данных serverX на сервере, используя строку подключения к базе данных.
import arcpy
server_conn = "c:/connections/MYSERVER.ags"
db_conn_string = u"PASSWORD=pwdX;SERVER=serverX;" + \ u"INSTANCE=sde:sqlserver:serverX;DBCLIENT=sqlserver;" + \ u"DB_CONNECTION_PROPERTIES=serverX;" + \ u"DATABASE=sde;USER=userX;AUTHENTICATION_MODE=DBMS"
arcpy.AddDataStoreItem(
server_conn, "DATABASE", "ServerX", db_conn_string, db_conn_string)