RUS  ENG 

alw39 (Автор тем)

Выбрать дату в календареВыбрать дату в календаре

Страницы: 1
Макрос c выборкой из БД(IZbDataset)
 
Добрый день . Ранее аналогичный текст работал но был утерен из за сбоя.
Пытаюсь востановить но не могу получить значение поля таблицы , в частности sys оно то точно есть.
Что пропущено ?

Set L = Zulu.ActiveMapDoc.Layers.Active
   UZEL = L.CurrentID                      '
   Set Db = CreateObject("Zb.ZbDatabase")
   MsgBox   UZEL                                  '=342134
   BaseName = L.BaseName
   MsgBox  BaseName
   Db.Open BaseName
   Set Ds = Db.SelectByKey(UZEL)
 
'    If ds.MoveFirst = True Then            

   MsgBox   Ds.FieldCount                                                                  'число полей в наборе данных 25
   MsgBox "dat " +Ds.FieldValue(0)                                                     '     ? пусто
   MsgBox "sName"+ Ds.FieldValue(Ds.GetFieldIndexByName(0, "sys"))'    ? пусто
   MsgBox "dis " +   Ds.FieldDisplayValue(0)                                              '  ?? пусто
'  else
  MsgBox "?????? "
' End If

Второй вопрос как получить значения набор полей возвращаемых функцией
   set p=Ds.GetDataFields(4)
Загрузка карты на андроид.
 
Добрый день. Опубликовал слои для гис онлайн , сохранил их как карту. Из браузера карта открывается. Пытаюсь загрузить ее на телефон по ролику с ютуба, соединение через AnyDesk ,в Zulugis Mobile импорт карты с сервера  ошибка обновления -на сервере отсутствуют онлайн карты. Zulugis Mobile вчера обновил, версия сервера 10.0.0.9523 u х64. на 20 пользователей.
Изменено: alw39 - 25.02.2026 21:18:42 (ошибка)
Получить имя проекции слоя
 
Добрый день.
В одном из 500 слоев ошибка в проекции , как в макросе  получить имя проекции слоя.,
Sub leyer
 Set Out = OpenOutputChannel ("Сообщения")
 Out.Clear  
n=Zulu.ActiveMapDoc.Layers.Count  
Out.Put CStr(n)  +CHR(10)      
i=1
Do
If i>n   Then Exit Do
'Set L = CreateObject("ZuluLib.Layer")    
L=Zulu.ActiveMapDoc.Layers.Item(i)
Out.Put L+ Chr(10)  

p=L.GetCRS    ? ошибка требует обьект L , хотя выше мы его получаем  L=Zulu.ActiveMapDoc.Layers.Item(i)    

Out.Put p+ CHR(10)
i=i+1
loop
End Sub
Подключение источника данных
 
Добрый день .
Создал на сервере в мониторе источник данных MSSql, опубликовал в администраторе дал общий досуп.
В ZULU 2021 расположенной на севере он появился и таблицы доступны, на локальном ПК в источниках данных он отсутствует. Для доступа к MSSql с локального ПК приходится на нем создать свой источник. Почему не виден серверный? Серверные слои видны и загружаются.
Объединить группы мультилиний по общему признаку .
 
Добрый день!
Слой газпроводной сети состоит из участков(мультилиний) которые имеют общий признак в БД (поле паспорт), можно ли программно создать новый слой где эти участки будут слиты в один по этому признаку.

исходный слой ............................................................. новый
sys1 x1 y1. x2 y2 pas_id=1;............................... sys1 x1 y1 , x2 y2; x3 y3, x4 y4 ;x5 y5 x6 y6 pas_id=1
sys2 x3 y3, x4 y4;x5 y5, x6 y6 ; pas_id=1
sys3 x7 y7, x8 y8 pas_id=2 ............................... sys2 x7 y7 ,x8 y8 ; pas_id=2
..........................
Изменено: alw39 - 13.12.2025 19:49:44
Макрос на javascript
 
Добрый день (вечер).
Пытаюсь сделать запрос к HTTP сервису 1С
на VBScript
Sub http
Dim xmlhttp
Set xmlhttp = CreateObject("Msxml2.XMLHTTP.6.0") ' Or "Msxml2.XMLHTTP" for older systems

' --- For a GET request ---
xmlhttp.Open "GET" , "[URL=http://192.168.x.x:8008/Dokument/hs/document/list/?@format=JSON,False,user]http://192.168.x.x:8008/Dokument/hs/document/list/?@format=JSON,False,user[/URL],pass;
xmlhttp.Send
' Check the status and get the response
If xmlhttp.Status = 200 Then
  MsgBox  "Response Text: " & xmlhttp.ResponseText
  MsgBox len(xmlhttp.ResponseText)    
Else
   MsgBox "Error: " & xmlhttp.Status & " - " & xmlhttp.StatusText
End If
End Sub
Запрос работает в ответ приходит json  в виде текста длиной около миллиона, поддержки json в  VBScript  нет, пытаюсь выполнить запрос на javascript где есть поддержка json

var xhr = new XMLHttpRequest();
   xhr.open('GET', '[URL=http://192.168.33.1:8008/Dokument/hs/document/list/?@format=JSON',False,'user','pass']http://192.168.33.1:8008/Dokument/hs/document/list/?@format=JSON',False,'user','pass'[/URL] );
