Как создать объект ZGeometry Delphi?, Подскажите, пожалуйста, как создать объект ZGeometry
SQL запрос из макроса по двум слоям
24.08.2022 14:15:45
Сергей Мечев,
Да, возможно. Только правильно начало запроса начинать так: UPDATE L1 …. Т.к. в разделе FROM Вы используете псевдонимы источников (слоёв) |
|
|
Перенос данных из другого слоя
10.08.2022 13:45:33
Виталий,
Чтобы дальше двигаться, надо уточнить, что нужно сделать в слое "карта": 1. В слое "карта" уже есть объекты, но нет значений в нужных полях таблицы. Эти значения нужно взять от объектов другого слоя. 2. В слое "карта" нет объектов, он пуст и нужно скопировать объекты из другого слоя попутно разместив данные из исходной(ых) таблиц(ы) в нужных полях таблицы, подключенной к слою ? По поводу запроса: Запрос синтаксически правильный, но не верный по сути. Такие атрибуты как тип объекта (typename или typetid) не могут меняться с помощью запроса - это графические данные слоя, а менять можно только табличные данные (о чём выдается сообщение). А делать UPDATE таким параметрам как length, perimeter и area вообще бессмысленно. Как вы себе представляете назначить фигуре площадь ? |
|
|
Перенос данных из другого слоя
10.08.2022 09:32:29
[QUOTE]Сергей Мечев написал:
У слоя нет полей, они есть у типов, при условии, что у них есть база данных. [/QUOTE] Давайте всё-таки внесём ясность. Полей нет ни у слоя, ни у типа, ни у базы данных. "Поле" - это колонка таблицы или "ответа", набора данных, полученных в результате запроса. "Запись" - это строка таблицы или "ответа". В этом случае когда мы говорим "поле", мы подразумеваем конкретную ячейку этой записи. Теперь: [QUOTE]Виталий Токаренко написал: В том и проблема. В слое "Карта" нет ещё таких полей. Нужно взять некоторые поля из слоя Трасса по признаку typeid=3 и создать новую запись в слое Карта.[/QUOTE] Независимо от того, есть ли записи и нет в таблице для объектов слоя "Карта", как правильно писали Алексей и Сергей, для добавления или обновления данных нужно определить соответствие между данными таблиц. Поле связи с картой (обычно Sys) у них не совпадает. Либо делать пересечение по какому-то другому полю, определяющему это соответствие, либо через пространственное отношение между объектами двух слоёв. Далее, оператор UPDATE, выполняемый для слоя, реализован так, что добавляет недостающие записи в нужные таблицы, подключенные к данному слою. |
|
|
Источник и структура БД, Соответствие БД в Источник и SQL
02.08.2022 14:11:20
[QUOTE]Виталий Токаренко написал:
В "Источник" наблюдаю разделение слоя "Карта" на "Геометрия" и "Цифровой паспорт". В тоже время при вызове таблицы SEL ECT * FR OM [карта] наблюдаю единую таблицу с полями и обоих разделов. Подскажите, данное разделение с SQL никак не связано?[/QUOTE] Там в дереве для удобства разделены геометрические и табличные данные. SELECT как Вы правильно заметили рассматривает слой как одну сущность, выполняя суперпозицию всех геометрических свойств и табличных полей. |
|
|
Добавление записи в БД
02.08.2022 14:08:52
Виталий, добрый день! В том SQL, который Вы упомянули не реализован оператора INSERT, т.к. запросы производятся к слоям, а значит INSERT должен вставлять не запись, а геометрический объект (ну и табличные атрибуты, если только в добавок). Выполнение оператора UPDATE вызовет добавления в нужные таблицы записей, если таковых, соответствующих конкретным графическим объектам не окажется.
|
|
|
SQL-запросы
06.07.2022 11:41:01
Don_Quixote,
Функция STLength (из стандарта OGC) также поддерживается, она является методом типа geometry. У слоя есть поле geometry одноимённого типа. Тогда запрос будет выглядеть так:
Далее:
|
|||
|
SQL-запросы
06.07.2022 09:22:02
Don_Quixote, добрый день!
Если там только линии и не надо фильтровать по типу/графическому типу, то:
|
|||
|
Миграция БД слоя с локальной базы на серверную СУБД.
09.06.2022 09:35:37
1. Явно указать логин/пароль, с которыми ZuluServer должен соединяться с MySQL (все пользователи обращаются к СУБД с одними учётными сведениями); 2. Использовать опцию "Использовать учётные сведения ZuluServer". В этом случае обращение к СУБД идёт с теми логином/паролем, который пользователь указал при входе на ZuluServer. |
|||
|
Миграция БД слоя с локальной базы на серверную СУБД.
09.06.2022 09:05:12
Неправильный логин/пароль.
Изменено: |
|||
|
Создание закладок с древовидной структурой, Расширение возможностей закладок
26.05.2022 09:08:29
Dave_Murey, добрый день!
В ZuluGIS 2021 это уже вошло как "группировка" закладок. Можно делать произвольную иерархию. (см. [URL=https://www.politerm.com/zuludoc/index.html#map_bookmark_group.html]https://www.politerm.com/zuludoc/index.html#map_bookmark_group.html[/URL] Можно группировать в окне Закладки (там появились пункты контекстного меню), либо в диалоге Закладки (там кнопка Группа со своим меню). |
|
|
Ошибка при упаковке слоя, При попытке упаковки одного из слоёв выдётся Failed to pack tabl. Ошибка доступа к данным. Statmet(s) could not be prepared. 0x80040314
Создание таблицы в БД слоя
17.05.2022 16:00:39
Алексей, добрый день!
В методе CreateTableEx есть ещё один параметр, который в первом примере (VB.Net) вы передаёте (см. "out tblinf"), а в случае VB Script его (а это объект по ссылке) и не передать, из-за чего и ошибка. Для VB Script введён похожий метод CreateTable2 без этого параметра. Воспользуйтесь им. |
|
|
Макрос для добавления полей
11.04.2022 08:46:38
Алексей, добрый день!
Объект [URL=https://www.politerm.com/zuludoc/zuluax/IZbSourceInfo_cls.html]IZbSourceInfo[/URL] представляет источник таблицы - соединение или источник данных ZuluGIS. Он нужен, чтобы обратиться (напр. SQL запрос) к конкретной СУБД. Получить его можно через свойство [URL=https://www.politerm.com/zuludoc/zuluax/IZbTableInfo_Source.html]Source[/URL] таблицы, либо через коллекцию [URL=https://www.politerm.com/zuludoc/zuluax/ZbDatabase_Sources.html]Sources[/URL] у базы данных. |
|
|
Ошибки при работе AppendBaseRecord (блокировка/не удалось соединиться)
15.03.2022 10:00:59
[QUOTE]Артем Молчан написал:
Благодарю, но в 8й версии данный метод увы не обнаружил((...поэкспериментирую с UpdateFromAscii.[/QUOTE] Посмотрите [URL=https://www.politerm.com/zuludoc/zuluax/index.html#IZbQueryInfo_AppendFromAscii.html]https://www.politerm.com/zuludoc/zuluax/index.html#IZbQueryInfo_AppendFromAscii.html[/URL], должен быть. Только это метод не объекта ZbDatabase, а запроса IZbQueryInfo (как его получить см. [URL=https://www.politerm.com/zuludoc/zuluax/index.html#ZbDatabase_ActiveQuery.html]https://www.politerm.com/zuludoc/zuluax/index.html#ZbDatabase_ActiveQuery.html[/URL]) |
|
|
Ошибки при работе AppendBaseRecord (блокировка/не удалось соединиться)
14.03.2022 07:51:34
Артем, добрый день!
[LIST=1] [*]Судя по сообщению, используется Microsoft Access? Если данные добавляются через ZuluServer в многопользовательском режиме, то возможны блокировки. Мы в общем случае не рекомендуем использовать базы Microsoft Access на сервере. [*]В дебаггере при достаточной паузе может разрываться соединение, отсюда и невозможность дальше соединиться с источником данных. [*]Для подобного добавления данных рекомендую метод AppendFromAscii (по аналогии с UpdateFromAscii, но чисто для добавления записей). В текстовом файле задаются значения полей в количестве и в том порядке, который задан параметром Fields). Описание метода отсутствует, но мы в ближайшее время подправим. [/LIST] |
|
|
Событие evBrowserRecordChanged, Отловить в каком поле произошло изменение при возникновении evBrowserRecordChanged
09.03.2022 21:18:06
Владимир, добрый день!
Событие evBrowserRecordChanged возникает, когда изменяется запись. Однако при этом может быть изменены значения нескольких полей. Информация какие конкретно поля изменились в событии не передаётся. (описание события: [URL=https://www.politerm.com/zuludoc/zuluax/index.html#Zulu_evBrowserRecordChanged.html]https://www.politerm.com/zuludoc/zuluax/index.html#Zulu_evBrowserRecordChanged.html[/URL]) |
|
|
Использование ZuluLib объектов (ver 8.0) во внешнем x64 c# приложении
09.03.2022 21:12:27
Артем, добрый день!
В 64-битный процесс не могут быть загружены 32-битные модули, а ядро ZuluGIS 8.0 только 32-битное. В 64-битном проекте можно использовать ядро новой версии ZuluGIS 2021 (10.0), сейчас сделаны и 32-битная и 64-битная версии. Рекомендуем переходить на новую версию. |
|
|
Поиск по представлениям и широкие строки
04.03.2022 13:23:08
|
|||
|
Поиск по представлениям и широкие строки
04.03.2022 10:05:41
Сергей, добрый день!
1. Поле "Список улиц" рассматривается как текстовый BLOB и из-за этого имеет многострочный редактор. Мы подумаем как сделать возможность назначать такой тип редактора для других строчных полей. 2. Поиск скорее всего не работает не потому, что поле из представления, а потому, что рассматривается не как строка, а как BLOB. Чтобы точнее сказать нужна информация о структуре данных, особенно о физическом типе поля "Список улиц". |
|
|
Код ошибки 0x800A0E7A, Ошибка доступа к базе данных
02.02.2022 21:54:19
Татьяна, добрый день!
Сообщение говорит о том, что 64-битное ядро Microsoft Access не установлено на данной машине. Т. к. Вы установили 64-битную версию ZuluGIS, ей требуется такая же 64-битная версия Microsoft Access. Для работы с локальными данными, размещёнными в базе данных Microsoft Access мы рекомендуем использовать 32-битную версию ZuluGIS (см. |
|
|
Протяженность сети в трубном исчислении, SQL-запрос
BLOB, Добавление элементов в галерею, удаление элементов, пересохранение ссылок
вопросы и пожелания для разработчиков
Имя пользователя в заголовке окна ZuluGIS
01.10.2021 23:37:37
Alexander, добрый день!
В заголовке окна ZuluGIS указывается имя пользователя, которое используется в соединении, откуда получен текущий активный слой в активной карте. Если пишется sa, то значит действительно использовалось такое имя пользователя для соединения. Проверьте, возможно у Вас задано несколько соединений к одному и тому же серверу и в одном из них явно задан логин sa. |
|
|