Метод публикует слой в веб-службах ZuluServer.
Visual Basic:
Function PublishForWeb(Params As IZWebParams, bRemoveFlag As Boolean) As Long
Params - объект IZWebParams, описывающий параметры публикуемого слоя.
bRemoveFlag :
True - убирает слой из пространства имен.
False - добавляет/изменяет слой в пространстве имен.
При успехе публикации слоя в веб-службах ZuluServer метод вернет 0, в противном случае вернет -1.
Публикуется слой, лежащий на ZuluServer: у локального слоя метод возвращает -1 при любом значении bRemoveFlag, и число публикаций (GetWebParamsCount) остается нулевым. Серверный слой от локального отличает метод IsRemote.
Параметры публикации собираются в объекте ZWebParams: имя слоя по протоколу ZWS, пространство имен, интервал обновления, доступ и прочее. Уже опубликованные наборы параметров слоя возвращает метод GetWebParams.
Visual Basic:
Sub Layer_PublishForWeb 'задаем активный слой Set L = Zulu.ActiveMapDoc.Layers.Active 'создаем объект ZWebParams Set webParams = CreateObject("ZuluLib.ZWebParams") 'указываем интервал обновления webParams.SetInterval 10 'указываем отображение webParams.SetDisplayOptions 0 'указываем параметр доступа webParams.SetWebAccessFlag true 'указываем ZWS наименование слоя webParams.SetWebLayerName "Elekto" 'указываем пространство имен webParams.SetWebNamespace "ElektoSeti_Vologda" 'указываем правило редактирование через веб службы webParams.SetWebEditingDisabled false 'указываем расчетную модель webParams.SetModel 0 'указываем правило редактирование только через GPS в ZuluGIS Mobile webParams.SetMobileEditingGPSOnly false 'Публикуем слой в веб-службах output = L.PublishForWeb(webParams, false) MsgBox "Результат публикации: " & output End Sub
Python:
import zulu def Macro_Layer_PublishForWeb(): # задаем активный слой L = zulu.App.ActiveMapDoc.Layers.Active # создаем объект ZWebParams web_params = zulu.ZWebParams() # указываем интервал обновления web_params.SetInterval(10) # указываем отображение web_params.SetDisplayOptions(0) # указываем параметр доступа web_params.SetWebAccessFlag(True) # указываем ZWS наименование слоя web_params.SetWebLayerName("Elekto") # указываем пространство имен web_params.SetWebNamespace("ElektoSeti_Vologda") # указываем правило редактирование через веб службы web_params.SetWebEditingDisabled(False) # указываем расчетную модель web_params.SetModel(0) # указываем правило редактирование только через GPS в ZuluGIS Mobile web_params.SetMobileEditingGPSOnly(False) # Публикуем слой в веб-службах print(L.PublishForWeb(web_params, False))