........
ошибка  new XMLHttpRequest(); определение отсутствует
через fetch
var response =  fetch('[URL=http://192.168.33.1:8008/Dokument/hs/document/list/?@format=JSON',]http://192.168.33.1:8008/Dokument/hs/document/list/?@format=JSON',[/URL]{ method:"GET",body: new URLSearchParams({ username: "userr", password: "pass" })});
ошибка  new URLSearchParams; определение отсутствует
Как определить эти объекты?
ошибка в макросе с запросом к БД
 
Добрый день !
В Zulu БД подключена в источнике данных со строкой
"Provider=OraOLEDB.Oracle.1;Persist Security Info=False;User ID=k_g;Password=k;Data Source=gaz", запросы в формах работают.

Аналогичный  запрос в 1С  выполняется , здесь непонятная ошибка выполнения VBScript в методах ADODB.Recordset   ?

Sub ora
Dim strCon
Dim Con
Dim Rec
Dim Com
Dim strSQL
Dim strRes

strSQL="select  NAME from gg_serts"

'strConnect="Provider=OraOLEDB.Oracle.1;Persist Security Info=False;User ID=k_g;Password=k;Data Source=gaz"

strCon="Provider=OraOLEDB.Oracle.1; Data Sourse=(DESCRIPTION=(CID=GTU_APP)(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=servergg)(PORT=1521)))(CONNECT_DATA=(SID=gaz)(SERVER=DEDICATED)));User Id=k_g; Password=k;"

Set Con=createObject("ADODB.Connection")
Con.ConnectionString=strCon
Con.Open
Set Com=createObject("ADODB.Command")
Com.ActiveConnection=Con
Set Rec=CreateObject("ADODB.Recordset")
Com.CommandText= strSQL
Rec=Com.Execute

Do While Not Rec.EOF                    -ошибка Объект не поддерживает метод Rec.EOF    

strRes=Rec.Fields("NAME").Value   -ошибка Объект не поддерживает метод Rec.Fields
MsgBox strRes
Rec.MoveNext

Loop

Rec.Close
Con.Close
Com.Close
End Sub
Изменено: alw39 - 05.08.2025 22:29:55 (ошибка)
Запрос к источнику данных
 
Добрый день!
Есть БД оракла в которой графика и минимальный набор семантических данных хранится в отдельных таблицах , развернутые семантические данные к ним отдельно.
Графика экспортирована в шейпы и импортирована в Zulu, БД оракла подключена как отдельный источник данных.
В основном запросе все поля отображаются корректно.
В БД слоя помимо основной таблицы SQLite с импортированными данными добавил связанные по ID таблицы из оракла, но при попытке сформировать запрос ошибка о невозможности запроса к разным источникам.
Необходимо получить из основной таблицы слоя ID таблицы оракла и по нему выбрать необходимые семантические данные. Как можно реализовать данный функционал ?
Связь ZULU с 1С
 
Добрый день!
Принято решение о переходе на ZULU, пока идет процес покупки надо срочно решить вопрос со связью с 1С.
В демо версии проверил импорт из шейпов, перенес трубопроводы, монтажные узлы, задвижки на первый взгляд все корректно перенеслось.
Всю атрибутивную информацию (хранятся в оракле) решено переносить в справочники 1С и поскольку прямое обращение к 1С MSSQL не рекомендовано то настраиваем в 1С HTTP сервисы , которые по id запрашиваемого элемента будут отдавать необходимую информацию.

Как я понимаю на стороне ZULU надо сздать плагин который при выборе элемента на карте организует HTTP запрос к 1С для выбора нужных данных и отображения их, .
Это правильно или есть другие варианты ?
импорт в geojson
 
Добрый день!
Изучаю вопрос загрузки из оракла геометрии в формате  geojson.
Что бы получить корректную структуру файла  загрузки импортировал из оракла  шейп  газопровода загрузил его в ZULU и экспортировал его в   geojson .
{ "type": "Feature","properties" :
{"sys":"19","typeid":"-1","modeid":"0","typename":"","modename":"","area":"","length":"0.9","length_sph":"0.9","perimeter":"0","text":"","linecolor":"0","linestyle":"0","linewidth":"1","fillcolor":"","fillstyle":"","patcolor":"","selected":"0","GAZ_PIPE_G":"59123","ATTRIBUTE_":"11816","MATERIAL_I":"9","DIAMETER_I":"161","PRESSURE_I":"1","CONDITION_":"11","LOCATION_I":"1","DEPTH":"1.41","BUFFER_ZON":"2","PIPES_EXPL":"87","LABEL":"?","INFO":"?.?.??.108??.1.41","LAYERNAME":"??????????","LINETYPENA":"","COMMENTS":"","COORDINATI":"00000000","REG_NUMBER":"","SOURCE_INF":"","BASEMENT_D":"2","PRECISION_":"","DESCRIPTIO":""},"geometry":{ "type": "MultiLineString", "coordinates" : [ [[118686695.0000000000000,35094149.0000000000000],[118686695.0000000000000,35094239.0000000000000]]]}},

В нем появились поля "length":"0.9","length_sph":"0.9" насколько я понимаю это длина линии , но в исходной таблице оракла этих значений нет, видимо они добавились либо при создании шейпа либо при экспорте в  geojson.
Надо ли при выгрузки из оракла  в geojson вычислять и заполнять эти значения или они необязательны    ?
Страницы: 1